mirror of
https://github.com/JamesPeters98/ChestsPlusPlus.git
synced 2025-02-15 20:12:15 +01:00
Command Reformatting
Added /autocraft command that provides almost the same functionality as /chestlink but for AutoCraft groups. Rename classes to make more sense.
This commit is contained in:
parent
5c6898166a
commit
90b970a111
@ -1,6 +1,7 @@
|
|||||||
package com.jamesdpeters.minecraft.chests;
|
package com.jamesdpeters.minecraft.chests;
|
||||||
|
|
||||||
import com.jamesdpeters.minecraft.chests.commands.RemoteChestCommand;
|
import com.jamesdpeters.minecraft.chests.commands.AutoCraftCommand;
|
||||||
|
import com.jamesdpeters.minecraft.chests.commands.ChestLinkCommand;
|
||||||
import com.jamesdpeters.minecraft.chests.crafting.Crafting;
|
import com.jamesdpeters.minecraft.chests.crafting.Crafting;
|
||||||
import com.jamesdpeters.minecraft.chests.listeners.ChestLinkListener;
|
import com.jamesdpeters.minecraft.chests.listeners.ChestLinkListener;
|
||||||
import com.jamesdpeters.minecraft.chests.listeners.HopperListener;
|
import com.jamesdpeters.minecraft.chests.listeners.HopperListener;
|
||||||
@ -37,7 +38,9 @@ import org.bukkit.plugin.java.annotation.plugin.author.Author;
|
|||||||
@ApiVersion(ApiVersion.Target.v1_14)
|
@ApiVersion(ApiVersion.Target.v1_14)
|
||||||
@Description(value = "Minecraft Spigot mod that enhances chests and hoppers, with ChestLinks and Hopper filters!")
|
@Description(value = "Minecraft Spigot mod that enhances chests and hoppers, with ChestLinks and Hopper filters!")
|
||||||
@Author(value = "jameslfc19")
|
@Author(value = "jameslfc19")
|
||||||
@Commands(@Command(name = "chestlink", desc = "Chests++ Commands.", aliases = {"cl"}, usage = "Use /chestlink help for more info."))
|
@Commands({
|
||||||
|
@Command(name = "chestlink", desc = "Chests++ ChestLink Commands.", aliases = {"cl"}, usage = "Use /chestlink help for more info."),
|
||||||
|
@Command(name = "autocraft", desc = "Chests++ AutoCraft Commands.", aliases = {"ac"}, usage = "Use /autocraft help for more info.")})
|
||||||
@Permission(name = Permissions.ADD, desc = "Gives permission to add ChestLinks!", defaultValue = PermissionDefault.TRUE)
|
@Permission(name = Permissions.ADD, desc = "Gives permission to add ChestLinks!", defaultValue = PermissionDefault.TRUE)
|
||||||
@Permission(name = Permissions.OPEN, desc = "Gives permission to open ChestLinks!", defaultValue = PermissionDefault.TRUE)
|
@Permission(name = Permissions.OPEN, desc = "Gives permission to open ChestLinks!", defaultValue = PermissionDefault.TRUE)
|
||||||
@Permission(name = Permissions.MENU, desc = "Gives permission to open the ChestLink menu!", defaultValue = PermissionDefault.TRUE)
|
@Permission(name = Permissions.MENU, desc = "Gives permission to open the ChestLink menu!", defaultValue = PermissionDefault.TRUE)
|
||||||
@ -73,7 +76,8 @@ public class ChestsPlusPlus extends JavaPlugin {
|
|||||||
Crafting.load();
|
Crafting.load();
|
||||||
|
|
||||||
PLUGIN = this;
|
PLUGIN = this;
|
||||||
new RemoteChestCommand().register(this);
|
new ChestLinkCommand().register(this);
|
||||||
|
new AutoCraftCommand().register(this);
|
||||||
getServer().getPluginManager().registerEvents(new ChestLinkListener(),this);
|
getServer().getPluginManager().registerEvents(new ChestLinkListener(),this);
|
||||||
getServer().getPluginManager().registerEvents(new InventoryListener(),this);
|
getServer().getPluginManager().registerEvents(new InventoryListener(),this);
|
||||||
getServer().getPluginManager().registerEvents(new HopperListener(),this);
|
getServer().getPluginManager().registerEvents(new HopperListener(),this);
|
||||||
|
@ -0,0 +1,255 @@
|
|||||||
|
package com.jamesdpeters.minecraft.chests.commands;
|
||||||
|
|
||||||
|
import com.jamesdpeters.minecraft.chests.misc.Messages;
|
||||||
|
import com.jamesdpeters.minecraft.chests.misc.Permissions;
|
||||||
|
import com.jamesdpeters.minecraft.chests.misc.Utils;
|
||||||
|
import com.jamesdpeters.minecraft.chests.serialize.AutoCraftingStorage;
|
||||||
|
import com.jamesdpeters.minecraft.chests.serialize.Config;
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
|
import org.bukkit.ChatColor;
|
||||||
|
import org.bukkit.block.Block;
|
||||||
|
import org.bukkit.command.Command;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
import java.util.stream.Stream;
|
||||||
|
|
||||||
|
public class AutoCraftCommand extends ServerCommand {
|
||||||
|
|
||||||
|
private enum OPTIONS {
|
||||||
|
ADD("/autocraft add <group>", "Create/add a Crafting Table to an AutoCraft group"),
|
||||||
|
HELP("/autocraft help","List of commands and their uses!"),
|
||||||
|
LIST("/autocraft list","Lists all AutoCraft groups that you own!"),
|
||||||
|
MEMBER("/autocraft member [add/remove <group> <player>] or [list <group>]","Add, remove or list members of a group"),
|
||||||
|
MENU("/autocraft menu","Open the AutoCraft menu to display all groups!"),
|
||||||
|
OPEN("/autocraft open <Group>","Open the workbench of an AutoCraft group"),
|
||||||
|
REMOVE("/autocraft remove <Group>", "Delete an AutoCraft group and drop all the Crafting Tables!"),
|
||||||
|
RENAME("/autocraft rename <group> <new-name>","Rename an AutoCraft group."),
|
||||||
|
SETPUBLIC("/autocraft setpublic <group> <true/false>", "Set an AutoCraft group to be accessible by anyone.");
|
||||||
|
|
||||||
|
String description, commandHelp;
|
||||||
|
static List<String> valuesList;
|
||||||
|
|
||||||
|
static {
|
||||||
|
valuesList = Stream.of(OPTIONS.values()).map(OPTIONS::toString).collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
|
||||||
|
OPTIONS( String commandHelp, String description){
|
||||||
|
this.commandHelp = commandHelp;
|
||||||
|
this.description = description;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return super.toString().toLowerCase();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getCommandName() {
|
||||||
|
return "autocraft";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
||||||
|
if(!(sender instanceof Player)){
|
||||||
|
sender.sendMessage("Only a player can use this command");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
Player player = (Player) sender;
|
||||||
|
if(args != null && args.length > 0) {
|
||||||
|
switch (OPTIONS.valueOf(args[0].toUpperCase())){
|
||||||
|
case HELP:
|
||||||
|
for(OPTIONS option : OPTIONS.values()){
|
||||||
|
if(!option.equals(OPTIONS.HELP)) {
|
||||||
|
player.sendMessage(ChatColor.RED + option.commandHelp);
|
||||||
|
player.sendMessage(ChatColor.WHITE + option.description);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
case ADD:
|
||||||
|
if(args.length > 1){
|
||||||
|
if (player.hasPermission(Permissions.AUTOCRAFT_ADD)) {
|
||||||
|
Block targetBlock = player.getTargetBlockExact(5);
|
||||||
|
if (targetBlock != null) Utils.createAutoCraftChest(player, targetBlock, args[2]);
|
||||||
|
else Messages.MUST_LOOK_AT_CHEST(player);
|
||||||
|
} else {
|
||||||
|
Messages.NO_PERMISSION(player);
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
player.sendMessage(ChatColor.RED+ OPTIONS.ADD.commandHelp);
|
||||||
|
player.sendMessage(ChatColor.RED+ OPTIONS.ADD.description);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
case OPEN:
|
||||||
|
if(args.length > 1){
|
||||||
|
if(sender.hasPermission(Permissions.AUTOCRAFT_OPEN)) {
|
||||||
|
AutoCraftingStorage invs;
|
||||||
|
if(args[1].contains(":")){
|
||||||
|
invs = Config.getAutoCraftStorage(player,args[1]);
|
||||||
|
} else {
|
||||||
|
invs = Config.getAutoCraftStorage(player.getUniqueId(), args[1]);
|
||||||
|
}
|
||||||
|
if(invs != null) Utils.openInventory(player, invs.getInventory());
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
Messages.NO_PERMISSION(player);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
player.sendMessage(ChatColor.RED+ OPTIONS.OPEN.commandHelp);
|
||||||
|
player.sendMessage(ChatColor.RED+ OPTIONS.OPEN.description);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
case MENU:
|
||||||
|
if(sender.hasPermission(Permissions.MENU)) {
|
||||||
|
//TODO Add AutoCraft menu.
|
||||||
|
//ChestLinkMenu.getMenu(player).open(player);
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
Messages.NO_PERMISSION(player);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
case LIST:
|
||||||
|
Messages.LIST_AUTOCRAFT(player);
|
||||||
|
return true;
|
||||||
|
case REMOVE:
|
||||||
|
if(args.length > 1) {
|
||||||
|
if (sender.hasPermission(Permissions.AUTOCRAFT_REMOVE)) {
|
||||||
|
Config.removeAutoCraft(player, args[2]);
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
Messages.NO_PERMISSION(player);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
player.sendMessage(ChatColor.RED+ OPTIONS.REMOVE.commandHelp);
|
||||||
|
player.sendMessage(ChatColor.RED+ OPTIONS.REMOVE.description);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
case MEMBER:
|
||||||
|
return memberCommand(args, sender);
|
||||||
|
case SETPUBLIC: {
|
||||||
|
if (args.length > 2) {
|
||||||
|
AutoCraftingStorage storage = Config.getAutoCraftStorage(player.getUniqueId(), args[1]);
|
||||||
|
if (storage != null) {
|
||||||
|
boolean setPublic = Boolean.parseBoolean(args[2]);
|
||||||
|
storage.setPublic(setPublic);
|
||||||
|
Messages.SET_PUBLIC(player, storage);
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
Bukkit.broadcastMessage("Storage null");
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
player.sendMessage(ChatColor.RED + OPTIONS.SETPUBLIC.commandHelp);
|
||||||
|
player.sendMessage(ChatColor.RED + OPTIONS.SETPUBLIC.description);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
case RENAME: {
|
||||||
|
if(args.length > 2){
|
||||||
|
String group = args[1];
|
||||||
|
String newIdentifier = args[2];
|
||||||
|
if(!Config.renameAutoCraftStorage(player,group,newIdentifier)){
|
||||||
|
player.sendMessage(ChatColor.RED + OPTIONS.RENAME.commandHelp);
|
||||||
|
player.sendMessage(ChatColor.RED + OPTIONS.RENAME.description);
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
|
||||||
|
if((sender instanceof Player)) {
|
||||||
|
Player player = (Player) sender;
|
||||||
|
|
||||||
|
if (args.length == 1) {
|
||||||
|
return OPTIONS.valuesList;
|
||||||
|
}
|
||||||
|
if(args.length == 2) {
|
||||||
|
try {
|
||||||
|
switch (OPTIONS.valueOf(args[0].toUpperCase())) {
|
||||||
|
case ADD:
|
||||||
|
case OPEN:
|
||||||
|
return Utils.getAutoCraftStorageOpenableList(player);
|
||||||
|
case REMOVE:
|
||||||
|
case RENAME:
|
||||||
|
return Utils.getAutoCraftStorageList(player);
|
||||||
|
case MEMBER:
|
||||||
|
return Arrays.asList("add","remove","list");
|
||||||
|
}
|
||||||
|
} catch (IllegalArgumentException ignored) { }
|
||||||
|
}
|
||||||
|
if(args.length == 3) {
|
||||||
|
try {
|
||||||
|
switch (OPTIONS.valueOf(args[0].toUpperCase())) {
|
||||||
|
case MEMBER:
|
||||||
|
return Utils.getAutoCraftStorageList(player);
|
||||||
|
}
|
||||||
|
} catch (IllegalArgumentException ignored) { }
|
||||||
|
}
|
||||||
|
if(args.length == 4) {
|
||||||
|
try {
|
||||||
|
switch (OPTIONS.valueOf(args[0].toUpperCase())) {
|
||||||
|
case MEMBER:
|
||||||
|
return Utils.getOnlinePlayers();
|
||||||
|
}
|
||||||
|
} catch (IllegalArgumentException ignored) { }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private static boolean memberCommand(String[] args, CommandSender sender){
|
||||||
|
Player player = (Player) sender;
|
||||||
|
if(args.length > 3){
|
||||||
|
if(sender.hasPermission(Permissions.MEMBER)){
|
||||||
|
if(args[1].equals("add")) {
|
||||||
|
Player toAdd = Bukkit.getPlayer(args[3]);
|
||||||
|
AutoCraftingStorage storage = Config.getAutoCraftStorage(player.getUniqueId(), args[2]);
|
||||||
|
if (storage != null && storage.addMember(toAdd))
|
||||||
|
Messages.ADDED_MEMBER(player, storage, args[3]);
|
||||||
|
else Messages.UNABLE_TO_ADD_MEMBER(player, args[3]);
|
||||||
|
} else if(args[1].equals("remove")){
|
||||||
|
Player toAdd = Bukkit.getPlayer(args[3]);
|
||||||
|
AutoCraftingStorage storage = Config.getAutoCraftStorage(player.getUniqueId(), args[2]);
|
||||||
|
if(storage != null && storage.removeMember(toAdd))
|
||||||
|
Messages.REMOVE_MEMBER(player, storage, args[3]);
|
||||||
|
else Messages.UNABLE_TO_REMOVE_MEMBER(player,args[3]);
|
||||||
|
} else {
|
||||||
|
player.sendMessage(ChatColor.RED+ OPTIONS.MEMBER.commandHelp);
|
||||||
|
player.sendMessage(ChatColor.RED+ OPTIONS.MEMBER.description);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
Messages.NO_PERMISSION(player);
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
} else if(args.length > 2){
|
||||||
|
if(sender.hasPermission(Permissions.MEMBER)){
|
||||||
|
if(args[1].equals("list")) {
|
||||||
|
AutoCraftingStorage storage = Config.getAutoCraftStorage(player.getUniqueId(), args[2]);
|
||||||
|
if(storage != null){
|
||||||
|
Messages.LIST_MEMBERS(player,storage);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
player.sendMessage(ChatColor.RED+ OPTIONS.MEMBER.commandHelp);
|
||||||
|
player.sendMessage(ChatColor.RED+ OPTIONS.MEMBER.description);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
@ -1,28 +1,25 @@
|
|||||||
package com.jamesdpeters.minecraft.chests.commands;
|
package com.jamesdpeters.minecraft.chests.commands;
|
||||||
|
|
||||||
import com.jamesdpeters.minecraft.chests.crafting.Crafting;
|
|
||||||
import com.jamesdpeters.minecraft.chests.inventories.ChestLinkMenu;
|
import com.jamesdpeters.minecraft.chests.inventories.ChestLinkMenu;
|
||||||
import com.jamesdpeters.minecraft.chests.serialize.AutoCraftingStorage;
|
|
||||||
import com.jamesdpeters.minecraft.chests.serialize.Config;
|
|
||||||
import com.jamesdpeters.minecraft.chests.misc.Messages;
|
import com.jamesdpeters.minecraft.chests.misc.Messages;
|
||||||
import com.jamesdpeters.minecraft.chests.misc.Permissions;
|
import com.jamesdpeters.minecraft.chests.misc.Permissions;
|
||||||
import com.jamesdpeters.minecraft.chests.misc.Utils;
|
import com.jamesdpeters.minecraft.chests.misc.Utils;
|
||||||
|
import com.jamesdpeters.minecraft.chests.serialize.Config;
|
||||||
import com.jamesdpeters.minecraft.chests.serialize.InventoryStorage;
|
import com.jamesdpeters.minecraft.chests.serialize.InventoryStorage;
|
||||||
import com.jamesdpeters.minecraft.chests.sort.SortMethod;
|
import com.jamesdpeters.minecraft.chests.sort.SortMethod;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
import org.bukkit.OfflinePlayer;
|
|
||||||
import org.bukkit.block.Block;
|
import org.bukkit.block.Block;
|
||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.permissions.Permission;
|
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.Arrays;
|
||||||
|
import java.util.List;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
import java.util.stream.Stream;
|
import java.util.stream.Stream;
|
||||||
|
|
||||||
public class RemoteChestCommand extends ServerCommand {
|
public class ChestLinkCommand extends ServerCommand {
|
||||||
|
|
||||||
private enum OPTIONS {
|
private enum OPTIONS {
|
||||||
ADD("/chestlink add <group>", "Create/add a chest to a ChestLink group"),
|
ADD("/chestlink add <group>", "Create/add a chest to a ChestLink group"),
|
||||||
@ -160,7 +157,7 @@ public class RemoteChestCommand extends ServerCommand {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
case MEMBER:
|
case MEMBER:
|
||||||
memberCommand(args, sender);
|
return memberCommand(args, sender);
|
||||||
case SETPUBLIC: {
|
case SETPUBLIC: {
|
||||||
if (args.length > 2) {
|
if (args.length > 2) {
|
||||||
InventoryStorage storage = Config.getInventoryStorage(player.getUniqueId(), args[1]);
|
InventoryStorage storage = Config.getInventoryStorage(player.getUniqueId(), args[1]);
|
||||||
@ -189,39 +186,6 @@ public class RemoteChestCommand extends ServerCommand {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
case AUTOCRAFT: {
|
|
||||||
if(args.length > 2) {
|
|
||||||
if (args[1].equals("add")) {
|
|
||||||
if (player.hasPermission(Permissions.AUTOCRAFT_ADD)) {
|
|
||||||
Block targetBlock = player.getTargetBlockExact(5);
|
|
||||||
if (targetBlock != null) Utils.createAutoCraftChest(player, targetBlock, args[2]);
|
|
||||||
else Messages.MUST_LOOK_AT_CHEST(player);
|
|
||||||
} else {
|
|
||||||
Messages.NO_PERMISSION(player);
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (args[1].equals("remove")) {
|
|
||||||
if (sender.hasPermission(Permissions.AUTOCRAFT_REMOVE)) {
|
|
||||||
Config.removeAutoCraft(player, args[2]);
|
|
||||||
return true;
|
|
||||||
} else {
|
|
||||||
Messages.NO_PERMISSION(player);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if(args.length > 1){
|
|
||||||
if(args[1].equals("list")){
|
|
||||||
Messages.LIST_AUTOCRAFT(player);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
memberAutoCraftCommand(args,sender);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -247,7 +211,6 @@ public class RemoteChestCommand extends ServerCommand {
|
|||||||
case RENAME:
|
case RENAME:
|
||||||
return Utils.getInventoryStorageList(player);
|
return Utils.getInventoryStorageList(player);
|
||||||
case MEMBER:
|
case MEMBER:
|
||||||
case AUTOCRAFT:
|
|
||||||
return Arrays.asList("add","remove","list");
|
return Arrays.asList("add","remove","list");
|
||||||
}
|
}
|
||||||
} catch (IllegalArgumentException ignored) { }
|
} catch (IllegalArgumentException ignored) { }
|
||||||
@ -259,8 +222,6 @@ public class RemoteChestCommand extends ServerCommand {
|
|||||||
return Utils.getInventoryStorageList(player);
|
return Utils.getInventoryStorageList(player);
|
||||||
case SORT:
|
case SORT:
|
||||||
return SortMethod.valuesList;
|
return SortMethod.valuesList;
|
||||||
case AUTOCRAFT:
|
|
||||||
return Utils.getAutoCraftStorageList(player);
|
|
||||||
}
|
}
|
||||||
} catch (IllegalArgumentException ignored) { }
|
} catch (IllegalArgumentException ignored) { }
|
||||||
}
|
}
|
||||||
@ -317,46 +278,4 @@ public class RemoteChestCommand extends ServerCommand {
|
|||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static boolean memberAutoCraftCommand(String[] args, CommandSender sender){
|
|
||||||
Player player = (Player) sender;
|
|
||||||
if(args.length > 4){
|
|
||||||
if(sender.hasPermission(Permissions.MEMBER)){
|
|
||||||
if(args[2].equals("add")) {
|
|
||||||
Player toAdd = Bukkit.getPlayer(args[4]);
|
|
||||||
AutoCraftingStorage storage = Config.getAutoCraftStorage(player.getUniqueId(), args[3]);
|
|
||||||
if (storage != null && storage.addMember(toAdd))
|
|
||||||
Messages.ADDED_MEMBER(player, storage, args[4]);
|
|
||||||
else Messages.UNABLE_TO_ADD_MEMBER(player, args[4]);
|
|
||||||
} else if(args[2].equals("remove")){
|
|
||||||
Player toAdd = Bukkit.getPlayer(args[4]);
|
|
||||||
AutoCraftingStorage storage = Config.getAutoCraftStorage(player.getUniqueId(), args[3]);
|
|
||||||
if(storage != null && storage.removeMember(toAdd))
|
|
||||||
Messages.REMOVE_MEMBER(player, storage, args[4]);
|
|
||||||
else Messages.UNABLE_TO_REMOVE_MEMBER(player,args[4]);
|
|
||||||
} else {
|
|
||||||
player.sendMessage(ChatColor.RED+OPTIONS.MEMBER.commandHelp);
|
|
||||||
player.sendMessage(ChatColor.RED+OPTIONS.MEMBER.description);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
Messages.NO_PERMISSION(player);
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
} else if(args.length > 3){
|
|
||||||
if(sender.hasPermission(Permissions.MEMBER)){
|
|
||||||
if(args[2].equals("list")) {
|
|
||||||
AutoCraftingStorage storage = Config.getAutoCraftStorage(player.getUniqueId(), args[3]);
|
|
||||||
if(storage != null){
|
|
||||||
Messages.LIST_MEMBERS(player,storage);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
player.sendMessage(ChatColor.RED+OPTIONS.MEMBER.commandHelp);
|
|
||||||
player.sendMessage(ChatColor.RED+OPTIONS.MEMBER.description);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user