aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/core/item
diff options
context:
space:
mode:
authorDraknyte1 <Draknyte1@hotmail.com>2017-08-12 19:45:05 +1000
committerDraknyte1 <Draknyte1@hotmail.com>2017-08-12 19:45:05 +1000
commitf31a88106ed54dc271f8eec50e3fe996e01bbcb3 (patch)
treebf0bba82f1a2b4ee46fe951772ae7c305253a978 /src/Java/gtPlusPlus/core/item
parentc4a21ba699d52d2dc13f01ccc5dde22120f619c6 (diff)
downloadGT5-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.java3
-rw-r--r--src/Java/gtPlusPlus/core/item/general/ItemLavaFilter.java122
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;
+ }
+
+
+}