Newer
Older
ChallengeSystem / src / main / java / de / fanta / challenges / commands / event / EventToggleCommand.java
@fanta fanta on 26 Sep 2021 1 KB Jaaa ganz viel xD
package de.fanta.challenges.commands.event;

import de.fanta.challenges.Challenges;
import de.fanta.challenges.utils.ChatUtil;
import de.fanta.challenges.utils.guiutils.GUIUtils;
import de.iani.cubesideutils.bukkit.commands.SubCommand;
import de.iani.cubesideutils.commands.ArgsParser;
import net.md_5.bungee.api.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;

public class EventToggleCommand extends SubCommand {

    private final Challenges plugin;
    private final boolean enable;

    public EventToggleCommand(Challenges plugin, boolean enable) {
        this.plugin = plugin;
        this.enable = enable;
    }

    @Override
    public boolean onCommand(CommandSender sender, Command command, String alias, String commandString, ArgsParser args) {
        Player p = (Player) sender;
        if (!p.hasPermission("challenges.event")) {
            ChatUtil.sendErrorMessage(p, "Keine Berechtigung");
            return true;
        }
        if (enable) {
            if (!plugin.getConfig().getBoolean("event.enabled")) {
                GUIUtils.setConfig("event.enabled", true);
                GUIUtils.sendTitleToAll("Event", "Event-Modus aktiviert", ChatUtil.GREEN);
            } else {
                ChatUtil.sendErrorMessage(p, "Das Event läuft bereits!");
                return true;
            }
        } else {
            if (plugin.getConfig().getBoolean("event.enabled")) {
                GUIUtils.setConfig("event.enabled", false);
                plugin.getTimer().stopTimer();
                GUIUtils.sendTitleToAll("Event", "Event-Modus deaktiviert", ChatUtil.RED);
                plugin.getScoreManager().saveScores(p);
            } else {
                ChatUtil.sendErrorMessage(p, "Aktuell läuft kein Event!");
                return true;
            }
        }
        plugin.getSBManager().updateEventScoreboard();
        return true;
    }
}