我正在创建minecraft插件,我需要系统等待玩家发送消息(该消息将另存为变量)。但是我不知道该怎么做...
我尝试创建循环函数,该函数始终检查该播放器是否发送了消息(一旦播放器发送了一条消息,它将从数组或HashMap中删除),否则,它将向播放器发送标题为“ XYZ类型的消息”以聊天“但是,每次我运行该功能时,都会导致严重的延迟,并且在服务器崩溃后……是否有其他方法?
我的循环功能:
public boolean RequestMessage(String name, Player player) {
String[] MessageArray = name.split("-");
if(RPlayers.containsKey(player.getName())) {
if (MessageArray[0].equals("edit")) {
if (MessageArray[1].equals("join")) {
player.sendTitle(ChatColor.DARK_AQUA+"Edit Join message", ChatColor.GREEN+"left click"+ChatColor.GRAY+" to cancel", 0, 30, 0);
try {
Thread.sleep((long) 5000);
RequestMessage(name, player);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
return false;
}
我会用
RPlayers.put(player.getName(), "edit-join-"+(1));
RequestMessage("edit-join-"+(1), player);