Search in sources :

Example 1 with ICamera

use of mathax.client.mixininterface.ICamera in project Client by MatHax.

the class MouseMixin method updateMouseChangeLookDirection.

@Redirect(method = "updateMouse", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/network/ClientPlayerEntity;changeLookDirection(DD)V"))
private void updateMouseChangeLookDirection(ClientPlayerEntity player, double cursorDeltaX, double cursorDeltaY) {
    Freecam freecam = Modules.get().get(Freecam.class);
    FreeLook freeLook = Modules.get().get(FreeLook.class);
    if (freecam.isActive())
        freecam.changeLookDirection(cursorDeltaX * 0.15, cursorDeltaY * 0.15);
    else if (Modules.get().isActive(HighwayBuilder.class)) {
        Camera camera = client.gameRenderer.getCamera();
        ((ICamera) camera).setRot(camera.getYaw() + cursorDeltaX * 0.15, camera.getPitch() + cursorDeltaY * 0.15);
    } else if (freeLook.cameraMode()) {
        freeLook.cameraYaw += cursorDeltaX / freeLook.sensitivity.get().floatValue();
        freeLook.cameraPitch += cursorDeltaY / freeLook.sensitivity.get().floatValue();
        if (Math.abs(freeLook.cameraPitch) > 90.0F)
            freeLook.cameraPitch = freeLook.cameraPitch > 0.0F ? 90.0F : -90.0F;
    } else
        player.changeLookDirection(cursorDeltaX, cursorDeltaY);
}
Also used : HighwayBuilder(mathax.client.systems.modules.world.HighwayBuilder) Freecam(mathax.client.systems.modules.render.Freecam) ICamera(mathax.client.mixininterface.ICamera) Camera(net.minecraft.client.render.Camera) FreeLook(mathax.client.systems.modules.render.FreeLook) Redirect(org.spongepowered.asm.mixin.injection.Redirect)

Aggregations

ICamera (mathax.client.mixininterface.ICamera)1 FreeLook (mathax.client.systems.modules.render.FreeLook)1 Freecam (mathax.client.systems.modules.render.Freecam)1 HighwayBuilder (mathax.client.systems.modules.world.HighwayBuilder)1 Camera (net.minecraft.client.render.Camera)1 Redirect (org.spongepowered.asm.mixin.injection.Redirect)1