fix npcs not re-appearing when switching worlds at similar coordinates
This commit is contained in:
		
							parent
							
								
									22058a607f
								
							
						
					
					
						commit
						84af1753e6
					
				
					 1 changed files with 4 additions and 2 deletions
				
			
		| 
						 | 
					@ -35,7 +35,10 @@ public class NpcProcessorTask extends BukkitRunnable {
 | 
				
			||||||
            double closestDist = Double.MAX_VALUE;
 | 
					            double closestDist = Double.MAX_VALUE;
 | 
				
			||||||
            Player closest = null;
 | 
					            Player closest = null;
 | 
				
			||||||
            for (Player player : Bukkit.getOnlinePlayers()) {
 | 
					            for (Player player : Bukkit.getOnlinePlayers()) {
 | 
				
			||||||
                if (!player.getWorld().equals(npc.getWorld())) continue;
 | 
					                if (!player.getWorld().equals(npc.getWorld())) {
 | 
				
			||||||
 | 
					                    if (npc.isShown(player)) npc.hide(player);
 | 
				
			||||||
 | 
					                    continue;
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
                double distance = player.getLocation().distanceSquared(npc.getBukkitLocation());
 | 
					                double distance = player.getLocation().distanceSquared(npc.getBukkitLocation());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                // visibility
 | 
					                // visibility
 | 
				
			||||||
| 
						 | 
					@ -50,7 +53,6 @@ public class NpcProcessorTask extends BukkitRunnable {
 | 
				
			||||||
                        NpcSpawnEvent event = new NpcSpawnEvent(player, entry);
 | 
					                        NpcSpawnEvent event = new NpcSpawnEvent(player, entry);
 | 
				
			||||||
                        Bukkit.getPluginManager().callEvent(event);
 | 
					                        Bukkit.getPluginManager().callEvent(event);
 | 
				
			||||||
                        if (event.isCancelled()) continue;
 | 
					                        if (event.isCancelled()) continue;
 | 
				
			||||||
 | 
					 | 
				
			||||||
                        npc.show(player);
 | 
					                        npc.show(player);
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                    if (distance < closestDist) {
 | 
					                    if (distance < closestDist) {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue