-
Автор темы
- #1
Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:
- бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
- маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
- приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
- обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.
Спасибо!
Жоская ротация стырил с чита
ротация
атака
Пожалуйста, авторизуйтесь для просмотра ссылки.
Пожалуйста, авторизуйтесь для просмотра ссылки.
ротация
java:
private void snapsRotation() {
if (target == null) {
return;
}
Vector3d vec = target.getPositionVec().add(0, MathHelper.clamp(mc.player.getEyePosition(mc.getRenderPartialTicks()).y - target.getPosY(),
0, target.getHeight() * (AuraUtil.getStrictDistance(target) / Math.max(mc.playerController.extendedReach() ? 6 : 3, attackRange.getValue().floatValue()))), 0)
.subtract(mc.player.getEyePosition(mc.getRenderPartialTicks())).normalize();
float rawYaw = (float) Math.toDegrees(Math.atan2(-vec.x, vec.z));
float rawPitch = (float) MathHelper.clamp(Math.toDegrees(Math.asin(-vec.y)), -89, 89);
float yawDelta = (int) MathHelper.wrapDegrees(rawYaw - mc.player.rotationYaw);
float pitchDelta = rawPitch - mc.player.rotationPitch;
float yawSpeed = 125;
float pitchSpeed = 50;
float clampedYaw = MathHelper.clamp(yawDelta, -yawSpeed, yawSpeed);
float clampedPitch = MathHelper.clamp(pitchDelta, -pitchSpeed, pitchSpeed);
RotationHandler.update(new Rotation(
mc.player.rotationYaw + clampedYaw,
mc.player.rotationPitch + (mc.objectMouseOver.getType() == RayTraceResult.Type.ENTITY ? 0 : clampedPitch)),
360, 1, 5);
}
Java:
private void snapsAttack() {
int currSlot = mc.player.inventory.currentItem;
int axeSlot = getAxeSlot();
boolean shouldBreak = axeSlot != -1;
if (shouldBreak) {
if (currSlot != axeSlot) {
mc.player.inventory.currentItem = axeSlot;
mc.playerController.syncCurrentPlayItem();
oldSlot = currSlot;
}
} else if (oldSlot != -1) {
mc.player.inventory.currentItem = oldSlot;
mc.playerController.syncCurrentPlayItem();
oldSlot = -1;
}
if (shouldAttack() || shouldBreak) {
this.ticksUntilNextAttack = 2;
setRotation(target, true);
this.attackTarget(target);
}
}