Maya/src/main/java/eu/univento/maya/game/GameCounter.java

57 lines
1.5 KiB
Java

package eu.univento.maya.game;
import eu.univento.maya.Maya;
import eu.univento.maya.Utils;
import org.bukkit.Bukkit;
import org.bukkit.scheduler.BukkitRunnable;
import org.bukkit.scoreboard.DisplaySlot;
import org.bukkit.scoreboard.Objective;
import org.bukkit.scoreboard.Score;
import org.bukkit.scoreboard.Scoreboard;
/**
* runnable for game counter
* @author joethei
* @version 0.2
*/
public class GameCounter extends BukkitRunnable{
int time = 0;
int maxTime = 80;
public void run() {
if(Maya.getStage() == GameStage.InGame) {
updateScoreboard();
if(Maya.getPlayers().size() <= 1) {
Utils.endGame(Maya.getStage());
}
if(time == maxTime) {
Maya.setStage(GameStage.Buy);
Maya.buyID = Maya.getInstance().getServer().getScheduler().scheduleSyncRepeatingTask(Maya.getInstance(), new BuyCounter(), 20L, 20L);
Bukkit.getScheduler().cancelTask(Maya.gameID);
}
time++;
}
return;
}
void updateScoreboard() {
Scoreboard board = Bukkit.getScoreboardManager().getMainScoreboard();
Objective obj = board.getObjective("maya");
if(obj == null) {
obj = board.registerNewObjective("maya", "dummy");
}
obj.setDisplayName("§6Maya");
obj.setDisplaySlot(DisplaySlot.SIDEBAR);
Score time = obj.getScore("§6Zeit:");
time.setScore(this.time);
if(this.time == maxTime) {
obj.unregister();
}
}
}