package joshie.harvest.core.achievements; import joshie.harvest.core.helpers.InventoryHelper; import joshie.harvest.core.util.annotations.HFEvents; import joshie.harvest.crops.HFCrops; import joshie.harvest.mining.HFMining; import joshie.harvest.mining.item.ItemMaterial.Material; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; import net.minecraftforge.fml.common.gameevent.PlayerEvent; import net.minecraftforge.fml.common.gameevent.PlayerEvent.PlayerChangedDimensionEvent; @HFEvents @SuppressWarnings("unused") public class AchievementEvents { @SubscribeEvent public void onItemPickup(PlayerEvent.ItemPickupEvent event) { ItemStack stack = event.pickedUp.getEntityItem(); EntityPlayer player = event.player; if (InventoryHelper.ITEM_STACK.matches(stack, HFCrops.ONION.getCropStack(1))) { player.addStat(HFAchievements.onion); } else if (InventoryHelper.ITEM_STACK.matches(stack, HFCrops.TURNIP.getCropStack(1))) { player.addStat(HFAchievements.harvest); } else if (InventoryHelper.ITEM_STACK.matches(stack, HFCrops.SPINACH.getCropStack(1))) { player.addStat(HFAchievements.spinach); } else if (InventoryHelper.ITEM_STACK.matches(stack, HFMining.MATERIALS.getStackFromEnum(Material.JUNK))) { player.addStat(HFAchievements.junk); } else if (InventoryHelper.ITEM_STACK.matches(stack, HFMining.MATERIALS.getStackFromEnum(Material.COPPER))) { player.addStat(HFAchievements.copper); } else if (InventoryHelper.ITEM_STACK.matches(stack, HFMining.MATERIALS.getStackFromEnum(Material.SILVER))) { player.addStat(HFAchievements.silver); } else if (InventoryHelper.ITEM_STACK.matches(stack, HFMining.MATERIALS.getStackFromEnum(Material.GOLD))) { player.addStat(HFAchievements.gold); } else if (InventoryHelper.ITEM_STACK.matches(stack, HFMining.MATERIALS.getStackFromEnum(Material.MYSTRIL))) { player.addStat(HFAchievements.mystril); } } @SubscribeEvent public void onDeath(PlayerChangedDimensionEvent event) { if (event.toDim == HFMining.MINING_ID) { event.player.addStat(HFAchievements.theMine); } } }