diff --git a/src/main/java/com/linearpast/sccore/animation/AnimationUtils.java b/src/main/java/com/linearpast/sccore/animation/AnimationUtils.java index 3a15218..f984980 100644 --- a/src/main/java/com/linearpast/sccore/animation/AnimationUtils.java +++ b/src/main/java/com/linearpast/sccore/animation/AnimationUtils.java @@ -27,6 +27,7 @@ import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.player.Player; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; +import net.minecraftforge.common.util.FakePlayer; import net.minecraftforge.eventbus.api.IEventBus; import org.jetbrains.annotations.Nullable; @@ -71,6 +72,7 @@ public class AnimationUtils { return ANIMATION_RUNNER.testLoadedAndCall(() -> { if(isAnimationLayerPresent(layer) && (animation == null || isAnimationPresent(animation))) { if(player instanceof ServerPlayer serverPlayer) { + if(serverPlayer instanceof FakePlayer) return false; return AnimationPlayer.serverPlayAnimation(serverPlayer, layer, animation); }else if(player == null || player instanceof AbstractClientPlayer) { AnimationPlayer.requestAnimationToServer((AbstractClientPlayer) player, layer, animation); @@ -119,10 +121,10 @@ public class AnimationUtils { Animation anim = AnimationUtils.getAnimation(animation); if(anim != null && anim.getRide() == null) return false; if(serverPlayer != null) { + if(serverPlayer instanceof FakePlayer) return false; if(serverPlayer.getVehicle() != null && force) serverPlayer.unRide(); else if(serverPlayer.getVehicle() != null) return false; return AnimationPlayer.playAnimationWithRide(serverPlayer, layer, animation, true); - } else { AnimationPlayer.requestAnimationRideToServer(layer, animation, force); return true; diff --git a/src/main/java/com/linearpast/sccore/mixin/animation/MixinEntity.java b/src/main/java/com/linearpast/sccore/mixin/animation/MixinEntity.java index 8f197fa..66005d0 100644 --- a/src/main/java/com/linearpast/sccore/mixin/animation/MixinEntity.java +++ b/src/main/java/com/linearpast/sccore/mixin/animation/MixinEntity.java @@ -18,9 +18,6 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; @Mixin(Entity.class) public abstract class MixinEntity { - @Shadow - private float eyeHeight; - @Shadow public abstract float getEyeHeight(Pose pPose); @Shadow private AABB bb; @@ -46,8 +43,7 @@ public abstract class MixinEntity { camYModifier = Math.min(camYModifier, animationCamY); } if(camYModifier != null){ - this.eyeHeight = this.getEyeHeight(Pose.STANDING) + camYModifier; - cir.setReturnValue(this.eyeHeight); + cir.setReturnValue(this.getEyeHeight(Pose.STANDING) + camYModifier); } } }