aboutsummaryrefslogtreecommitdiff
path: root/src/Java/miscutil/xmod/ic2/item/IC2_ItemGradualInteger.java
diff options
context:
space:
mode:
authorDraknyte1 <Draknyte1@hotmail.com>2016-08-27 01:34:08 +1000
committerDraknyte1 <Draknyte1@hotmail.com>2016-08-27 01:34:08 +1000
commit072f6322fb789703f163030edf4b60bf5a0201af (patch)
tree9d2d9c2ba6fe3bc5139a9868ee4eca95629fdd95 /src/Java/miscutil/xmod/ic2/item/IC2_ItemGradualInteger.java
parentf555ac2e146e572155e176131c23e73cd74684f1 (diff)
downloadGT5-Unofficial-072f6322fb789703f163030edf4b60bf5a0201af.tar.gz
GT5-Unofficial-072f6322fb789703f163030edf4b60bf5a0201af.tar.bz2
GT5-Unofficial-072f6322fb789703f163030edf4b60bf5a0201af.zip
+ Attempted to add custom IC2 generators.
% Refactored the xmod package to be a parent, beside core. No longer is it a child, it needs room to grow.
Diffstat (limited to 'src/Java/miscutil/xmod/ic2/item/IC2_ItemGradualInteger.java')
-rw-r--r--src/Java/miscutil/xmod/ic2/item/IC2_ItemGradualInteger.java53
1 files changed, 53 insertions, 0 deletions
diff --git a/src/Java/miscutil/xmod/ic2/item/IC2_ItemGradualInteger.java b/src/Java/miscutil/xmod/ic2/item/IC2_ItemGradualInteger.java
new file mode 100644
index 0000000000..28fce8fc6e
--- /dev/null
+++ b/src/Java/miscutil/xmod/ic2/item/IC2_ItemGradualInteger.java
@@ -0,0 +1,53 @@
+package miscutil.xmod.ic2.item;
+
+import ic2.api.item.ICustomDamageItem;
+import ic2.core.util.StackUtil;
+import net.minecraft.entity.EntityLivingBase;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+
+public class IC2_ItemGradualInteger
+ extends IC2_ItemGradual
+ implements ICustomDamageItem
+{
+ private final int maxDmg;
+
+ public IC2_ItemGradualInteger(String internalName, int maxdmg)
+ {
+ super(internalName);
+
+ this.maxDmg = maxdmg;
+ }
+
+ @Override
+public int getCustomDamage(ItemStack stack)
+ {
+ NBTTagCompound nbt = StackUtil.getOrCreateNbtData(stack);
+ return nbt.getInteger("advDmg");
+ }
+
+ @Override
+public int getMaxCustomDamage(ItemStack stack)
+ {
+ return this.maxDmg;
+ }
+
+ @Override
+public void setCustomDamage(ItemStack stack, int damage)
+ {
+ NBTTagCompound nbt = StackUtil.getOrCreateNbtData(stack);
+ nbt.setInteger("advDmg", 0);
+
+ int maxStackDamage = stack.getMaxDamage();
+ if (maxStackDamage > 2) {
+ //stack.setItemDamage(1 + (int)Util.map(damage, this.maxDmg, maxStackDamage - 2));
+ }
+ }
+
+ @Override
+public boolean applyCustomDamage(ItemStack stack, int damage, EntityLivingBase src)
+ {
+ setCustomDamage(stack, getCustomDamage(stack) + damage);
+ return true;
+ }
+}