mirror of
https://github.com/plexusorg/ItemizerX.git
synced 2024-11-21 20:04:59 +00:00
Finish converting command to MiniMessage
This commit is contained in:
parent
ee441ae4b6
commit
c77026bfda
@ -4,12 +4,8 @@ import java.util.ArrayList;
|
|||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.regex.Matcher;
|
|
||||||
import java.util.regex.Pattern;
|
|
||||||
import net.kyori.adventure.text.Component;
|
import net.kyori.adventure.text.Component;
|
||||||
import net.kyori.adventure.text.format.NamedTextColor;
|
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.bukkit.ChatColor;
|
|
||||||
import org.bukkit.Color;
|
import org.bukkit.Color;
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
import org.bukkit.NamespacedKey;
|
import org.bukkit.NamespacedKey;
|
||||||
@ -685,12 +681,12 @@ public class ItemizerXCommand implements CommandExecutor, ItemizerXBase
|
|||||||
}
|
}
|
||||||
if (args.length == 1)
|
if (args.length == 1)
|
||||||
{
|
{
|
||||||
sender.sendMessage(colorize("""
|
sender.sendMessage(mm.deserialize("""
|
||||||
&3===============&f[&dEnchant Commands&f]&3===============
|
<dark_aqua>===============<white>[<light_purple>Enchant Commands<white>]<dark_aqua>===============
|
||||||
&b/itemizer enchant add <&fname&b> <&flevel&b> &c- &6Add an enchant
|
<aqua>/itemizer enchant add <<white>name<aqua>> <<white>level<aqua>> <red>- <gold>Add an enchant
|
||||||
&b/itemizer enchant remove <&fname&b> &c- &6Remove an enchant
|
<aqua>/itemizer enchant remove <<white>name<aqua>> <red>- <gold>Remove an enchant
|
||||||
&b/itemizer enchant list &c- &6List all item's enchants
|
<aqua>/itemizer enchant list <red>- <gold>List all item's enchants
|
||||||
&b/itemizer enchant listall &c- &6List all available enchants"""));
|
<aqua>/itemizer enchant listall <red>- <gold>List all available enchants"""));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (!hasItem)
|
if (!hasItem)
|
||||||
@ -709,13 +705,14 @@ public class ItemizerXCommand implements CommandExecutor, ItemizerXBase
|
|||||||
}
|
}
|
||||||
if (args.length < 4)
|
if (args.length < 4)
|
||||||
{
|
{
|
||||||
sender.sendMessage(colorize("&3===============&f[&dEnchant Commands&f]&3===============\n" + "&b/itemizer enchant add <&fname&b> <&flevel&b> &c- &6Add an enchant"));
|
sender.sendMessage(mm.deserialize("<dark_aqua>===============<white>[<light_purple>Enchant Commands<white>]<dark_aqua>==============="));
|
||||||
|
sender.sendMessage(mm.deserialize("<aqua>/itemizer enchant add <<white>name<aqua>> <<white>level<aqua>> <red>- <gold>Add an enchant"));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
final Enchantment ench = EnchantmentWrapper.getByKey(NamespacedKey.minecraft(args[2].toLowerCase()));
|
final Enchantment ench = EnchantmentWrapper.getByKey(NamespacedKey.minecraft(args[2].toLowerCase()));
|
||||||
if (ench == null)
|
if (ench == null)
|
||||||
{
|
{
|
||||||
sender.sendMessage(colorize("&4The enchantment &f'" + args[2] + "&f' &4does not exist!"));
|
sender.sendMessage(mm.deserialize("<dark_red>The enchantment <white>'" + args[2] + "<white>' <dark_red>does not exist!"));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
Integer level = parseInt(sender, args[3]);
|
Integer level = parseInt(sender, args[3]);
|
||||||
@ -724,7 +721,7 @@ public class ItemizerXCommand implements CommandExecutor, ItemizerXBase
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
item.addUnsafeEnchantment(ench, level);
|
item.addUnsafeEnchantment(ench, level);
|
||||||
sender.sendMessage(colorize("&2The enchant &f'" + ench.getKey().getKey() + "' &2has been added to your item"));
|
sender.sendMessage(mm.deserialize("<dark_green>The enchant <white>'" + ench.getKey().getKey() + "' <dark_green>has been added to your item"));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
case "remove" ->
|
case "remove" ->
|
||||||
@ -736,28 +733,29 @@ public class ItemizerXCommand implements CommandExecutor, ItemizerXBase
|
|||||||
}
|
}
|
||||||
if (args.length == 2)
|
if (args.length == 2)
|
||||||
{
|
{
|
||||||
sender.sendMessage(colorize("&3===============&f[&dEnchant Commands&f]&3===============\n" + "&b/itemizer enchant remove <&fname&b> &c- &6Remove an enchant"));
|
sender.sendMessage(mm.deserialize("<dark_aqua>===============<white>[<light_purple>Enchant Commands<white>]<dark_aqua>==============="));
|
||||||
|
sender.sendMessage(mm.deserialize("<aqua>/itemizer enchant remove <<white>name<aqua>> <red>- <gold>Remove an enchant"));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
final Enchantment ench = EnchantmentWrapper.getByKey(NamespacedKey.minecraft(args[2].toLowerCase()));
|
final Enchantment ench = EnchantmentWrapper.getByKey(NamespacedKey.minecraft(args[2].toLowerCase()));
|
||||||
if (ench == null)
|
if (ench == null)
|
||||||
{
|
{
|
||||||
sender.sendMessage(colorize("&4The enchantment &f'" + args[2] + "&f' &4does not exist!"));
|
sender.sendMessage(mm.deserialize("<dark_red>The enchantment <white>'" + args[2] + "<white>' <dark_red>does not exist!"));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
assert meta != null;
|
assert meta != null;
|
||||||
if (Objects.requireNonNull(meta.getEnchants()).isEmpty())
|
if (Objects.requireNonNull(meta.getEnchants()).isEmpty())
|
||||||
{
|
{
|
||||||
sender.sendMessage(colorize("&4This item doesn't hold any enchants"));
|
sender.sendMessage(mm.deserialize("<dark_red>This item doesn't hold any enchants"));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (!meta.getEnchants().containsKey(ench))
|
if (!meta.getEnchants().containsKey(ench))
|
||||||
{
|
{
|
||||||
sender.sendMessage(colorize("&4This item doesn't have &f'" + ench.getKey().getKey() + "' &4enchant!"));
|
sender.sendMessage(mm.deserialize("<dark_red>This item doesn't have <white<'" + ench.getKey().getKey() + "' <dark_red>enchant!"));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
item.removeEnchantment(ench);
|
item.removeEnchantment(ench);
|
||||||
sender.sendMessage(colorize("&2The enchant &f'" + ench.getKey().getKey() + "' &2has been removed from your item"));
|
sender.sendMessage(mm.deserialize("<dark_green>The enchant <white>'" + ench.getKey().getKey() + "' <dark_green>has been removed from your item"));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
case "list" ->
|
case "list" ->
|
||||||
@ -770,10 +768,10 @@ public class ItemizerXCommand implements CommandExecutor, ItemizerXBase
|
|||||||
assert meta != null;
|
assert meta != null;
|
||||||
if (Objects.requireNonNull(meta.getEnchants()).isEmpty())
|
if (Objects.requireNonNull(meta.getEnchants()).isEmpty())
|
||||||
{
|
{
|
||||||
sender.sendMessage(colorize("&4This item doesn't hold any enchants"));
|
sender.sendMessage(mm.deserialize("<dark_red>This item doesn't hold any enchants"));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
sender.sendMessage(colorize("&2Item enchants: &e" + StringUtils.join(meta.getEnchants().keySet(), ", ")));
|
sender.sendMessage(mm.deserialize("<dark_green>Item enchants: <yellow>" + StringUtils.join(meta.getEnchants().keySet(), ", ")));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
case "listall" ->
|
case "listall" ->
|
||||||
@ -789,12 +787,12 @@ public class ItemizerXCommand implements CommandExecutor, ItemizerXBase
|
|||||||
{
|
{
|
||||||
sb.append(", ").append(enchantments[i].getKey().getKey());
|
sb.append(", ").append(enchantments[i].getKey().getKey());
|
||||||
}
|
}
|
||||||
sender.sendMessage(colorize("&2Available item enchants: &e" + sb.toString().replaceFirst(", ", "")));
|
sender.sendMessage(mm.deserialize("<dark_green>Available item enchants: <yellow>" + sb.toString().replaceFirst(", ", "")));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
default ->
|
default ->
|
||||||
{
|
{
|
||||||
sender.sendMessage(colorize("&bUnknown sub-command. Type &6/itemizer enchant &bfor help."));
|
sender.sendMessage(mm.deserialize("<aqua>Unknown sub-command. Type <gold><click:run_command:/itemizer enchant>/itemizer enchant</click> <aqua>for help."));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -808,7 +806,8 @@ public class ItemizerXCommand implements CommandExecutor, ItemizerXBase
|
|||||||
}
|
}
|
||||||
if (args.length == 1)
|
if (args.length == 1)
|
||||||
{
|
{
|
||||||
sender.sendMessage(colorize("&3===============&f[&dTitle Command&f]&3===============\n" + "&b/itemizer title <&fname&b> &c- &6Set the book's title"));
|
sender.sendMessage(mm.deserialize("<dark_aqua>===============<white>[<light_purple>Title Command<white>]<dark_aqua>==============="));
|
||||||
|
sender.sendMessage(mm.deserialize("<aqua>/itemizer title <<white>name<aqua>> <red>- <gold>Set the book's title"));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (!hasBook)
|
if (!hasBook)
|
||||||
@ -816,12 +815,12 @@ public class ItemizerXCommand implements CommandExecutor, ItemizerXBase
|
|||||||
sender.sendMessage(mm.deserialize("<red>You do not have a Written Book in your hand."));
|
sender.sendMessage(mm.deserialize("<red>You do not have a Written Book in your hand."));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
String name = colorize(StringUtils.join(args, " ", 1, args.length));
|
Component name = mm.deserialize(StringUtils.join(args, " ", 1, args.length));
|
||||||
final BookMeta bookMeta = (BookMeta)meta;
|
final BookMeta bookMeta = (BookMeta)meta;
|
||||||
assert bookMeta != null;
|
assert bookMeta != null;
|
||||||
bookMeta.setTitle(name);
|
bookMeta.title(name);
|
||||||
item.setItemMeta(bookMeta);
|
item.setItemMeta(bookMeta);
|
||||||
sender.sendMessage(colorize("&2The title of the book has been set to &f'" + name + "&f'"));
|
sender.sendMessage(mm.deserialize("<dark_green>The title of the book has been set to <white'" + name + "<white>'"));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
case "author" ->
|
case "author" ->
|
||||||
@ -833,7 +832,8 @@ public class ItemizerXCommand implements CommandExecutor, ItemizerXBase
|
|||||||
}
|
}
|
||||||
if (args.length == 1)
|
if (args.length == 1)
|
||||||
{
|
{
|
||||||
sender.sendMessage(colorize("&3===============&f[&dAuthor Command&f]&3===============\n" + "&b/itemizer author <&fname&b> &c- &6Set the book's title"));
|
sender.sendMessage(mm.deserialize("<dark_aqua>===============<white>[<light_purple>Author Command<white>]<dark_aqua>==============="));
|
||||||
|
sender.sendMessage(mm.deserialize("<aqua>/itemizer author <<white>name<aqua>> <red>- <gold>Set the book's author"));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (!hasBook)
|
if (!hasBook)
|
||||||
@ -841,12 +841,12 @@ public class ItemizerXCommand implements CommandExecutor, ItemizerXBase
|
|||||||
sender.sendMessage(mm.deserialize("<red>You do not have a Written Book in your hand."));
|
sender.sendMessage(mm.deserialize("<red>You do not have a Written Book in your hand."));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
String name = colorize(args[1]);
|
Component name = mm.deserialize(args[1]);
|
||||||
final BookMeta bookMeta = (BookMeta)meta;
|
final BookMeta bookMeta = (BookMeta)meta;
|
||||||
assert bookMeta != null;
|
assert bookMeta != null;
|
||||||
bookMeta.setAuthor(name);
|
bookMeta.author(name);
|
||||||
item.setItemMeta(bookMeta);
|
item.setItemMeta(bookMeta);
|
||||||
sender.sendMessage(colorize("&2The author of the book has been set to &f'" + name + "&f'"));
|
sender.sendMessage(mm.deserialize("<dark_green>The author of the book has been set to <white>'" + name + "<white>'"));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
case "head" ->
|
case "head" ->
|
||||||
@ -858,7 +858,8 @@ public class ItemizerXCommand implements CommandExecutor, ItemizerXBase
|
|||||||
}
|
}
|
||||||
if (args.length == 1)
|
if (args.length == 1)
|
||||||
{
|
{
|
||||||
sender.sendMessage(colorize("&3===============&f[&dHead Command&f]&3===============\n" + "&b/itemizer head <&fname&b> &c- &6Set the player of the head"));
|
sender.sendMessage(mm.deserialize("<dark_aqua>===============<white>[<light_purple>Head Command<white>]<dark_aqua>==============="));
|
||||||
|
sender.sendMessage(mm.deserialize("<aqua>/itemizer head <<white>name<aqua>> <red>- <gold>Set the player of the head"));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (item.getType() != Material.PLAYER_HEAD)
|
if (item.getType() != Material.PLAYER_HEAD)
|
||||||
@ -875,7 +876,7 @@ public class ItemizerXCommand implements CommandExecutor, ItemizerXBase
|
|||||||
assert skullMeta != null;
|
assert skullMeta != null;
|
||||||
skullMeta.setOwner(name);
|
skullMeta.setOwner(name);
|
||||||
item.setItemMeta(skullMeta);
|
item.setItemMeta(skullMeta);
|
||||||
sender.sendMessage(colorize("&2The player of the head has been set to &f'" + name + "&f'"));
|
sender.sendMessage(mm.deserialize("<dark_green>The player of the head has been set to <white>'" + name + "<white>'"));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
case "sign" ->
|
case "sign" ->
|
||||||
@ -887,13 +888,14 @@ public class ItemizerXCommand implements CommandExecutor, ItemizerXBase
|
|||||||
}
|
}
|
||||||
if (args.length < 3)
|
if (args.length < 3)
|
||||||
{
|
{
|
||||||
sender.sendMessage(colorize("&3===============&f[&dSign Command&f]&3===============\n" + "&b/itemizer sign <&fline&b> <&ftext&b> &c- &6Change the line on the sign"));
|
sender.sendMessage(mm.deserialize("<dark_aqua>===============<white>[<light_purple>Sign Commands<white>]<dark_aqua>==============="));
|
||||||
|
sender.sendMessage(mm.deserialize("<aqua>/itemizer sign <<white>line<aqua>> <<white>text<aqua>> <red>- <gold>Change the line on the sign"));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
final Block block = player.getTargetBlockExact(20);
|
final Block block = player.getTargetBlockExact(20);
|
||||||
if (block == null || block.getType() == Material.AIR || !block.getType().toString().contains("SIGN"))
|
if (block == null || block.getType() == Material.AIR || !block.getType().toString().contains("SIGN"))
|
||||||
{
|
{
|
||||||
sender.sendMessage(colorize("&4Please look at a sign!"));
|
sender.sendMessage(mm.deserialize("<red>Please look at a sign!"));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
Integer line = parseInt(sender, args[1]);
|
Integer line = parseInt(sender, args[1]);
|
||||||
@ -903,22 +905,22 @@ public class ItemizerXCommand implements CommandExecutor, ItemizerXBase
|
|||||||
}
|
}
|
||||||
else if (line > 4)
|
else if (line > 4)
|
||||||
{
|
{
|
||||||
sender.sendMessage(colorize("&4There's maximum of 4 lines on a sign"));
|
sender.sendMessage(mm.deserialize("<dark_red>There's a maximum of 4 lines on a sign"));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
String text = colorize(StringUtils.join(args, " ", 2, args.length));
|
Component text = mm.deserialize(StringUtils.join(args, " ", 2, args.length));
|
||||||
if (cpb.getAPI() != null)
|
if (cpb.getAPI() != null)
|
||||||
{
|
{
|
||||||
cpb.getAPI().logRemoval(player.getName(), block.getLocation(), block.getType(), block.getBlockData());
|
cpb.getAPI().logRemoval(player.getName(), block.getLocation(), block.getType(), block.getBlockData());
|
||||||
}
|
}
|
||||||
Sign sign = (Sign)block.getState();
|
Sign sign = (Sign)block.getState();
|
||||||
sign.setLine(line - 1, text);
|
sign.line(line - 1, text);
|
||||||
sign.update();
|
sign.update();
|
||||||
if (cpb.getAPI() != null)
|
if (cpb.getAPI() != null)
|
||||||
{
|
{
|
||||||
cpb.getAPI().logPlacement(player.getName(), sign.getLocation(), sign.getType(), sign.getBlockData());
|
cpb.getAPI().logPlacement(player.getName(), sign.getLocation(), sign.getType(), sign.getBlockData());
|
||||||
}
|
}
|
||||||
sender.sendMessage(colorize("&2Line &f'" + line + "'&2 has successfully changed to &f'" + text + "&f'"));
|
sender.sendMessage(mm.deserialize("<dark_green>Line <white>'" + line + "<white>'<dark_green> has successfully changed to <white>'" + text + "<white>'"));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
case "clearall" ->
|
case "clearall" ->
|
||||||
@ -934,29 +936,17 @@ public class ItemizerXCommand implements CommandExecutor, ItemizerXBase
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
item.setItemMeta(null);
|
item.setItemMeta(null);
|
||||||
sender.sendMessage(colorize("&2All data cleared from your item"));
|
sender.sendMessage(mm.deserialize("<dark_green>All data cleared from your item"));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
default ->
|
default ->
|
||||||
{
|
{
|
||||||
sender.sendMessage(colorize("&bUnknown sub-command. Type &6/itemizer help &bfor help."));
|
sender.sendMessage(mm.deserialize("<aqua>Unknown sub-command. Type <gold><click:run_command:/itemizer help>/itemizer help</click> <aqua>for help."));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private String colorize(String string)
|
|
||||||
{
|
|
||||||
Matcher matcher = Pattern.compile("&#[a-fA-F0-9]{6}").matcher(string);
|
|
||||||
while (matcher.find())
|
|
||||||
{
|
|
||||||
String code = matcher.group().replace("&", "");
|
|
||||||
string = string.replace("&" + code, net.md_5.bungee.api.ChatColor.of(code) + "");
|
|
||||||
}
|
|
||||||
string = ChatColor.translateAlternateColorCodes('&', string);
|
|
||||||
return string;
|
|
||||||
}
|
|
||||||
|
|
||||||
private Integer parseInt(CommandSender sender, String string)
|
private Integer parseInt(CommandSender sender, String string)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
@ -965,7 +955,7 @@ public class ItemizerXCommand implements CommandExecutor, ItemizerXBase
|
|||||||
}
|
}
|
||||||
catch (NumberFormatException ex)
|
catch (NumberFormatException ex)
|
||||||
{
|
{
|
||||||
sender.sendMessage(colorize("&f\"" + string + "&f\"&4 is not a valid number!"));
|
sender.sendMessage(mm.deserialize("<white>\"" + string + "<white>\"<dark_red> is not a valid number!"));
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,9 @@
|
|||||||
package dev.plex.itemizerx;
|
package dev.plex.itemizerx;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.List;
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
@ -8,93 +12,116 @@ import org.bukkit.enchantments.Enchantment;
|
|||||||
import org.bukkit.inventory.ItemFlag;
|
import org.bukkit.inventory.ItemFlag;
|
||||||
import org.bukkit.potion.PotionEffectType;
|
import org.bukkit.potion.PotionEffectType;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
public class ItemizerXTab implements TabCompleter
|
||||||
import java.util.Arrays;
|
{
|
||||||
import java.util.Collections;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public class ItemizerXTab implements TabCompleter {
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<String> onTabComplete(CommandSender sender, Command cmd, String string, String[] args) {
|
public List<String> onTabComplete(CommandSender sender, Command cmd, String string, String[] args)
|
||||||
if (args.length == 1) {
|
{
|
||||||
|
if (args.length == 1)
|
||||||
|
{
|
||||||
return Arrays.asList("help", "id", "lore", "potion", "attr", "flag", "enchant", "title", "author",
|
return Arrays.asList("help", "id", "lore", "potion", "attr", "flag", "enchant", "title", "author",
|
||||||
"head", "sign", "clearall");
|
"head", "sign", "clearall");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (args.length == 2) {
|
if (args.length == 2)
|
||||||
switch (args[0]) {
|
{
|
||||||
case "id": {
|
switch (args[0])
|
||||||
|
{
|
||||||
|
case "id":
|
||||||
|
{
|
||||||
List<String> materials = new ArrayList<>();
|
List<String> materials = new ArrayList<>();
|
||||||
for (Material material : Material.values()) {
|
for (Material material : Material.values())
|
||||||
|
{
|
||||||
materials.add(material.name());
|
materials.add(material.name());
|
||||||
}
|
}
|
||||||
return materials;
|
return materials;
|
||||||
}
|
}
|
||||||
case "lore": {
|
case "lore":
|
||||||
|
{
|
||||||
return Arrays.asList("add", "remove", "change", "clear");
|
return Arrays.asList("add", "remove", "change", "clear");
|
||||||
}
|
}
|
||||||
case "potion": {
|
case "potion":
|
||||||
|
{
|
||||||
return Arrays.asList("add", "remove", "change", "color", "list");
|
return Arrays.asList("add", "remove", "change", "color", "list");
|
||||||
}
|
}
|
||||||
case "attr":
|
case "attr":
|
||||||
case "flag":
|
case "flag":
|
||||||
case "enchant": {
|
case "enchant":
|
||||||
|
{
|
||||||
return Arrays.asList("add", "remove", "list", "listall");
|
return Arrays.asList("add", "remove", "list", "listall");
|
||||||
}
|
}
|
||||||
default: {
|
default:
|
||||||
|
{
|
||||||
return Collections.emptyList();
|
return Collections.emptyList();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (args.length == 3) {
|
if (args.length == 3)
|
||||||
switch (args[0]) {
|
{
|
||||||
case "potion": {
|
switch (args[0])
|
||||||
switch (args[1]) {
|
{
|
||||||
|
case "potion":
|
||||||
|
{
|
||||||
|
switch (args[1])
|
||||||
|
{
|
||||||
case "add":
|
case "add":
|
||||||
case "remove": {
|
case "remove":
|
||||||
|
{
|
||||||
List<String> potions = new ArrayList<>();
|
List<String> potions = new ArrayList<>();
|
||||||
for (PotionEffectType effect : PotionEffectType.values()) {
|
for (PotionEffectType effect : PotionEffectType.values())
|
||||||
|
{
|
||||||
potions.add(effect.getName());
|
potions.add(effect.getName());
|
||||||
}
|
}
|
||||||
return potions;
|
return potions;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
case "attr": {
|
case "attr":
|
||||||
switch (args[1]) {
|
{
|
||||||
|
switch (args[1])
|
||||||
|
{
|
||||||
case "add":
|
case "add":
|
||||||
case "remove": {
|
case "remove":
|
||||||
|
{
|
||||||
return Attributes.getAttributeList();
|
return Attributes.getAttributeList();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
case "flag": {
|
case "flag":
|
||||||
switch (args[1]) {
|
{
|
||||||
|
switch (args[1])
|
||||||
|
{
|
||||||
case "add":
|
case "add":
|
||||||
case "remove": {
|
case "remove":
|
||||||
|
{
|
||||||
List<String> flags = new ArrayList<>();
|
List<String> flags = new ArrayList<>();
|
||||||
for (ItemFlag flag : ItemFlag.values()) {
|
for (ItemFlag flag : ItemFlag.values())
|
||||||
|
{
|
||||||
flags.add(flag.name());
|
flags.add(flag.name());
|
||||||
}
|
}
|
||||||
return flags;
|
return flags;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
case "enchant": {
|
case "enchant":
|
||||||
switch (args[1]) {
|
{
|
||||||
|
switch (args[1])
|
||||||
|
{
|
||||||
case "add":
|
case "add":
|
||||||
case "remove": {
|
case "remove":
|
||||||
|
{
|
||||||
List<String> enchantments = new ArrayList<>();
|
List<String> enchantments = new ArrayList<>();
|
||||||
for (Enchantment enchantment : Enchantment.values()) {
|
for (Enchantment enchantment : Enchantment.values())
|
||||||
|
{
|
||||||
enchantments.add(enchantment.getKey().getKey());
|
enchantments.add(enchantment.getKey().getKey());
|
||||||
}
|
}
|
||||||
return enchantments;
|
return enchantments;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
default: {
|
default:
|
||||||
|
{
|
||||||
return Collections.emptyList();
|
return Collections.emptyList();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user