Fix addEatEffect hook

This commit is contained in:
DBotThePony 2025-03-12 20:31:59 +07:00
parent 0424dd1944
commit cfd6b101d8
Signed by: DBot
GPG Key ID: DCC23B5715498507
2 changed files with 4 additions and 3 deletions

View File

@ -29,6 +29,7 @@ import net.minecraft.world.entity.LivingEntity
import net.minecraft.world.entity.boss.wither.WitherBoss import net.minecraft.world.entity.boss.wither.WitherBoss
import net.minecraft.world.entity.player.Inventory import net.minecraft.world.entity.player.Inventory
import net.minecraft.world.entity.player.Player import net.minecraft.world.entity.player.Player
import net.minecraft.world.food.FoodProperties
import net.minecraft.world.item.Item import net.minecraft.world.item.Item
import net.minecraft.world.item.ItemStack import net.minecraft.world.item.ItemStack
import net.minecraft.world.item.ProjectileWeaponItem import net.minecraft.world.item.ProjectileWeaponItem
@ -1521,14 +1522,14 @@ class MatteryPlayer(val ply: Player) {
* hooked into LivingEntity through coremod script * hooked into LivingEntity through coremod script
*/ */
@JvmStatic @JvmStatic
fun addEatEffectHook(iterator: Iterator<com.mojang.datafixers.util.Pair<MobEffectInstance, Float>>, entity: LivingEntity): Iterator<com.mojang.datafixers.util.Pair<MobEffectInstance, Float>> { fun addEatEffectHook(iterator: Iterator<FoodProperties.PossibleEffect>, entity: LivingEntity): Iterator<FoodProperties.PossibleEffect> {
if (entity !is Player) { if (entity !is Player) {
return iterator return iterator
} }
if (entity.matteryPlayer.isAndroid) { if (entity.matteryPlayer.isAndroid) {
return iterator.filter { return iterator.filter {
it.first.effect != MobEffects.HUNGER it.effect().effect != MobEffects.HUNGER
} }
} }

View File

@ -576,7 +576,7 @@ function backtrack(instructions, from, opcode, skipAmount) {
function initializeCoreMod() { function initializeCoreMod() {
return { return {
'LivingEntity#addEatEffect patch for androids': method('net.minecraft.world.entity.LivingEntity.m_21063_(Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;)V', function(node) { 'LivingEntity#addEatEffect patch for androids': method('net.minecraft.world.entity.LivingEntity.addEatEffect(Lnet/minecraft/world/food/FoodProperties;)V', function(node) {
for (var i = 0; i < node.instructions.size(); i++) { for (var i = 0; i < node.instructions.size(); i++) {
var instr = node.instructions.get(i) var instr = node.instructions.get(i)