package joshie.harvest.shops.purchasable;
import joshie.harvest.animals.item.ItemAnimalProduct.Sizeable;
import joshie.harvest.api.shops.IRequirement;
import joshie.harvest.core.helpers.SpawnItemHelper;
import joshie.harvest.core.helpers.StackHelper;
import joshie.harvest.shops.requirement.RequirementSizeable;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
public class PurchasableTrade extends PurchasableMaterials {
private RequirementSizeable requirement;
private ItemStack purchased;
private ItemStack large;
private ItemStack medium;
private ItemStack small;
public static int ticker;
public PurchasableTrade(ItemStack stack, Sizeable sizeable) {
super(0, stack);
this.requirement = new RequirementSizeable(this, sizeable);
this.requirements = new IRequirement[] { requirement };
this.large = StackHelper.toStack(stack, 3);
this.medium = StackHelper.toStack(stack, 2);
this.small = StackHelper.toStack(stack, 1);
}
@Override
public ItemStack getDisplayStack() {
ticker++;
int num = ticker %1800;
if (num < 600) return small;
else if (num < 1200) return medium;
else return large;
}
@Override
protected ItemStack getPurchasedStack() {
return purchased;
}
@Override
public void onPurchased(EntityPlayer player) {
purchased = this.stack.copy();
int amount = requirement.getPurchased(player);
if (amount != 0) {
purchased.stackSize = amount;
SpawnItemHelper.addToPlayerInventory(player, purchased);
}
}
}