package net.scapeemulator.game.model.player.skills.runecrafting;
import net.scapeemulator.game.model.player.Player;
import net.scapeemulator.game.model.player.PlayerVariables.Variable;
public enum RCPouch {
SMALL(5509, 3, -1, Variable.SMALL_POUCH),
MEDIUM(5510, 6, 45, Variable.MEDIUM_POUCH),
LARGE(5512, 9, 29, Variable.LARGE_POUCH),
GIANT(5514, 12, 10, Variable.GIANT_POUCH);
private final int itemId;
private final int essHeld;
private final int usesPerDecay;
private final Variable playerVar;
private RCPouch(int itemId, int essHeld, int usesPerDecay, Variable playerVar) {
this.itemId = itemId;
this.essHeld = essHeld;
this.usesPerDecay = usesPerDecay;
this.playerVar = playerVar;
}
public static RCPouch forItemId(int itemId) {
for (RCPouch pouch : values()) {
if (pouch.itemId == itemId || pouch.getDecayedId() == itemId) {
return pouch;
}
}
return null;
}
public int getAmountInPouch(Player player) {
int var = player.getVariables().getVar(playerVar);
return var & 0xFF;
}
public void setAmountInPouch(Player player, int amount) {
int var = player.getVariables().getVar(playerVar);
var = var & 0xFFFFFF00;
}
public int getItemId() {
return itemId;
}
public int getDecayedId() {
if (this == SMALL) {
return itemId;
}
return itemId + 1;
}
public int getMaxEssenceHeld() {
return essHeld;
}
public int getUsesPerDecay() {
return usesPerDecay;
}
}