Java:
public FunTimeSnapMode() {
super("FunTime");
}
@Override
public Angle limitAngleChange(Angle currentAngle, Angle targetAngle, Vec3d vec3d, Entity entity) {
if (entity != null && Main.getInstance().getAttackPerpetrator().getAttackHandler().canAttack(Aura.getInstance().getConfig(), 1)) {
Angle angleDelta = AngleUtil.calculateDelta(currentAngle, targetAngle);
float yawDelta = angleDelta.getYaw();
float pitchDelta = angleDelta.getPitch();
boolean canAttack = entity != null && Main.getInstance().getAttackPerpetrator().getAttackHandler().canAttack(Aura.getInstance().getConfig(), 0);
float rotationDifference = (float) Math.hypot(Math.abs(yawDelta), Math.abs(pitchDelta));
float straightLineYaw = Math.abs(yawDelta / rotationDifference) * 115;
float straightLinePitch = Math.abs(pitchDelta / rotationDifference) * 115;
return new Angle(currentAngle.getYaw() + Math.min(Math.max(yawDelta, -straightLineYaw), straightLineYaw), currentAngle.getPitch() + Math.min(Math.max(pitchDelta, -straightLinePitch), straightLinePitch));
} else {
Angle playerViewAngle = new Angle(mc.player.getYaw(), mc.player.getPitch());
Angle angleToPlayerView = AngleUtil.calculateDelta(currentAngle, playerViewAngle);
float yawDelta = angleToPlayerView.getYaw();
float pitchDelta = angleToPlayerView.getPitch();
float rotationDifference = (float) Math.hypot(Math.abs(yawDelta), Math.abs(pitchDelta));
float yaw = (float) (MathUtil.randomLerp(9, 19) * Math.sin(System.currentTimeMillis() / 35D));
float pitch = (float) (MathUtil.randomLerp(3, 9) * Math.cos(System.currentTimeMillis() / 35D));
if (Aura.getInstance().getTarget() == null && Main.getInstance().getAttackPerpetrator().getAttackHandler().getAttackTimer().finished(450)) {
yaw = 0;
pitch = 0;
}
float straightLineYaw = Math.abs(yawDelta / rotationDifference) * (!Main.getInstance().getAttackPerpetrator().getAttackHandler().getAttackTimer().finished(380) ? 0 : 38);
float straightLinePitch = Math.abs(pitchDelta / rotationDifference) * (!Main.getInstance().getAttackPerpetrator().getAttackHandler().getAttackTimer().finished(380) ? 0 : 38);
if (Main.getInstance().getAttackPerpetrator().getAttackHandler().getCount() % 33 == 0 && Main.getInstance().getAttackPerpetrator().getAttackHandler().getCount() > 0) {
if (!Main.getInstance().getAttackPerpetrator().getAttackHandler().getAttackTimer().finished(210)) {
pitch = -90;
if (Main.getInstance().getAttackPerpetrator().getAttackHandler().getAttackTimer().finished(195)) mc.player.swingHand(Hand.MAIN_HAND);
}
}
return new Angle(currentAngle.getYaw() + Math.min(Math.max(yawDelta, -straightLineYaw), straightLineYaw) + yaw, currentAngle.getPitch() + Math.min(Math.max(pitchDelta, -straightLinePitch), straightLinePitch) + pitch);
}
}
почему урон урезает
вроде скид нурика килки но урезает
