diff options
author | Draknyte1 <Draknyte1@hotmail.com> | 2016-08-27 01:34:08 +1000 |
---|---|---|
committer | Draknyte1 <Draknyte1@hotmail.com> | 2016-08-27 01:34:08 +1000 |
commit | 072f6322fb789703f163030edf4b60bf5a0201af (patch) | |
tree | 9d2d9c2ba6fe3bc5139a9868ee4eca95629fdd95 /src/Java/miscutil/xmod/ic2/item/IC2_ItemGradualInteger.java | |
parent | f555ac2e146e572155e176131c23e73cd74684f1 (diff) | |
download | GT5-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.java | 53 |
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; + } +} |