diff --git a/src/main/java/magicbees/tileentity/TileEntityApimancersDrainerCommon.java b/src/main/java/magicbees/tileentity/TileEntityApimancersDrainerCommon.java index 7e2f73d..e524908 100644 --- a/src/main/java/magicbees/tileentity/TileEntityApimancersDrainerCommon.java +++ b/src/main/java/magicbees/tileentity/TileEntityApimancersDrainerCommon.java @@ -159,7 +159,7 @@ public class TileEntityApimancersDrainerCommon extends TileEntity this.worldObj.markBlockForUpdate(this.xCoord, this.yCoord, this.zCoord); } if (this.essentia.getAmount(tag) >= amount) { - this.essentia.reduce(tag, amount); + this.essentia.remove(tag, amount); return true; } return false; @@ -177,7 +177,7 @@ public class TileEntityApimancersDrainerCommon extends TileEntity } if (hasIt) { for (Aspect next : ot.aspects.keySet()) { - essentia.reduce(next, ot.getAmount(next)); + essentia.remove(next, ot.getAmount(next)); } return true; } @@ -224,12 +224,10 @@ public class TileEntityApimancersDrainerCommon extends TileEntity if (!this.worldObj.isRemote) { this.worldObj.markBlockForUpdate(this.xCoord, this.yCoord, this.zCoord); } - if (amount > this.essentia.getAmount(aspect)) { - int total = this.essentia.getAmount(aspect); - this.essentia.reduce(aspect, total); - return total; - } - this.essentia.reduce(aspect, amount); + + int total = this.essentia.getAmount(aspect); + this.essentia.remove(aspect, amount); // if amount >= total then it will also remove aspect. + if (amount > total) return total; return amount; } return 0;