Upload files to "/"
This commit is contained in:
30
MixinCameraInterpolation.java
Normal file
30
MixinCameraInterpolation.java
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
package xyz.nodrop.farmingtools.mixin.client;
|
||||||
|
|
||||||
|
import net.minecraft.client.MinecraftClient;
|
||||||
|
import net.minecraft.client.render.Camera;
|
||||||
|
import net.minecraft.entity.Entity;
|
||||||
|
import net.minecraft.world.World;
|
||||||
|
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.CallbackInfo;
|
||||||
|
import xyz.nodrop.farmingtools.client.pathfinding.PathfindingController;
|
||||||
|
|
||||||
|
@Mixin(Camera.class)
|
||||||
|
public abstract class MixinCameraInterpolation {
|
||||||
|
|
||||||
|
@Shadow protected abstract void setRotation(float yaw, float pitch);
|
||||||
|
|
||||||
|
@Inject(method = "update", at = @At("TAIL"))
|
||||||
|
private void onCameraUpdate(World area, Entity focusedEntity, boolean thirdPerson, boolean inverseView, float tickProgress, CallbackInfo ci) {
|
||||||
|
MinecraftClient client = MinecraftClient.getInstance();
|
||||||
|
if (client.player == null) return;
|
||||||
|
if (!PathfindingController.INSTANCE.getExecutor().isActive()) return;
|
||||||
|
|
||||||
|
float yaw = PathfindingController.INSTANCE.getExecutor().getInterpolatedYaw(tickProgress);
|
||||||
|
float pitch = PathfindingController.INSTANCE.getExecutor().getInterpolatedPitch(tickProgress);
|
||||||
|
|
||||||
|
this.setRotation(yaw, pitch);
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user