dirtyFlag integration.
This commit is contained in:
@@ -565,4 +565,18 @@ public enum InterestManager implements Runnable {
|
|||||||
Logger.error("InterestManager.updateAllMobilePlayers: " + player.getObjectUUID(), e);
|
Logger.error("InterestManager.updateAllMobilePlayers: " + player.getObjectUUID(), e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void setObjectDirty(AbstractWorldObject abstractWorldObject) {
|
||||||
|
|
||||||
|
HashSet<AbstractWorldObject> playerList = WorldGrid.getObjectsInRangePartial(abstractWorldObject.getLoc(), 128, MBServerStatics.MASK_PLAYER);
|
||||||
|
|
||||||
|
if (playerList.isEmpty())
|
||||||
|
return;
|
||||||
|
|
||||||
|
for (AbstractWorldObject playerObject : playerList) {
|
||||||
|
|
||||||
|
PlayerCharacter playerCharacter = (PlayerCharacter) playerObject;
|
||||||
|
playerCharacter.dirtyLoad = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -12,6 +12,7 @@ package engine.gameManager;
|
|||||||
import engine.Enum;
|
import engine.Enum;
|
||||||
import engine.Enum.BuildingGroup;
|
import engine.Enum.BuildingGroup;
|
||||||
import engine.Enum.GameObjectType;
|
import engine.Enum.GameObjectType;
|
||||||
|
import engine.InterestManagement.InterestManager;
|
||||||
import engine.InterestManagement.WorldGrid;
|
import engine.InterestManagement.WorldGrid;
|
||||||
import engine.job.JobContainer;
|
import engine.job.JobContainer;
|
||||||
import engine.job.JobScheduler;
|
import engine.job.JobScheduler;
|
||||||
@@ -504,7 +505,7 @@ public enum BuildingManager {
|
|||||||
|
|
||||||
npc.setObjectTypeMask(MBServerStatics.MASK_NPC);
|
npc.setObjectTypeMask(MBServerStatics.MASK_NPC);
|
||||||
npc.setLoc(npc.bindLoc);
|
npc.setLoc(npc.bindLoc);
|
||||||
|
InterestManager.setObjectDirty(npc);
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user