优化智慧芯片自瞄效果

This commit is contained in:
Atsuihsio 2025-03-07 22:06:04 +08:00
parent 112578b366
commit 8069463edd

View file

@ -1371,8 +1371,7 @@ public class ClientEventHandler {
ClientEventHandler.entity = SeekTool.seekLivingEntity(player, player.level(), 32 + 8 * (level - 1), 16 / zoomFov);
}
if (entity != null && entity.isAlive()) {
Vec3 targetVec = player.getEyePosition().vectorTo(entity.getEyePosition());
Vec3 toVec = player.getViewVector(1).add(targetVec.scale(1.1f * times));
Vec3 toVec = getVec3(event, player);
look(player, toVec);
}
}
@ -1387,6 +1386,12 @@ public class ClientEventHandler {
}
}
private static Vec3 getVec3(ViewportEvent.ComputeFov event, Player player) {
Vec3 targetVec = new Vec3(Mth.lerp(event.getPartialTick(), entity.xo, entity.getX()), Mth.lerp(event.getPartialTick(), entity.yo + entity.getEyeHeight(), entity.getEyeY()), Mth.lerp(event.getPartialTick(), entity.zo, entity.getZ()));
Vec3 playerVec = new Vec3(Mth.lerp(event.getPartialTick(), player.xo, player.getX()), Mth.lerp(event.getPartialTick(), player.yo + player.getEyeHeight(), player.getEyeY()), Mth.lerp(event.getPartialTick(), player.zo, player.getZ()));
return playerVec.vectorTo(targetVec);
}
public static void look(Player player, Vec3 pTarget) {
double d0 = pTarget.x;
double d1 = pTarget.y;