From 1cdf50b188a993758574a05ca072d3d279171d99 Mon Sep 17 00:00:00 2001 From: Teriuihi Date: Sun, 8 Aug 2021 05:13:29 +0200 Subject: [PATCH] Added party command --- .../com/alttd/chat/commands/PartyCommand.java | 55 +++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 galaxy/src/main/java/com/alttd/chat/commands/PartyCommand.java diff --git a/galaxy/src/main/java/com/alttd/chat/commands/PartyCommand.java b/galaxy/src/main/java/com/alttd/chat/commands/PartyCommand.java new file mode 100644 index 0000000..334d80d --- /dev/null +++ b/galaxy/src/main/java/com/alttd/chat/commands/PartyCommand.java @@ -0,0 +1,55 @@ +package com.alttd.chat.commands; + +import com.alttd.chat.ChatPlugin; +import com.alttd.chat.database.Queries; +import com.alttd.chat.managers.PartyManager; +import com.alttd.chat.objects.Party; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import org.bukkit.scheduler.BukkitRunnable; + +public class PartyCommand implements CommandExecutor { + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if(!(sender instanceof Player player)) { // must be a player + return true; + } + if(args.length == 0) return false; + + new BukkitRunnable() { + @Override + public void run() { + switch (args[0].toLowerCase()) { + case "create" -> { + // TODO: 06/08/2021 verify args 1, 2 and check args length (3-16 char limit?) + Party party = Queries.addParty(player.getUniqueId(), args[1], args[2]); + PartyManager.addParty(party); + } + case "invite" -> { + // TODO: 07/08/2021 send invite to user, when they click execute + } + case "join" -> { + // TODO: 07/08/2021 verify password and join party + } + case "leave" -> { + // TODO: 07/08/2021 leave the party + } + case "remove" -> { + // TODO: 07/08/2021 remove specified user + } + case "delete" -> { + // TODO: 07/08/2021 ask for confirmation, when they click repeat the command but with --confirm (so if it has that at the end obv delete the party) + } + default -> { + // TODO: 07/08/2021 send help message + } + } + } + }.runTaskAsynchronously(ChatPlugin.getInstance()); + + return false; + } +}