1 package games.stendhal.server.core.engine.listener; 2 3 import games.stendhal.server.core.engine.SingletonRepository; 4 import games.stendhal.server.core.engine.Task; 5 import games.stendhal.server.core.events.LogoutListener; 6 import games.stendhal.server.entity.player.Player; 7 import games.stendhal.server.events.PlayerLoggedOutEvent; 8 /** 9 * UpdatePlayerOnlineLogoutListener is responsible for sending PlayerLoggedOutEvents on Logout 10 * 11 * @author markus 12 */ 13 public class UpdatePlayerOnlineLogoutListener implements LogoutListener{ 14 15 @Override onLoggedOut(Player player)16 public void onLoggedOut(Player player) { 17 SingletonRepository.getRuleProcessor().getOnlinePlayers().forAllPlayersExecute(new Task<Player>() { 18 @Override 19 public void execute(final Player player) { 20 player.addEvent(new PlayerLoggedOutEvent(player.getName())); 21 player.notifyWorldAboutChanges(); 22 } 23 }); 24 } 25 26 27 28 } 29