- Баллы
- 98
- Имя в Minecraft
- hyndo
Код:
public void startCountDown(Arena arena){
int id = Bukkit.getScheduler().scheduleSyncRepeatingTask(AntWars.instance(), new Runnable(){
int start = arena.getTimeToStart();
public void run(){
for (String str : arena.getPlayers()){
if(Bukkit.getPlayer(str) == null){
arena.getPlayers().remove(str);
}
}
String[] CDOn = config.getString("startCounDownOn").split(",");
for(int i = 0; i < CDOn.length; i++){
if(start == Integer.parseInt(CDOn[i])){
arena.sendMessage(format(prefix + "Начало через " + start + " секунд(ы)"));
}
}
start--;
}
}, 20, 20);
Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(AntWars.instance(), new Runnable(){
public void run(){
Bukkit.getServer().getScheduler().cancelTask(id);
startArena(arena);
}
}, (arena.getTimeToStart() * 20) + 1);
}
Имеется вот такой код. Его проблема в том, что если игрок выйдет и снова зайдет, то вызовется два раза этот метод и соответственно будет два начала и два отсчета.