diff options
author | Draknyte1 <Draknyte1@hotmail.com> | 2017-08-12 19:45:05 +1000 |
---|---|---|
committer | Draknyte1 <Draknyte1@hotmail.com> | 2017-08-12 19:45:05 +1000 |
commit | f31a88106ed54dc271f8eec50e3fe996e01bbcb3 (patch) | |
tree | bf0bba82f1a2b4ee46fe951772ae7c305253a978 /src/Java/gtPlusPlus/core/item | |
parent | c4a21ba699d52d2dc13f01ccc5dde22120f619c6 (diff) | |
download | GT5-Unofficial-f31a88106ed54dc271f8eec50e3fe996e01bbcb3.tar.gz GT5-Unofficial-f31a88106ed54dc271f8eec50e3fe996e01bbcb3.tar.bz2 GT5-Unofficial-f31a88106ed54dc271f8eec50e3fe996e01bbcb3.zip |
+ Added a config option for the Thermal Boiler.
+ Added the Lava Filter.
+ Added Thermal Boiler Casing.
+ Added Recipes for the Thermal Boiler controller and casing block.
Diffstat (limited to 'src/Java/gtPlusPlus/core/item')
-rw-r--r-- | src/Java/gtPlusPlus/core/item/ModItems.java | 3 | ||||
-rw-r--r-- | src/Java/gtPlusPlus/core/item/general/ItemLavaFilter.java | 122 |
2 files changed, 125 insertions, 0 deletions
diff --git a/src/Java/gtPlusPlus/core/item/ModItems.java b/src/Java/gtPlusPlus/core/item/ModItems.java index 32ca2ec023..3a242ea10b 100644 --- a/src/Java/gtPlusPlus/core/item/ModItems.java +++ b/src/Java/gtPlusPlus/core/item/ModItems.java @@ -212,6 +212,7 @@ public final class ModItems { public static itemDehydratorCoilWire itemDehydratorCoilWire; public static itemDehydratorCoil itemDehydratorCoil; + public static Item itemLavaFilter; public static Item itemAirFilter; public static Item itemCoalCoke; @@ -219,6 +220,7 @@ public final class ModItems { + public static final void init(){ //Default item used when recipes fail, handy for debugging. @@ -569,6 +571,7 @@ public final class ModItems { itemDehydratorCoil = new itemDehydratorCoil(); itemAirFilter = new ItemAirFilter(); + itemLavaFilter = new ItemLavaFilter(); //Chemistry CoalTar.run(); diff --git a/src/Java/gtPlusPlus/core/item/general/ItemLavaFilter.java b/src/Java/gtPlusPlus/core/item/general/ItemLavaFilter.java new file mode 100644 index 0000000000..07fe4748b0 --- /dev/null +++ b/src/Java/gtPlusPlus/core/item/general/ItemLavaFilter.java @@ -0,0 +1,122 @@ +package gtPlusPlus.core.item.general; + +import java.util.List; + +import gregtech.api.enums.ItemList; +import gtPlusPlus.core.creative.AddToCreativeTab; +import gtPlusPlus.core.item.base.CoreItem; +import gtPlusPlus.core.lib.CORE; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.EnumRarity; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.util.EnumChatFormatting; +import net.minecraft.util.IIcon; + +public class ItemLavaFilter extends CoreItem { + + public IIcon[] mIcon = new IIcon[1]; + + public ItemLavaFilter() { + super("itemLavaFilter", AddToCreativeTab.tabMachines, 1, 100, "Lava Filter", EnumRarity.common, + EnumChatFormatting.BLACK, false, null); + setGregtechItemList(); + } + + private final boolean setGregtechItemList() { + ItemList.Component_LavaFilter.set(this); + return ItemList.Component_LavaFilter.get(1) != null ? true : false; + } + + @Override + public void registerIcons(IIconRegister reg) { + this.mIcon[0] = reg.registerIcon(CORE.MODID + ":" + "itemLavaFilter"); + } + + @Override + public IIcon getIconFromDamage(int meta) { + return this.mIcon[0]; + } + + @Override + public String getItemStackDisplayName(ItemStack tItem) { + return "Lava Filter"; + } + + private static boolean createNBT(ItemStack rStack){ + final NBTTagCompound tagMain = new NBTTagCompound(); + final NBTTagCompound tagNBT = new NBTTagCompound(); + tagNBT.setLong("Damage", 0); + tagMain.setTag("LavaFilter", tagNBT); + rStack.setTagCompound(tagMain); + return true; + } + + public static final long getFilterDamage(final ItemStack aStack) { + NBTTagCompound aNBT = aStack.getTagCompound(); + if (aNBT != null) { + aNBT = aNBT.getCompoundTag("LavaFilter"); + if (aNBT != null) { + return aNBT.getLong("Damage"); + } + } + else { + createNBT(aStack); + } + return 0L; + } + + public static final boolean setFilterDamage(final ItemStack aStack, final long aDamage) { + NBTTagCompound aNBT = aStack.getTagCompound(); + if (aNBT != null) { + aNBT = aNBT.getCompoundTag("LavaFilter"); + if (aNBT != null) { + aNBT.setLong("Damage", aDamage); + return true; + } + } + return false; + } + + @Override + public double getDurabilityForDisplay(ItemStack stack) { + if (stack.getTagCompound() == null){ + createNBT(stack); + } + double currentDamage = getFilterDamage(stack); + double durabilitypercent = currentDamage / 100; + return durabilitypercent; + } + + @SuppressWarnings("unchecked") + @Override + public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean bool) { + list.add(EnumChatFormatting.GRAY+"Filters Lava within a Thermal Boiler."); + EnumChatFormatting durability = EnumChatFormatting.GRAY; + if (100-getFilterDamage(stack) > 80){ + durability = EnumChatFormatting.GRAY; + } + else if (100-getFilterDamage(stack) > 60){ + durability = EnumChatFormatting.GREEN; + } + else if (100-getFilterDamage(stack) > 40){ + durability = EnumChatFormatting.YELLOW; + } + else if (100-getFilterDamage(stack) > 20){ + durability = EnumChatFormatting.GOLD; + } + else if (100-getFilterDamage(stack) > 0){ + durability = EnumChatFormatting.RED; + } + list.add(durability+""+(100-getFilterDamage(stack))+EnumChatFormatting.GRAY+" / "+100); + super.addInformation(stack, player, list, bool); + } + + @Override + public boolean showDurabilityBar(ItemStack stack) { + return true; + } + + +} |