diff --git a/src/resources/objects/creature/CreatureObject.java b/src/resources/objects/creature/CreatureObject.java index af01279ec..6105b2833 100644 --- a/src/resources/objects/creature/CreatureObject.java +++ b/src/resources/objects/creature/CreatureObject.java @@ -380,7 +380,7 @@ public class CreatureObject extends TangibleObject { } } - protected void createObject(Player target) { + public void createObject(Player target) { sendSceneCreateObject(target); BaselineBuilder bb = null; diff --git a/src/services/objects/ObjectManager.java b/src/services/objects/ObjectManager.java index 4f1047e4d..2890279aa 100644 --- a/src/services/objects/ObjectManager.java +++ b/src/services/objects/ObjectManager.java @@ -174,7 +174,7 @@ public class ObjectManager extends Manager { double y = location.getZ(); QuadTree tree = quadTree.get(location.getTerrain()); for (SWGObject inRange : tree.getWithinRange(x, y, AWARE_RANGE)) { - if (inRange.getOwner() != null) { + if (inRange.getOwner() != null && inRange.getObjectId() != obj.getObjectId()) { updatedAware.add(inRange.getOwner()); } } @@ -227,6 +227,7 @@ public class ObjectManager extends Manager { // player.getCreatureObject().createObject(player); CreatureObject creature = (CreatureObject) player.getCreatureObject(); player.sendPacket(new UpdatePvpStatusMessage(creature.getPvpType(), creature.getPvpFactionId(), creature.getObjectId())); + creature.createObject(player); creature.clearAware(); moveObject(null, creature, creature.getLocation(), creature.getLocation()); updateAwarenessForObject(creature);