diff --git a/Minecleaner.iml b/Minecleaner.iml index bbeeb3e..a376b96 100644 --- a/Minecleaner.iml +++ b/Minecleaner.iml @@ -4,7 +4,6 @@ - PAPER ADVENTURE 1 diff --git a/src/main/java/de/lunarakai/minecleaner/MinecleanerManager.java b/src/main/java/de/lunarakai/minecleaner/MinecleanerManager.java index 99b92e7..c80e36c 100644 --- a/src/main/java/de/lunarakai/minecleaner/MinecleanerManager.java +++ b/src/main/java/de/lunarakai/minecleaner/MinecleanerManager.java @@ -69,10 +69,8 @@ public class MinecleanerManager { this.sizes.put(3, "experte"); this.confirmPlayingInventory = plugin.getServer().createInventory(null, InventoryType.HOPPER, plugin.getDisplayedPluginName() + " starten?"); - this.confirmPlayingInventory.setItem(1, - ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.GREEN_CONCRETE), ChatColor.GREEN + "Bestätigen"))); - this.confirmPlayingInventory.setItem(3, - ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.RED_CONCRETE), ChatColor.RED + "Abbrechen"))); + this.confirmPlayingInventory.setItem(1, ItemStacks.rename(new ItemStack(Material.GREEN_CONCRETE), NamedTextColor.GREEN + "Bestätigen")); + this.confirmPlayingInventory.setItem(3, ItemStacks.rename(new ItemStack(Material.GREEN_CONCRETE), NamedTextColor.RED + "Abbrechen")); // Settings diff --git a/src/main/java/de/lunarakai/minecleaner/commands/groups/InviteCommand.java b/src/main/java/de/lunarakai/minecleaner/commands/groups/InviteCommand.java index 32944d3..4bafa29 100644 --- a/src/main/java/de/lunarakai/minecleaner/commands/groups/InviteCommand.java +++ b/src/main/java/de/lunarakai/minecleaner/commands/groups/InviteCommand.java @@ -19,12 +19,6 @@ import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; public class InviteCommand extends SubCommand { - /* - TODO: - - Invite other Players to play in Duo Mode - - Add Functionality to support multiple Players in the same game - - use settings of player that invited the other player - */ private final MinecleanerPlugin plugin; diff --git a/src/main/java/de/lunarakai/minecleaner/commands/groups/LeaveGroupCommand.java b/src/main/java/de/lunarakai/minecleaner/commands/groups/LeaveGroupCommand.java new file mode 100644 index 0000000..f6fe89e --- /dev/null +++ b/src/main/java/de/lunarakai/minecleaner/commands/groups/LeaveGroupCommand.java @@ -0,0 +1,53 @@ +package de.lunarakai.minecleaner.commands.groups; + +import de.iani.cubesideutils.bukkit.commands.SubCommand; +import de.iani.cubesideutils.bukkit.commands.exceptions.DisallowsCommandBlockException; +import de.iani.cubesideutils.bukkit.commands.exceptions.IllegalSyntaxException; +import de.iani.cubesideutils.bukkit.commands.exceptions.InternalCommandException; +import de.iani.cubesideutils.bukkit.commands.exceptions.NoPermissionException; +import de.iani.cubesideutils.bukkit.commands.exceptions.RequiresPlayerException; +import de.iani.cubesideutils.commands.ArgsParser; +import de.lunarakai.minecleaner.MinecleanerPlugin; +import de.lunarakai.minecleaner.utils.ChatUtils; +import org.bukkit.Bukkit; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +public class LeaveGroupCommand extends SubCommand { + private final MinecleanerPlugin plugin; + + public LeaveGroupCommand(MinecleanerPlugin plugin) { + this.plugin = plugin; + } + + @Override + public String getUsage() { + return ""; + } + + @Override + public boolean requiresPlayer() { + return true; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String s, String commandString, ArgsParser args) throws DisallowsCommandBlockException, RequiresPlayerException, NoPermissionException, IllegalSyntaxException, InternalCommandException { + Player player = (Player) sender; + if(plugin.getGroupManager().getGroup(player) == null) { + ChatUtils.sendSimpleWarningMessage(player, "group.common.notingroup"); + return true; + } + + Player groupOwnerPlayer = Bukkit.getPlayer(plugin.getGroupManager().getGroup(player).getOwner()); + + if(player == groupOwnerPlayer) { + ChatUtils.sendSimpleWarningMessage(player, "group.leave.usedismantle"); + return true; + } + + plugin.getGroupManager().getGroup(player).removePlayerFromGroup(player); + return true; + } + +} diff --git a/src/main/resources/lang/de_DE.properties b/src/main/resources/lang/de_DE.properties index 87f7260..7b6cd3e 100644 --- a/src/main/resources/lang/de_DE.properties +++ b/src/main/resources/lang/de_DE.properties @@ -53,6 +53,8 @@ group.invite.nopermission=Nur als Ersteller der Gruppe bist du berechtigt Leute group.invite.accept=Annehmen group.invite.deny=Ablehnen +group.leave.usedismantle=Als Ersteller der Gruppe nutze /... dismantlegroup um die Gruppe aufzulösen. + group.dismantle.nopermission=Du bist nicht berechtigt deine Gruppe aufzulösen. group.dismantle.yourgroup=Die Gruppe in der du dich befindest wurde aufgelöst. diff --git a/src/main/resources/lang/en_US.properties b/src/main/resources/lang/en_US.properties index 1e60179..0cc87d5 100644 --- a/src/main/resources/lang/en_US.properties +++ b/src/main/resources/lang/en_US.properties @@ -54,6 +54,8 @@ group.invite.nopermission=Only as the creator of the group are you authorized to group.invite.accept=Accept group.invite.deny=Deny +group.leave.usedismantle=As the creator of the group use /... dismantlegroup tO dissolve the group. + group.dismantle.nopermission=You are not authorized to dissolve your group. group.dismantle.yourgroup=The group you are in has been disbanded.