116 lines
4.7 KiB
Java
116 lines
4.7 KiB
Java
package dev.trixinity.event.commands;
|
|
|
|
import dev.trixinity.event.TrixinityEvent;
|
|
import org.bukkit.Bukkit;
|
|
import org.bukkit.ChatColor;
|
|
import org.bukkit.GameMode;
|
|
import org.bukkit.Material;
|
|
import org.bukkit.command.Command;
|
|
import org.bukkit.command.CommandExecutor;
|
|
import org.bukkit.command.CommandSender;
|
|
import org.bukkit.command.TabCompleter;
|
|
import org.bukkit.enchantments.Enchantment;
|
|
import org.bukkit.entity.Player;
|
|
import org.bukkit.inventory.ItemStack;
|
|
import org.bukkit.inventory.meta.ItemMeta;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.Arrays;
|
|
import java.util.List;
|
|
|
|
/**
|
|
* Implementace příkazů pro správu eventů.
|
|
*/
|
|
public class EventCommand implements CommandExecutor, TabCompleter {
|
|
|
|
private void handleEventStarting(CommandSender sender) {
|
|
TrixinityEvent plugin = TrixinityEvent.getInstance();
|
|
|
|
// Nastavení stavu eventu na "starting"
|
|
plugin.getConfig().set("event_status", "starting");
|
|
plugin.saveConfig();
|
|
|
|
// Vyplnění oblasti vzduchem
|
|
Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "fill 47 62 42 39 60 42 air");
|
|
|
|
sender.sendMessage(ChatColor.YELLOW + "Event začíná");
|
|
|
|
// Oznámení všem hráčům
|
|
Bukkit.broadcastMessage(ChatColor.YELLOW + ChatColor.BOLD.toString() + "EVENT ZAČÍNÁ!");
|
|
}
|
|
|
|
private void handleEventStart(CommandSender sender) {
|
|
TrixinityEvent plugin = TrixinityEvent.getInstance();
|
|
|
|
// Nastavení stavu eventu na "začal"
|
|
plugin.getConfig().set("event_status", "started");
|
|
plugin.saveConfig();
|
|
|
|
// Vyplnění oblasti železnými mřížemi
|
|
Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "fill 47 62 42 39 60 42 iron_bars");
|
|
|
|
sender.sendMessage(ChatColor.GREEN + "Event byl úspěšně spuštěn!");
|
|
|
|
// Oznámení všem hráčům
|
|
Bukkit.broadcastMessage(ChatColor.RED + ChatColor.BOLD.toString() + "EVENT ZAČAL!");
|
|
}
|
|
|
|
private void handleEventEnd(CommandSender sender) {
|
|
TrixinityEvent plugin = TrixinityEvent.getInstance();
|
|
|
|
// Nastavení stavu eventu na "skončil"
|
|
plugin.getConfig().set("event_status", "ended");
|
|
plugin.saveConfig();
|
|
|
|
// Vyplnění oblasti vzduchem (reset po skončení eventu)
|
|
Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "fill 47 62 42 39 60 42 air");
|
|
|
|
sender.sendMessage(ChatColor.RED + "Event byl ukončen!");
|
|
|
|
// Oznámení všem hráčům
|
|
Bukkit.broadcastMessage(ChatColor.RED + ChatColor.BOLD.toString() + "EVENT SKONČIL!");
|
|
}
|
|
|
|
private void showPluginInfo(CommandSender sender) {
|
|
sender.sendMessage(String.format("%s%s------------(%s%s TRIXINITY EVENT %s%s)------------",
|
|
ChatColor.RED, ChatColor.STRIKETHROUGH,
|
|
ChatColor.RED, ChatColor.BOLD,
|
|
ChatColor.RED, ChatColor.STRIKETHROUGH));
|
|
sender.sendMessage("");
|
|
sender.sendMessage(ChatColor.GOLD + ChatColor.BOLD.toString() + "Plugin pro správu eventů");
|
|
sender.sendMessage(ChatColor.YELLOW + "Tvůrce: " + ChatColor.WHITE + "BabyMsp2k");
|
|
sender.sendMessage(ChatColor.YELLOW + "Verze: " + ChatColor.WHITE + "1.0.0");
|
|
|
|
// Zobrazení příkazů pouze pro hráče s oprávněním trixinity.eventer.help
|
|
if (sender.hasPermission("trixinity.eventer.help")) {
|
|
sender.sendMessage("");
|
|
sender.sendMessage(ChatColor.GREEN + "Dostupné příkazy:");
|
|
sender.sendMessage(ChatColor.RED + ChatColor.BOLD.toString() + "- "
|
|
+ ChatColor.RED + "/event starting");
|
|
sender.sendMessage(ChatColor.RED + ChatColor.BOLD.toString() + "- "
|
|
+ ChatColor.RED + "/event start");
|
|
sender.sendMessage(ChatColor.RED + ChatColor.BOLD.toString() + "- "
|
|
+ ChatColor.RED + "/event end");
|
|
sender.sendMessage(ChatColor.RED + ChatColor.BOLD.toString() + "- "
|
|
+ ChatColor.RED + "/event event <spleef/end>");
|
|
sender.sendMessage(ChatColor.RED + ChatColor.BOLD.toString() + "- "
|
|
+ ChatColor.RED + "/event build off/on");
|
|
sender.sendMessage(ChatColor.RED + ChatColor.BOLD.toString() + "- "
|
|
+ ChatColor.RED + "/event pvp off/on");
|
|
sender.sendMessage(ChatColor.RED + ChatColor.BOLD.toString() + "- "
|
|
+ ChatColor.RED + "/event spawn (hráč)");
|
|
sender.sendMessage(ChatColor.RED + ChatColor.BOLD.toString() + "- "
|
|
+ ChatColor.RED + "/event hunger on/off");
|
|
sender.sendMessage(ChatColor.RED + ChatColor.BOLD.toString() + "- "
|
|
+ ChatColor.RED + "/event kick (hráč)");
|
|
sender.sendMessage(ChatColor.RED + ChatColor.BOLD.toString() + "- "
|
|
+ ChatColor.RED + "WorldEdit příkazy");
|
|
}
|
|
|
|
sender.sendMessage("");
|
|
sender.sendMessage(ChatColor.RED + ChatColor.STRIKETHROUGH.toString()
|
|
+ "---------------------------------");
|
|
}
|
|
|
|
// ... zbytek kódu zůstává stejný ...
|
|
} |