#1113 Handle LimboPlayer tasks via LimboService
- Add methods to LimboService for handling messages to make it the only relevant Limbo class for outside classes - Move LimboPlayerTaskManager to limbo package and make it package-private - Create MessageTask and TimeoutTask immediately when LimboPlayer is created - #1112 MessageTask: improve efficiency by keeping reference to Player
This commit is contained in:
@@ -1,7 +1,5 @@
|
||||
package fr.xephi.authme.task;
|
||||
|
||||
import fr.xephi.authme.data.auth.PlayerCache;
|
||||
import fr.xephi.authme.service.BukkitService;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.scheduler.BukkitRunnable;
|
||||
|
||||
@@ -10,20 +8,16 @@ import org.bukkit.scheduler.BukkitRunnable;
|
||||
*/
|
||||
public class MessageTask extends BukkitRunnable {
|
||||
|
||||
private final String name;
|
||||
private final Player player;
|
||||
private final String[] message;
|
||||
private final BukkitService bukkitService;
|
||||
private final PlayerCache playerCache;
|
||||
private boolean isMuted;
|
||||
|
||||
/*
|
||||
* Constructor.
|
||||
*/
|
||||
public MessageTask(String name, String[] lines, BukkitService bukkitService, PlayerCache playerCache) {
|
||||
this.name = name;
|
||||
public MessageTask(Player player, String[] lines) {
|
||||
this.player = player;
|
||||
this.message = lines;
|
||||
this.bukkitService = bukkitService;
|
||||
this.playerCache = playerCache;
|
||||
isMuted = false;
|
||||
}
|
||||
|
||||
@@ -33,21 +27,8 @@ public class MessageTask extends BukkitRunnable {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
if (playerCache.isAuthenticated(name)) {
|
||||
cancel();
|
||||
}
|
||||
|
||||
if (isMuted) {
|
||||
return;
|
||||
}
|
||||
|
||||
for (Player player : bukkitService.getOnlinePlayers()) {
|
||||
if (player.getName().equalsIgnoreCase(name)) {
|
||||
for (String ms : message) {
|
||||
player.sendMessage(ms);
|
||||
}
|
||||
break;
|
||||
}
|
||||
if (!isMuted) {
|
||||
player.sendMessage(message);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user