Fixed juice using the wrong animation

This commit is contained in:
Sollace 2019-01-31 14:28:17 +02:00
parent 22e05bcbb8
commit 206ede0868
2 changed files with 17 additions and 0 deletions

View file

@ -27,6 +27,7 @@ import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.init.Enchantments; import net.minecraft.init.Enchantments;
import net.minecraft.init.Items; import net.minecraft.init.Items;
import net.minecraft.item.EnumAction;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.ItemDoor; import net.minecraft.item.ItemDoor;
import net.minecraft.item.ItemFood; import net.minecraft.item.ItemFood;
@ -163,8 +164,10 @@ public class UItems {
.setContainerItem(mug) .setContainerItem(mug)
.setFull3D(); .setFull3D();
public static final Item juice = new ItemEdible(Unicopia.MODID, "juice", 2, 2, stack -> Toxicity.SAFE) public static final Item juice = new ItemEdible(Unicopia.MODID, "juice", 2, 2, stack -> Toxicity.SAFE)
.setUseAction(EnumAction.DRINK)
.setContainerItem(Items.GLASS_BOTTLE); .setContainerItem(Items.GLASS_BOTTLE);
public static final Item burned_juice = new ItemEdible(Unicopia.MODID, "burned_juice", 3, 1, stack -> Toxicity.FAIR) public static final Item burned_juice = new ItemEdible(Unicopia.MODID, "burned_juice", 3, 1, stack -> Toxicity.FAIR)
.setUseAction(EnumAction.DRINK)
.setContainerItem(Items.GLASS_BOTTLE); .setContainerItem(Items.GLASS_BOTTLE);
static void registerItems(IForgeRegistry<Item> registry) { static void registerItems(IForgeRegistry<Item> registry) {

View file

@ -17,6 +17,7 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.init.MobEffects; import net.minecraft.init.MobEffects;
import net.minecraft.init.SoundEvents; import net.minecraft.init.SoundEvents;
import net.minecraft.item.EnumAction;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.ItemFood; import net.minecraft.item.ItemFood;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
@ -35,6 +36,8 @@ public class ItemEdible extends ItemFood implements IEdible, IMultiItem {
private final IEdible toxicityDeterminant; private final IEdible toxicityDeterminant;
private EnumAction useAction = EnumAction.EAT;
public ItemEdible(@Nonnull IEdible mapper) { public ItemEdible(@Nonnull IEdible mapper) {
super(1, 0, false); super(1, 0, false);
@ -52,9 +55,20 @@ public class ItemEdible extends ItemFood implements IEdible, IMultiItem {
public Item setTranslationKey(String key) { public Item setTranslationKey(String key) {
translationKey = key; translationKey = key;
return super.setTranslationKey(key); return super.setTranslationKey(key);
} }
public Item setUseAction(EnumAction action) {
useAction = action;
return this;
}
public EnumAction getItemUseAction(ItemStack stack) {
return useAction;
}
protected void onFoodEaten(ItemStack stack, World worldIn, EntityPlayer player) { protected void onFoodEaten(ItemStack stack, World worldIn, EntityPlayer player) {
Race race = PlayerSpeciesList.instance().getPlayer(player).getPlayerSpecies(); Race race = PlayerSpeciesList.instance().getPlayer(player).getPlayerSpecies();
Toxicity toxicity = (race.isDefault() || race == Race.CHANGELING) ? Toxicity.LETHAL : getToxicityLevel(stack); Toxicity toxicity = (race.isDefault() || race == Race.CHANGELING) ? Toxicity.LETHAL : getToxicityLevel(stack);