diff --git a/src/main/java/com/atsuishio/superbwarfare/mixins/CameraMixin.java b/src/main/java/com/atsuishio/superbwarfare/mixins/CameraMixin.java index 4e6d4cf95..034de5eb2 100644 --- a/src/main/java/com/atsuishio/superbwarfare/mixins/CameraMixin.java +++ b/src/main/java/com/atsuishio/superbwarfare/mixins/CameraMixin.java @@ -144,8 +144,7 @@ public abstract class CameraMixin { } @Inject(method = "setup", at = @At("TAIL")) - public void ia$setup(BlockGetter area, Entity entity, boolean thirdPerson, boolean inverseView, float tickDelta, CallbackInfo ci) { - + public void superbWarfare$setup(BlockGetter area, Entity entity, boolean thirdPerson, boolean inverseView, float tickDelta, CallbackInfo ci) { if (Minecraft.getInstance().options.getCameraType() == CameraType.THIRD_PERSON_BACK && entity instanceof Player player && player.getMainHandItem().is(ModTags.Items.GUN) && zoom) { move(-getMaxZoom(-2.9 * Math.max(ClientEventHandler.pullPos, ClientEventHandler.zoomPos)), 0, -ClientEventHandler.cameraLocation * Math.max(ClientEventHandler.pullPos, ClientEventHandler.zoomPos)); return; diff --git a/src/main/java/com/atsuishio/superbwarfare/mixins/GameRendererMixin.java b/src/main/java/com/atsuishio/superbwarfare/mixins/GameRendererMixin.java index 2e482a975..d16559114 100644 --- a/src/main/java/com/atsuishio/superbwarfare/mixins/GameRendererMixin.java +++ b/src/main/java/com/atsuishio/superbwarfare/mixins/GameRendererMixin.java @@ -37,20 +37,18 @@ public class GameRendererMixin { } // From Immersive_Aircraft - @Shadow @Final private Camera mainCamera; + @SuppressWarnings("ConstantValue") @Inject(method = "renderLevel", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/Camera;setup(Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/entity/Entity;ZZF)V")) - public void immersiveAircraft$renderWorld(float tickDelta, long limitTime, PoseStack matrices, CallbackInfo ci) { + public void superbWarfare$renderWorld(float tickDelta, long limitTime, PoseStack matrices, CallbackInfo ci) { Entity entity = mainCamera.getEntity(); - //noinspection ConstantValue + if (entity != null && !mainCamera.isDetached() && entity.getRootVehicle() instanceof Ah6Entity vehicle) { // rotate camera - matrices.mulPose(Axis.ZP.rotationDegrees(vehicle.getRoll(tickDelta))); -// matrices.mulPose(Axis.XP.rotationDegrees(vehicle.getViewXRot(tickDelta))); // fetch eye offset float eye = entity.getEyeHeight(); @@ -73,9 +71,7 @@ public class GameRendererMixin { if (entity != null && !mainCamera.isDetached() && entity.getRootVehicle() instanceof Tom6Entity vehicle) { // rotate camera - matrices.mulPose(Axis.ZP.rotationDegrees(vehicle.getRoll(tickDelta))); -// matrices.mulPose(Axis.XP.rotationDegrees(vehicle.getViewXRot(tickDelta))); // fetch eye offset float eye = entity.getEyeHeight(); diff --git a/src/main/java/com/atsuishio/superbwarfare/mixins/LivingEntityRendererMixin.java b/src/main/java/com/atsuishio/superbwarfare/mixins/LivingEntityRendererMixin.java index f96943b9c..c7465d066 100644 --- a/src/main/java/com/atsuishio/superbwarfare/mixins/LivingEntityRendererMixin.java +++ b/src/main/java/com/atsuishio/superbwarfare/mixins/LivingEntityRendererMixin.java @@ -14,6 +14,7 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; // From Immersive_Aircraft @Mixin(LivingEntityRenderer.class) public class LivingEntityRendererMixin { + @Inject(method = "setupRotations", at = @At("TAIL")) public void render(T entity, PoseStack matrices, float animationProgress, float bodyYaw, float tickDelta, CallbackInfo ci) { if (entity.getRootVehicle() != entity && entity.getRootVehicle() instanceof Ah6Entity ah6Entity) { diff --git a/src/main/java/com/atsuishio/superbwarfare/mixins/PlayerEntityMixin.java b/src/main/java/com/atsuishio/superbwarfare/mixins/PlayerMixin.java similarity index 91% rename from src/main/java/com/atsuishio/superbwarfare/mixins/PlayerEntityMixin.java rename to src/main/java/com/atsuishio/superbwarfare/mixins/PlayerMixin.java index 28f555c73..bfecb0c37 100644 --- a/src/main/java/com/atsuishio/superbwarfare/mixins/PlayerEntityMixin.java +++ b/src/main/java/com/atsuishio/superbwarfare/mixins/PlayerMixin.java @@ -16,9 +16,9 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; * Code based on @Luke100000's ImmersiveAircraft */ @Mixin(value = Player.class, priority = 1145) -public abstract class PlayerEntityMixin extends Entity { +public abstract class PlayerMixin extends Entity { - public PlayerEntityMixin(EntityType type, Level world) { + public PlayerMixin(EntityType type, Level world) { super(type, world); } diff --git a/src/main/resources/mixins.superbwarfare.json b/src/main/resources/mixins.superbwarfare.json index 0dd1b5f64..a7b31f989 100644 --- a/src/main/resources/mixins.superbwarfare.json +++ b/src/main/resources/mixins.superbwarfare.json @@ -8,7 +8,7 @@ "ClientboundSetPassengersPacketMixin", "ExplosionMixin", "LivingEntityMixin", - "PlayerEntityMixin" + "PlayerMixin" ], "client": [ "CameraMixin",