@Override
	public void run() {
		synchronized(this) {
			for (Player player : getPlayers().values()) {
				if (player == null) {
					continue;
				}
				player.prepare();
			}
			for (Player player : getPlayers().values()) {
				if (player == null) {
					continue;
				}
				player.getUpdateListener().update(player);
			}
			for (Player player : getPlayers().values()) {
				if (player == null) {
					continue;
				}
				player.reset();
			}
		}
	}