@Override
  public void tpPlayerToCoordName(Arena arena, Player player, String place) {
    if (arena.cfg.getBoolean("messages.colorNick", true)) {
      if (spoutHandler != null) {
        colorizePlayer(arena, player);
      } else {
        ArenaTeam team = Teams.getTeam(arena, ArenaPlayer.parsePlayer(player));
        String n;
        if (team == null) {
          db.i("> team is null");
          n = player.getName();
        } else {
          n = team.getColorString() + player.getName();
        }
        n = n.replaceAll("(&([a-f0-9]))", "§$2");

        player.setDisplayName(n);

        if (team != null && arena.cfg.getBoolean("game.hideName")) {
          n = " ";
        }

        updateName(player, n);
      }
    }
  }
  private void colorizePlayer(Arena a, Player player) {
    db.i("colorizing player " + player.getName() + ";");

    Arena arena = Arenas.getArenaByPlayer(player);
    if (arena == null) {
      db.i("> arena is null");
      if (spoutHandler != null) {
        SpoutManager.getPlayer(player).setTitle(player.getName());
      } else if (!a.cfg.getBoolean("colors.requireSpout")) {
        disguise(player, player.getName());
      }
      return;
    }

    ArenaTeam team = Teams.getTeam(arena, ArenaPlayer.parsePlayer(player));
    String n;
    if (team == null) {
      db.i("> team is null");
      if (spoutHandler != null) {
        SpoutManager.getPlayer(player).setTitle(player.getName());
      } else if (!a.cfg.getBoolean("colors.requireSpout")) {
        disguise(player, player.getName());
      }
      return;
    } else {
      n = team.getColorString() + player.getName();
    }
    n = n.replaceAll("(&([a-f0-9]))", "§$2");

    player.setDisplayName(n);

    if (arena.cfg.getBoolean("game.hideName")) {
      n = " ";
    }
    if (spoutHandler != null) {
      SpoutManager.getPlayer(player).setTitle(n);
    } else if (!a.cfg.getBoolean("colors.requireSpout")) {
      disguise(player, n);
    }
  }