From 8ed1400673ee6148209e71ff0536ebbd93b71c89 Mon Sep 17 00:00:00 2001 From: WakelessSloth56 Date: Wed, 28 Sep 2022 21:33:53 +0800 Subject: [PATCH] refactor(next): remove LivingEatEvent --- .../common/event/AHCommonEventFactory.java | 9 ---- .../common/event/impl/LivingEatEvent.java | 46 ------------------- .../arnicalib/mixin/common/MixinFoodData.java | 36 --------------- src/main/resources/arnicalib.mixin.json | 1 - 4 files changed, 92 deletions(-) delete mode 100644 src/main/java/org/auioc/mcmod/arnicalib/common/event/impl/LivingEatEvent.java delete mode 100644 src/main/java/org/auioc/mcmod/arnicalib/mixin/common/MixinFoodData.java diff --git a/src/main/java/org/auioc/mcmod/arnicalib/common/event/AHCommonEventFactory.java b/src/main/java/org/auioc/mcmod/arnicalib/common/event/AHCommonEventFactory.java index 2be4cabe..b89a1e3e 100644 --- a/src/main/java/org/auioc/mcmod/arnicalib/common/event/AHCommonEventFactory.java +++ b/src/main/java/org/auioc/mcmod/arnicalib/common/event/AHCommonEventFactory.java @@ -1,13 +1,10 @@ package org.auioc.mcmod.arnicalib.common.event; import org.auioc.mcmod.arnicalib.common.event.impl.ItemInventoryTickEvent; -import org.auioc.mcmod.arnicalib.common.event.impl.LivingEatEvent; import org.auioc.mcmod.arnicalib.common.event.impl.PistonCheckPushableEvent; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.player.Player; -import net.minecraft.world.food.FoodData; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.state.BlockState; @@ -31,10 +28,4 @@ public static boolean onSelectedItemItemInventoryTick(Player player, Level level return BUS.post(new ItemInventoryTickEvent.Selected(player, level, itemStack, index)); } - public static LivingEatEvent onLivingEat(LivingEntity living, FoodData foodData, ItemStack foodItemStack) { - var event = new LivingEatEvent(living, foodData, foodItemStack); - BUS.post(event); - return event; - } - } diff --git a/src/main/java/org/auioc/mcmod/arnicalib/common/event/impl/LivingEatEvent.java b/src/main/java/org/auioc/mcmod/arnicalib/common/event/impl/LivingEatEvent.java deleted file mode 100644 index c4175608..00000000 --- a/src/main/java/org/auioc/mcmod/arnicalib/common/event/impl/LivingEatEvent.java +++ /dev/null @@ -1,46 +0,0 @@ -package org.auioc.mcmod.arnicalib.common.event.impl; - -import org.auioc.mcmod.arnicalib.game.event.FoodDataEvent; -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.food.FoodData; -import net.minecraft.world.item.ItemStack; -import net.minecraftforge.eventbus.api.Cancelable; - -@Cancelable -public class LivingEatEvent extends FoodDataEvent { - - private final ItemStack foodItemStack; - private int nutrition = 0; - private float saturationModifier = 0.0F; - - public LivingEatEvent(LivingEntity living, FoodData foodData, ItemStack foodItemStack) { - super(living, foodData); - this.foodItemStack = foodItemStack; - if (foodItemStack.isEdible()) { - var foodProperties = foodItemStack.getFoodProperties(living); - this.nutrition = foodProperties.getNutrition(); - this.saturationModifier = foodProperties.getSaturationModifier(); - } - } - - public ItemStack getFoodItemStack() { - return this.foodItemStack; - } - - public int getNutrition() { - return this.nutrition; - } - - public float getSaturationModifier() { - return this.saturationModifier; - } - - public void setNutrition(int nutrition) { - this.nutrition = nutrition; - } - - public void setSaturationModifier(float saturationModifier) { - this.saturationModifier = saturationModifier; - } - -} diff --git a/src/main/java/org/auioc/mcmod/arnicalib/mixin/common/MixinFoodData.java b/src/main/java/org/auioc/mcmod/arnicalib/mixin/common/MixinFoodData.java deleted file mode 100644 index 514ee53d..00000000 --- a/src/main/java/org/auioc/mcmod/arnicalib/mixin/common/MixinFoodData.java +++ /dev/null @@ -1,36 +0,0 @@ -package org.auioc.mcmod.arnicalib.mixin.common; - -import javax.annotation.Nullable; -import org.auioc.mcmod.arnicalib.common.event.AHCommonEventFactory; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; -import org.spongepowered.asm.mixin.Shadow; -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.food.FoodData; -import net.minecraft.world.item.Item; -import net.minecraft.world.item.ItemStack; - -@Mixin(value = FoodData.class) -public abstract class MixinFoodData { - - - /** - * @author WakelessSloth56 - * @reason {@link org.auioc.mcmod.arnicalib.common.event.impl.LivingEatEvent} - */ - @Overwrite(remap = false) - public void eat(Item p_38713_, ItemStack p_38714_, @Nullable LivingEntity entity) { - var event = AHCommonEventFactory.onLivingEat(entity, ((FoodData) (Object) this), p_38714_); - if (!event.isCanceled()) { - int nutrition = event.getNutrition(); - float saturationModifier = event.getSaturationModifier(); - if (nutrition != 0 || saturationModifier != 0.0F) { - this.eat(nutrition, saturationModifier); - } - } - } - - @Shadow - protected abstract void eat(int p_38708_, float p_38709_); - -} diff --git a/src/main/resources/arnicalib.mixin.json b/src/main/resources/arnicalib.mixin.json index 7fdce4fe..b4720b14 100644 --- a/src/main/resources/arnicalib.mixin.json +++ b/src/main/resources/arnicalib.mixin.json @@ -9,7 +9,6 @@ "common.MixinItemStack", "common.MixinProjectile", "common.MixinArrow", - "common.MixinFoodData", "common.MixinEnchantment", "server.MixinServerLifecycleHooks", "server.MixinLootContext",