feat: 假人多次生成bug修复及附魔机制修改

This commit is contained in:
Disy authored and zly2006 committed 2024-07-11 12:14:02 +08:00
1 parent 68c8482eee
commit a3e3fb361f
7 files changed
+55 -25

No files matched your search

@@ -0,0 +1,29 @@
package com.github.zly2006.carpetslsaddition.mixin.screen;
import com.github.zly2006.carpetslsaddition.SLSCarpetSettings;
import net.minecraft.entity.player.PlayerAbilities;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.screen.AnvilScreenHandler;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Redirect;
@Mixin(AnvilScreenHandler.class)
public class MixinAnvilScreenHandler {
@Redirect(
method = "updateResult",
at = @At(
value = "INVOKE",
target = "Lnet/minecraft/entity/player/PlayerEntity;getAbilities()Lnet/minecraft/entity/player/PlayerAbilities;"
)
)
private PlayerAbilities updateResult(PlayerEntity instance) {
if (SLSCarpetSettings.creativeObeyEnchantmentRule) {
var ability = new PlayerAbilities();
ability.creativeMode = false;
return ability;
}
return instance.getAbilities();
}
}