mirror of
https://github.com/2006-Scape/apollo.git
synced 2026-07-04 08:39:27 +00:00
Fixes #17
This commit is contained in:
@@ -49,7 +49,7 @@ public final class NpcSynchronizationTask extends SynchronizationTask {
|
|||||||
|
|
||||||
for (Iterator<Npc> it = localNpcs.iterator(); it.hasNext();) {
|
for (Iterator<Npc> it = localNpcs.iterator(); it.hasNext();) {
|
||||||
Npc npc = it.next();
|
Npc npc = it.next();
|
||||||
if (!npc.isActive() || npc.isTeleporting() || npc.getPosition().getLongestDelta(playerPosition) > player.getViewingDistance()) {
|
if (!npc.isActive() || npc.isTeleporting() || npc.getPosition().getLongestDelta(playerPosition) > player.getViewingDistance() || !npc.getPosition().isWithinDistance(playerPosition, player.getViewingDistance())) {
|
||||||
it.remove();
|
it.remove();
|
||||||
segments.add(new RemoveMobSegment());
|
segments.add(new RemoveMobSegment());
|
||||||
} else {
|
} else {
|
||||||
@@ -68,7 +68,7 @@ public final class NpcSynchronizationTask extends SynchronizationTask {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Position npcPosition = npc.getPosition();
|
Position npcPosition = npc.getPosition();
|
||||||
if (npcPosition.isWithinDistance(playerPosition, player.getViewingDistance()) && !localNpcs.contains(npc) && npcPosition.getHeight() == playerPosition.getHeight()) {
|
if (npcPosition.isWithinDistance(playerPosition, player.getViewingDistance()) && !localNpcs.contains(npc)) {
|
||||||
localNpcs.add(npc);
|
localNpcs.add(npc);
|
||||||
added++;
|
added++;
|
||||||
npc.turnTo(npc.getFacingPosition());
|
npc.turnTo(npc.getFacingPosition());
|
||||||
|
|||||||
@@ -69,7 +69,7 @@ public final class PlayerSynchronizationTask extends SynchronizationTask {
|
|||||||
|
|
||||||
for (Iterator<Player> it = localPlayers.iterator(); it.hasNext();) {
|
for (Iterator<Player> it = localPlayers.iterator(); it.hasNext();) {
|
||||||
Player other = it.next();
|
Player other = it.next();
|
||||||
if (!other.isActive() || other.isTeleporting() || other.getPosition().getLongestDelta(player.getPosition()) > player.getViewingDistance()) {
|
if (!other.isActive() || other.isTeleporting() || other.getPosition().getLongestDelta(player.getPosition()) > player.getViewingDistance() || !other.getPosition().isWithinDistance(player.getPosition(), player.getViewingDistance())) {
|
||||||
it.remove();
|
it.remove();
|
||||||
segments.add(new RemoveMobSegment());
|
segments.add(new RemoveMobSegment());
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in New Issue
Block a user