我找不到任何方法来隐藏除 1.8.8 中的 ops 之外的所有人的玩家名称。 使用 NameTagVisibility.HIDE_FOR_OTHER_TEAMS 将操作隐藏在团队中也会隐藏操作名称,所以我不能这样做。
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.scoreboard.NameTagVisibility;
import org.bukkit.scoreboard.Scoreboard;
import org.bukkit.scoreboard.Team;
public class HideNameTags {
private Scoreboard scoreboard;
private Team team;
public HideNameTags() {
this.scoreboard = Bukkit.getScoreboardManager().getMainScoreboard();
this.team = scoreboard.getTeam("hidden");
if (this.team == null)
this.team = scoreboard.registerNewTeam("hidden");
this.team.setNameTagVisibility(NameTagVisibility.NEVER);
}
public void hidePlayer(Player player) {
if (!this.team.hasPlayer(player)) {
this.team.addPlayer(player);
player.sendMessage("Votre nom est invisible.");
player.setScoreboard(scoreboard);
}
}
public void showPlayer(Player player) {
if (this.team.hasPlayer(player)) {
this.team.removePlayer(player);
player.sendMessage("Votre nom est de nouveau visible.");
player.setScoreboard(scoreboard);
}
}
}
姓名标签是隐藏的,但我不知道如何让操作人员看到它们