TF-EssentialsX/Essentials/src/com/earth2me/essentials/commands/Commanditemdb.java

59 lines
1.9 KiB
Java
Raw Normal View History

package com.earth2me.essentials.commands;
import com.earth2me.essentials.CommandSource;
import org.bukkit.Material;
import org.bukkit.Server;
import org.bukkit.inventory.ItemStack;
import java.util.Collections;
import java.util.List;
2015-04-15 04:06:16 +00:00
import static com.earth2me.essentials.I18n.tl;
2015-04-15 04:06:16 +00:00
public class Commanditemdb extends EssentialsCommand {
public Commanditemdb() {
super("itemdb");
}
2015-04-15 04:06:16 +00:00
@Override
protected void run(Server server, CommandSource sender, String commandLabel, String[] args) throws Exception {
ItemStack itemStack = null;
boolean itemHeld = false;
if (args.length < 1) {
if (sender.isPlayer() && sender.getPlayer() != null) {
2015-04-15 04:06:16 +00:00
itemHeld = true;
itemStack = sender.getPlayer().getInventory().getItemInMainHand();
2015-04-15 04:06:16 +00:00
}
if (itemStack == null) {
throw new NotEnoughArgumentsException();
}
} else {
itemStack = ess.getItemDb().get(args[0]);
}
2018-10-13 14:59:25 +00:00
sender.sendMessage(tl("itemType", itemStack.getType().toString()));
2012-09-08 17:41:21 +00:00
2015-04-15 04:06:16 +00:00
if (itemHeld && itemStack.getType() != Material.AIR) {
int maxuses = itemStack.getType().getMaxDurability();
int durability = ((maxuses + 1) - itemStack.getDurability());
if (maxuses != 0) {
sender.sendMessage(tl("durability", Integer.toString(durability)));
}
}
final String itemNameList = ess.getItemDb().names(itemStack);
if (itemNameList != null) {
sender.sendMessage(tl("itemNames", ess.getItemDb().names(itemStack)));
}
}
@Override
protected List<String> getTabCompleteOptions(Server server, CommandSource sender, String commandLabel, String[] args) {
if (args.length == 1) {
return getItems();
} else {
return Collections.emptyList();
}
}
}