1
mirror of https://github.com/StarWishsama/Slimefun4.git synced 2024-09-20 03:35:51 +00:00

Implemeted abstract Task class

* Removes the duplicated code in every Task class.
This commit is contained in:
sarhatabaot 2019-05-04 22:18:28 +03:00
parent b20851da07
commit 82b3f3c06c

View File

@ -0,0 +1,31 @@
package me.mrCookieSlime.Slimefun.Objects.tasks;
import org.bukkit.Bukkit;
import java.util.UUID;
public abstract class SlimefunTask implements Runnable {
private UUID uuid;
private int id;
@Override
public void run() {
if(cancelTask())
return;
executeTask();
}
/**
*
* @return True if task was cancelled.
*/
private boolean cancelTask(){
if(Bukkit.getPlayer(uuid) == null || Bukkit.getPlayer(uuid).isDead() || !Bukkit.getPlayer(uuid).isSneaking()) {
Bukkit.getScheduler().cancelTask(id);
return true;
}
return false;
}
abstract void executeTask();
}