From cd6f6f42c7eb4d8088c9e0d1bdcf2bf486ba3e94 Mon Sep 17 00:00:00 2001 From: Aaron <51387595+AzureAaron@users.noreply.github.com> Date: Mon, 21 Oct 2024 01:17:43 -0400 Subject: Refactor Entity Mixin --- src/main/java/de/hysky/skyblocker/mixins/EntityMixin.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'src/main/java') diff --git a/src/main/java/de/hysky/skyblocker/mixins/EntityMixin.java b/src/main/java/de/hysky/skyblocker/mixins/EntityMixin.java index 9f8701c1..38ff016b 100644 --- a/src/main/java/de/hysky/skyblocker/mixins/EntityMixin.java +++ b/src/main/java/de/hysky/skyblocker/mixins/EntityMixin.java @@ -10,8 +10,8 @@ import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import com.llamalad7.mixinextras.injector.ModifyExpressionValue; @Mixin(Entity.class) public abstract class EntityMixin { @@ -22,8 +22,8 @@ public abstract class EntityMixin { @Shadow public abstract boolean isInvisible(); - @Inject(method = "isInvisibleTo", at = @At("HEAD"), cancellable = true) - public void skyblocker$showInvisibleArmorStands(PlayerEntity player, CallbackInfoReturnable cir) { - if (isInvisible() && Utils.isOnHypixel() && Debug.debugEnabled() && SkyblockerConfigManager.get().debug.showInvisibleArmorStands && type.equals(EntityType.ARMOR_STAND)) cir.setReturnValue(false); + @ModifyExpressionValue(method = "isInvisibleTo", at = @At(value = "INVOKE", target = "Lnet/minecraft/entity/player/PlayerEntity;isSpectator()Z")) + public boolean skyblocker$showInvisibleArmorStands(boolean isSpectator, PlayerEntity player) { + return isSpectator || (isInvisible() && Utils.isOnHypixel() && Debug.debugEnabled() && SkyblockerConfigManager.get().debug.showInvisibleArmorStands && type.equals(EntityType.ARMOR_STAND)); } } -- cgit