package mcjty.rftools.items.parts;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import mcjty.rftools.RFTools;
import mcjty.rftools.blocks.dimletconstruction.DimletConstructionSetup;
import mcjty.rftools.dimension.world.types.StructureType;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumChatFormatting;
import org.lwjgl.input.Keyboard;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class StructureEssenceItem extends Item {
public static final Map<Integer,StructureType> structures = new HashMap<Integer, StructureType>();
static {
structures.put(1, StructureType.STRUCTURE_VILLAGE);
structures.put(2, StructureType.STRUCTURE_STRONGHOLD);
structures.put(3, StructureType.STRUCTURE_DUNGEON);
structures.put(4, StructureType.STRUCTURE_FORTRESS);
structures.put(5, StructureType.STRUCTURE_MINESHAFT);
structures.put(6, StructureType.STRUCTURE_SCATTERED);
}
public StructureEssenceItem() {
setMaxStackSize(16);
setHasSubtypes(true);
setMaxDamage(0);
}
@SideOnly(Side.CLIENT)
@Override
public void addInformation(ItemStack itemStack, EntityPlayer player, List list, boolean whatIsThis) {
super.addInformation(itemStack, player, list, whatIsThis);
if (Keyboard.isKeyDown(Keyboard.KEY_LSHIFT) || Keyboard.isKeyDown(Keyboard.KEY_RSHIFT)) {
list.add(EnumChatFormatting.WHITE + "This essence item is the main ingredient for");
list.add(EnumChatFormatting.WHITE + "structure dimlets.");
} else {
list.add(EnumChatFormatting.WHITE + RFTools.SHIFT_MESSAGE);
}
}
@Override
public String getUnlocalizedName(ItemStack itemStack) {
StructureType structureType = structures.get(itemStack.getItemDamage());
if (structureType == null) {
return "unknown";
}
return super.getUnlocalizedName(itemStack) + structureType.getName();
}
@Override
public void getSubItems(Item item, CreativeTabs creativeTabs, List list) {
for (Integer key : structures.keySet()) {
list.add(new ItemStack(DimletConstructionSetup.structureEssenceItem, 1, key));
}
}
}