Altered interfaces to take itemstack references, so as to use NBT

This commit is contained in:
Anthony Fiorentini 2012-05-08 14:15:55 -05:00
parent 76a986361e
commit d1a368352e
3 changed files with 30 additions and 26 deletions

View file

@ -1,14 +1,16 @@
package ee3.core.interfaces; package ee3.core.interfaces;
import net.minecraft.src.ItemStack;
public interface IItemChargeable { public interface IItemChargeable {
public abstract byte getCurrentCharge(); public abstract byte getCurrentCharge(ItemStack ist);
public abstract byte getMaxCharge(); public abstract byte getMaxCharge();
public abstract void increaseCharge(); public abstract void increaseCharge(ItemStack ist);
public abstract void decreaseCharge(); public abstract void decreaseCharge(ItemStack ist);
public abstract void setCurrentCharge(byte charge); public abstract void setCurrentCharge(ItemStack ist, byte charge);
} }

View file

@ -1,12 +1,14 @@
package ee3.core.interfaces; package ee3.core.interfaces;
import net.minecraft.src.ItemStack;
public interface IItemModal { public interface IItemModal {
public abstract byte getCurrentMode(); public abstract byte getCurrentMode(ItemStack ist);
public abstract byte getMaxMode(); public abstract byte getMaxMode();
public abstract byte cycleMode(); public abstract byte cycleMode(ItemStack ist);
public abstract void setMode(byte mode); public abstract void setMode(ItemStack ist, byte mode);
} }

View file

@ -23,30 +23,30 @@ public class ItemPhilosopherStone extends ItemEE implements IItemChargeable, IIt
} }
@Override @Override
public void increaseCharge() { public void increaseCharge(ItemStack ist) {
if (currentCharge < maxCharge) if (getCurrentCharge(ist) < getMaxCharge())
currentCharge++; setCurrentCharge(ist, (byte)(getCurrentCharge(ist) + 1));
} }
@Override @Override
public void decreaseCharge() { public void decreaseCharge(ItemStack ist) {
if (currentCharge > 0) if (getCurrentCharge(ist) > 0)
currentCharge--; setCurrentCharge(ist, (byte)(getCurrentCharge(ist) - 1));
} }
@Override @Override
public byte getCurrentCharge() { public byte getCurrentCharge(ItemStack ist) {
return currentCharge; return this.getByte(ist, "currentCharge");
} }
@Override @Override
public void setCurrentCharge(byte charge) { public void setCurrentCharge(ItemStack ist, byte charge) {
currentCharge = charge; this.setByte(ist, "currentCharge", charge);
} }
@Override @Override
public byte getCurrentMode() { public byte getCurrentMode(ItemStack ist) {
return currentMode; return this.getByte(ist, "currentMode");
} }
@Override @Override
@ -55,17 +55,17 @@ public class ItemPhilosopherStone extends ItemEE implements IItemChargeable, IIt
} }
@Override @Override
public byte cycleMode() { public byte cycleMode(ItemStack ist) {
if (currentMode < maxMode) if (getCurrentMode(ist) < getMaxMode())
currentMode += 1; setMode(ist, (byte)(getCurrentMode(ist) + 1));
else else
currentMode = 0; setMode(ist, (byte)0);
return currentMode; return getCurrentMode(ist);
} }
@Override @Override
public void setMode(byte mode) { public void setMode(ItemStack ist, byte mode) {
this.currentMode = mode; this.setByte(ist, "currentMode", mode);
} }
@Override @Override