package com.minelittlepony.unicopia.edibles; import net.minecraft.block.BlockDoublePlant; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.MobEffects; import net.minecraft.item.ItemStack; import net.minecraft.potion.PotionEffect; import static net.minecraft.block.BlockDoublePlant.EnumPlantType.*; public class BushToxicityDeterminent implements IEdible { BlockDoublePlant.EnumPlantType getType(ItemStack stack) { return byMetadata(stack.getMetadata()); } @Override public Toxicity getToxicityLevel(ItemStack stack) { switch (getType(stack)) { case SUNFLOWER: case GRASS: return Toxicity.SAFE; case PAEONIA: case SYRINGA: return Toxicity.FAIR; case FERN: case ROSE: return Toxicity.SEVERE; default: return Toxicity.SAFE; } } @Override public void addSecondaryEffects(EntityPlayer player, Toxicity toxicity, ItemStack stack) { BlockDoublePlant.EnumPlantType type = getType(stack); if ((type == ROSE || type == FERN) && player.world.rand.nextInt(30) == 0) { player.addPotionEffect(new PotionEffect(MobEffects.INSTANT_DAMAGE, 1, 1, false, false)); } if (type == GRASS) { player.addPotionEffect(new PotionEffect(MobEffects.NAUSEA, 30, 1, false, false)); } if (type == FERN) { player.addPotionEffect(new PotionEffect(MobEffects.STRENGTH, 30, 1, false, false)); } } }