Try to synchronise these task to avoid some problems

This commit is contained in:
Xephi
2015-04-23 16:10:09 +02:00
parent 6d90be5e58
commit a8795abc23
11 changed files with 44 additions and 34 deletions
@@ -2,6 +2,7 @@ package fr.xephi.authme.task;
import org.bukkit.entity.Player;
import org.bukkit.scheduler.BukkitScheduler;
import org.bukkit.scheduler.BukkitTask;
import fr.xephi.authme.AuthMe;
import fr.xephi.authme.cache.auth.PlayerCache;
@@ -33,7 +34,7 @@ public class MessageTask implements Runnable {
player.sendMessage(ms);
}
BukkitScheduler sched = plugin.getServer().getScheduler();
int late = sched.scheduleSyncDelayedTask(plugin, this, interval * 20);
BukkitTask late = sched.runTaskLater(plugin, this, interval * 20);
if (LimboCache.getInstance().hasLimboPlayer(name)) {
LimboCache.getInstance().getLimboPlayer(name).setMessageTaskId(late);
}
@@ -38,8 +38,8 @@ public class TimeoutTask implements Runnable {
if (player.getName().toLowerCase().equals(name)) {
if (LimboCache.getInstance().hasLimboPlayer(name)) {
LimboPlayer inv = LimboCache.getInstance().getLimboPlayer(name);
player.getServer().getScheduler().cancelTask(inv.getMessageTaskId());
player.getServer().getScheduler().cancelTask(inv.getTimeoutTaskId());
inv.getMessageTaskId().cancel();
inv.getTimeoutTaskId().cancel();
if (playerCache.doesCacheExist(player)) {
playerCache.removeCache(player);
}