diff options
Diffstat (limited to 'src/main/java/com/detrav/items')
-rw-r--r-- | src/main/java/com/detrav/items/DetravMetaGeneratedItem01.java | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/src/main/java/com/detrav/items/DetravMetaGeneratedItem01.java b/src/main/java/com/detrav/items/DetravMetaGeneratedItem01.java index 46af98e605..6f0f278726 100644 --- a/src/main/java/com/detrav/items/DetravMetaGeneratedItem01.java +++ b/src/main/java/com/detrav/items/DetravMetaGeneratedItem01.java @@ -8,6 +8,12 @@ import com.detrav.enums.DetravSimpleItems; import com.detrav.enums.Textures01; import gregtech.api.enums.Materials; import gregtech.api.interfaces.IIconContainer; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.util.EnumChatFormatting; + +import java.util.List; /** * Created by wital_000 on 19.03.2016. @@ -23,6 +29,7 @@ public class DetravMetaGeneratedItem01 extends DetravMetaGeneratedItem { this.setCreativeTab(DetravScannerMod.TAB_DETRAV); int tLastID; DetravItemList.Shape_Extruder_ProPick.set(addItem(tLastID = 0, "Extruder Shape (Prospector's Pick Head)", "Extruder Shape for making Prospector's Picks", new Object[0])); + DetravItemList.ConfiguredCircuit.set(addItem(tLastID = 1, "Configured Circuit", "", new Object[0])); //DetravItemList.Anvil.set(addItem(tLastID = 1, "Detrav Anvil","",new Object[0])); //addItemBehavior(tLastID,new BahaviourDetravAnvil()); } @@ -35,4 +42,52 @@ public class DetravMetaGeneratedItem01 extends DetravMetaGeneratedItem { public boolean doesShowInCreative(DetravSimpleItems aPrefix, Materials aMaterial, boolean aDoShowAllItems) { return aDoShowAllItems || !aPrefix.name().startsWith("toolHead"); } + + public boolean isConfiguredCircuit(ItemStack aStack) + { + return aStack.getUnlocalizedName().indexOf("gt.detrav.metaitem.01." + (mOffset+1)) == 0; + } + + + + public void addAdditionalToolTips(List aList, ItemStack aStack, EntityPlayer aPlayer) { + int tOffset = aList.size(); + String name = aStack.getUnlocalizedName(); + String num = name.substring("gt.detrav.metaitem.01.".length()); + int meta = Integer.parseInt(num) - mOffset; + switch (meta) { + case 1: { + NBTTagCompound aNBT = aStack.getTagCompound(); + if (aNBT != null) { + NBTTagCompound detravPosition = aNBT.getCompoundTag("DetravPosition"); + if (detravPosition != null) { + tOffset = addToList(tOffset, aList, detravPosition, "Finished", false); + tOffset = addToList(tOffset, aList, detravPosition, "Percent", true); + tOffset = addToList(tOffset, aList, detravPosition, "XCurrent", true); + tOffset = addToList(tOffset, aList, detravPosition, "ZCurrent", true); + tOffset = addToList(tOffset, aList, detravPosition, "XFrom", true); + tOffset = addToList(tOffset, aList, detravPosition, "XTo", true); + tOffset = addToList(tOffset, aList, detravPosition, "ZFrom", true); + tOffset = addToList(tOffset, aList, detravPosition, "ZTo", true); + tOffset = addToList(tOffset, aList, detravPosition, "Configurated", false); + } + } + } + break; + } + } + + public int addToList(int tOffset, List aList, NBTTagCompound tag,String name, boolean integer) { + if (!tag.hasKey(name)) + return tOffset; + if (integer) { + int value = tag.getInteger(name); + aList.add(tOffset, EnumChatFormatting.WHITE + name + " = " + value); + } else { + if (tag.getBoolean(name)) { + aList.add(tOffset, EnumChatFormatting.WHITE + name + EnumChatFormatting.GRAY); + } + } + return tOffset + 1; + } } |