Merge pull request #8 from OneEyeMaker/ArmorImprovements

Attempt to fix #345
This commit is contained in:
Martin authored and GitHub committed 2016-06-25 11:00:16 +02:00
commit 1f0d2aafe8
8 files changed
+55 -60

No files matched your search

@@ -41,6 +41,7 @@ import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.*;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.potion.Potion;
import net.minecraft.potion.PotionEffect;
import net.minecraft.util.DamageSource;
@@ -257,9 +258,11 @@ public class DraconicArmor
/* IEnergyContainerItem */
@Override
public int receiveEnergy(ItemStack container, int maxReceive, boolean simulate) {
if (container.getTagCompound() == null) {
container.setTagCompound(new NBTTagCompound());
}
int stored = ItemNBTHelper.getInteger(container, "Energy", 0);
int receive = Math.min(maxReceive, Math.min(getMaxEnergyStored(container) - stored, maxTransfer));
if (!simulate) {
stored += receive;
ItemNBTHelper.setInteger(container, "Energy", stored);
@@ -269,10 +272,11 @@ public class DraconicArmor
@Override
public int extractEnergy(ItemStack container, int maxExtract, boolean simulate) {
if (container.getTagCompound() == null) {
container.setTagCompound(new NBTTagCompound());
}
int stored = ItemNBTHelper.getInteger(container, "Energy", 0);
int extract = Math.min(maxExtract, Math.min(maxTransfer, stored));
if (!simulate) {
stored -= extract;
ItemNBTHelper.setInteger(container, "Energy", stored);
@@ -32,6 +32,7 @@ import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.*;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.DamageSource;
import net.minecraft.util.IIcon;
import net.minecraft.util.StatCollector;
@@ -195,9 +196,11 @@ public class WyvernArmor extends ItemArmor implements ISpecialArmor, IConfigurab
/* IEnergyContainerItem */
@Override
public int receiveEnergy(ItemStack container, int maxReceive, boolean simulate) {
if (container.getTagCompound() == null) {
container.setTagCompound(new NBTTagCompound());
}
int stored = ItemNBTHelper.getInteger(container, "Energy", 0);
int receive = Math.min(maxReceive, Math.min(getMaxEnergyStored(container) - stored, maxTransfer));
if (!simulate) {
stored += receive;
ItemNBTHelper.setInteger(container, "Energy", stored);
@@ -207,10 +210,11 @@ public class WyvernArmor extends ItemArmor implements ISpecialArmor, IConfigurab
@Override
public int extractEnergy(ItemStack container, int maxExtract, boolean simulate) {
if (container.getTagCompound() == null) {
container.setTagCompound(new NBTTagCompound());
}
int stored = ItemNBTHelper.getInteger(container, "Energy", 0);
int extract = Math.min(maxExtract, Math.min(maxTransfer, stored));
if (!simulate) {
stored -= extract;
ItemNBTHelper.setInteger(container, "Energy", stored);
@@ -190,32 +190,28 @@ public class DraconicHoe extends ItemHoe implements IEnergyContainerItem, IRende
@Override
public int receiveEnergy(ItemStack container, int maxReceive, boolean simulate) {
if (container.stackTagCompound == null) {
container.stackTagCompound = new NBTTagCompound();
if (container.getTagCompound() == null) {
container.setTagCompound(new NBTTagCompound());
}
int energy = container.stackTagCompound.getInteger("Energy");
int energy = ItemNBTHelper.getInteger(container, "Energy", 0);
int energyReceived = Math.min(getMaxEnergyStored(container) - energy, Math.min(this.maxReceive, maxReceive));
if (!simulate) {
energy += energyReceived;
container.stackTagCompound.setInteger("Energy", energy);
ItemNBTHelper.setInteger(container, "Energy", energy);
}
return energyReceived;
}
@Override
public int extractEnergy(ItemStack container, int maxExtract, boolean simulate) {
if (container.stackTagCompound == null || !container.stackTagCompound.hasKey("Energy")) {
return 0;
if (container.getTagCompound() == null) {
container.setTagCompound(new NBTTagCompound());
}
int energy = container.stackTagCompound.getInteger("Energy");
int energy = ItemNBTHelper.getInteger(container, "Energy", 0);
int energyExtracted = Math.min(energy, Math.min(this.maxExtract, maxExtract));
if (!simulate) {
energy -= energyExtracted;
container.stackTagCompound.setInteger("Energy", energy);
ItemNBTHelper.setInteger(container, "Energy", energy);
}
return energyExtracted;
}
@@ -19,6 +19,7 @@ import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.Entity;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.EnumChatFormatting;
import net.minecraft.util.StatCollector;
import net.minecraft.world.World;
@@ -80,9 +81,11 @@ public class RFItemBase extends ItemDE implements IEnergyContainerItem, IConfigu
@Override
public int receiveEnergy(ItemStack container, int maxReceive, boolean simulate) {
if (container.getTagCompound() == null) {
container.setTagCompound(new NBTTagCompound());
}
int energy = ItemNBTHelper.getInteger(container, "Energy", 0);
int energyReceived = Math.min(getCapacity(container) - energy, Math.min(getMaxReceive(container), maxReceive));
if (!simulate) {
energy += energyReceived;
ItemNBTHelper.setInteger(container, "Energy", energy);
@@ -92,9 +95,11 @@ public class RFItemBase extends ItemDE implements IEnergyContainerItem, IConfigu
@Override
public int extractEnergy(ItemStack container, int maxExtract, boolean simulate) {
if (container.getTagCompound() == null) {
container.setTagCompound(new NBTTagCompound());
}
int energy = ItemNBTHelper.getInteger(container, "Energy", 0);
int energyExtracted = Math.min(energy, Math.min(getMaxExtract(container), maxExtract));
if (!simulate) {
energy -= energyExtracted;
ItemNBTHelper.setInteger(container, "Energy", energy);
@@ -31,6 +31,7 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemBow;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.EnumChatFormatting;
import net.minecraft.util.IIcon;
import net.minecraft.util.StatCollector;
@@ -283,13 +284,11 @@ public class DraconicBow extends ItemBow implements IInventoryTool, IUpgradableI
@Override
public int receiveEnergy(ItemStack container, int maxReceive, boolean simulate) {
if (container.stackTagCompound == null || !container.stackTagCompound.hasKey("Energy")) {
return 0;
if (container.getTagCompound() == null) {
container.setTagCompound(new NBTTagCompound());
}
int energy = ItemNBTHelper.getInteger(container, "Energy", 0);
int energyReceived = Math.min(getMaxEnergyStored(container) - energy, Math.min(this.maxReceive, maxReceive));
if (!simulate) {
energy += energyReceived;
ItemNBTHelper.setInteger(container, "Energy", energy);
@@ -299,13 +298,11 @@ public class DraconicBow extends ItemBow implements IInventoryTool, IUpgradableI
@Override
public int extractEnergy(ItemStack container, int maxExtract, boolean simulate) {
if (container.stackTagCompound == null || !container.stackTagCompound.hasKey("Energy")) {
return 0;
if (container.getTagCompound() == null) {
container.setTagCompound(new NBTTagCompound());
}
int energy = ItemNBTHelper.getInteger(container, "Energy", 0);
int energyExtracted = Math.min(energy, Math.min(this.maxExtract, maxExtract));
if (!simulate) {
energy -= energyExtracted;
ItemNBTHelper.setInteger(container, "Energy", energy);
@@ -111,32 +111,28 @@ public class DraconicSword extends ItemSword implements IEnergyContainerWeaponIt
@Override
public int receiveEnergy(ItemStack container, int maxReceive, boolean simulate) {
if (container.stackTagCompound == null) {
container.stackTagCompound = new NBTTagCompound();
if (container.getTagCompound() == null) {
container.setTagCompound(new NBTTagCompound());
}
int energy = container.stackTagCompound.getInteger("Energy");
int energy = ItemNBTHelper.getInteger(container, "Energy", 0);
int energyReceived = Math.min(getMaxEnergyStored(container) - energy, Math.min(this.maxReceive, maxReceive));
if (!simulate) {
energy += energyReceived;
container.stackTagCompound.setInteger("Energy", energy);
ItemNBTHelper.setInteger(container, "Energy", energy);
}
return energyReceived;
}
@Override
public int extractEnergy(ItemStack container, int maxExtract, boolean simulate) {
if (container.stackTagCompound == null || !container.stackTagCompound.hasKey("Energy")) {
return 0;
if (container.getTagCompound() == null) {
container.setTagCompound(new NBTTagCompound());
}
int energy = container.stackTagCompound.getInteger("Energy");
int energy = ItemNBTHelper.getInteger(container, "Energy", 0);
int energyExtracted = Math.min(energy, Math.min(this.maxExtract, maxExtract));
if (!simulate) {
energy -= energyExtracted;
container.stackTagCompound.setInteger("Energy", energy);
ItemNBTHelper.setInteger(container, "Energy", energy);
}
return energyExtracted;
}
@@ -31,6 +31,7 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemBow;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.EnumChatFormatting;
import net.minecraft.util.IIcon;
import net.minecraft.util.StatCollector;
@@ -281,13 +282,11 @@ public class WyvernBow extends ItemBow implements IInventoryTool, IUpgradableIte
@Override
public int receiveEnergy(ItemStack container, int maxReceive, boolean simulate) {
if (container.stackTagCompound == null || !container.stackTagCompound.hasKey("Energy")) {
return 0;
if (container.getTagCompound() == null) {
container.setTagCompound(new NBTTagCompound());
}
int energy = ItemNBTHelper.getInteger(container, "Energy", 0);
int energyReceived = Math.min(getMaxEnergyStored(container) - energy, Math.min(this.maxReceive, maxReceive));
if (!simulate) {
energy += energyReceived;
ItemNBTHelper.setInteger(container, "Energy", energy);
@@ -297,13 +296,11 @@ public class WyvernBow extends ItemBow implements IInventoryTool, IUpgradableIte
@Override
public int extractEnergy(ItemStack container, int maxExtract, boolean simulate) {
if (container.stackTagCompound == null || !container.stackTagCompound.hasKey("Energy")) {
return 0;
if (container.getTagCompound() == null) {
container.setTagCompound(new NBTTagCompound());
}
int energy = ItemNBTHelper.getInteger(container, "Energy", 0);
int energyExtracted = Math.min(energy, Math.min(this.maxExtract, maxExtract));
if (!simulate) {
energy -= energyExtracted;
ItemNBTHelper.setInteger(container, "Energy", energy);
@@ -119,32 +119,28 @@ public class WyvernSword extends ItemSword implements IEnergyContainerWeaponItem
@Override
public int receiveEnergy(ItemStack container, int maxReceive, boolean simulate) {
if (container.stackTagCompound == null) {
container.stackTagCompound = new NBTTagCompound();
if (container.getTagCompound() == null) {
container.setTagCompound(new NBTTagCompound());
}
int energy = container.stackTagCompound.getInteger("Energy");
int energy = ItemNBTHelper.getInteger(container, "Energy", 0);
int energyReceived = Math.min(getMaxEnergyStored(container) - energy, Math.min(this.maxReceive, maxReceive));
if (!simulate) {
energy += energyReceived;
container.stackTagCompound.setInteger("Energy", energy);
ItemNBTHelper.setInteger(container, "Energy", energy);
}
return energyReceived;
}
@Override
public int extractEnergy(ItemStack container, int maxExtract, boolean simulate) {
if (container.stackTagCompound == null || !container.stackTagCompound.hasKey("Energy")) {
return 0;
if (container.getTagCompound() == null) {
container.setTagCompound(new NBTTagCompound());
}
int energy = container.stackTagCompound.getInteger("Energy");
int energy = ItemNBTHelper.getInteger(container, "Energy", 0);
int energyExtracted = Math.min(energy, Math.min(this.maxExtract, maxExtract));
if (!simulate) {
energy -= energyExtracted;
container.stackTagCompound.setInteger("Energy", energy);
ItemNBTHelper.setInteger(container, "Energy", energy);
}
return energyExtracted;
}