@Override
    public void run() {
        // Clone to avoid concurrent modification.
        for (Player p : (List<Player>) this.game.players.clone()) {
            Location l = p.getLocation();
            l.setY(l.getY() + 3);

            if (this.arena.contains(l)) {
                if (this.game.players.size() > 1) {
                    this.game.players.remove(p);
                    p.sendMessage(ChatColor.RED + this.plugin.lang.getString("game.lost"));
                    this.game.broadcast(ChatColor.GREEN + p.getDisplayName() + ChatColor.GREEN + this.plugin.lang.getString("game.out"));
                }
            }
            if (this.game.players.size() == 1 && this.game.players.contains(p)) {
                this.plugin.getServer().broadcastMessage(ChatColor.GREEN + p.getDisplayName() + ChatColor.GREEN + this.plugin.lang.getString("game.won"));
                this.game.players.remove(p);

                this.arena.restore();
            }
        }
    }