-
Автор темы
- #1
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:
- бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
- маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
- приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
- обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.
Спасибо!
спастил стрейфы, просто не работает элитра буст и даже не стрейфятся
база экспенсив 3.4
база экспенсив 3.4
Код:
@ModuleAnnotation(name = "Strafe", desc = "Позволяет стрейфить", type = Type.Movement)
public class StrafeSunriseModule extends Module {
TimerUtility elytraDelay = new TimerUtility();
public static boolean needSprintState;
public static int counter;
public static BooleanSetting elytra = new BooleanSetting("Elytra-Boost", true);
public static SliderSetting speed = new SliderSetting("Speed", 1, 0, 2, 0.01f);
private int waterTicks;
@EventTarget
public void onUpdate (EventUpdate event) {
if (elytra.get()) {
if (mc.player.fallDistance != 0.0F) {
if ((double) mc.player.fallDistance < 0.1)
if (mc.player.motionY < -0.1 && this.elytraDelay.hasTimeElapsed(190L)) {
this.disabler();
this.elytraDelay.reset();
}
}
}
}
@EventTarget
public void onMOVE(EventMove move) {
boolean toGround = move.toGround();
if (mc.player.fallDistance >= 3.0F && toGround) {
Vec3d var3 = move.to();
}
if (MoveUtility.isInLiquid()) {
this.waterTicks = 10;
} else {
--this.waterTicks;
}
if (this.strafes()) {
double forward = mc.player.movementInput.moveForward;
double strafe = mc.player.movementInput.moveStrafe;
float yaw = mc.player.rotationYaw;
if (forward == 0.0 && strafe == 0.0) {
MatrixStrafeMovement.oldSpeed = 0.0;
move.motion().x = 0.0;
move.motion().z = 0.0;
} else {
if (elytra.get()) {
int elytraSlot = getHotbarSlotOfItem();
if (elytra.get() && elytraSlot != -1 && MoveUtility.isMoving()) {
if (!mc.player.onGround) {
if ((double)mc.player.fallDistance >= 0.15 && move.toGround()) {
setMotion((double) StrafeSunriseModule.speed.getFloatValue());
MatrixStrafeMovement.oldSpeed = (double) StrafeSunriseModule.speed.getFloatValue() / 1.06;
}
}
}
}
if (forward != 0.0) {
if (strafe > 0.0) {
yaw += (float)(forward > 0.0 ? -45 : 45);
} else if (strafe < 0.0) {
yaw += (float)(forward > 0.0 ? 45 : -45);
}
strafe = 0.0;
if (forward > 0.0) {
forward = 1.0;
} else if (forward < 0.0) {
forward = -1.0;
}
}
double speed = MatrixStrafeMovement.calculateSpeed(move);
move.motion().x = forward * speed * Math.cos(Math.toRadians((double)(yaw + 90.0F))) + strafe * speed * Math.sin(Math.toRadians((double)(yaw + 90.0F)));
move.motion().z = forward * speed * Math.sin(Math.toRadians((double)(yaw + 90.0F))) - strafe * speed * Math.cos(Math.toRadians((double)(yaw + 90.0F)));
}
} else {
MatrixStrafeMovement.oldSpeed = 0.0;
}
}
@EventTarget
public void onPostMove(EventPostMove event) {
MatrixStrafeMovement.postMove(event.getHorizontalMove());
}
@EventTarget
public void onActionEvent(EventAction event) {
MatrixStrafeMovement.actionEvent(event);
if (CPacketEntityAction.lastUpdatedSprint != needSprintState) {
event.sprintState = !CPacketEntityAction.lastUpdatedSprint;
}
}
public void onEnable() {
super.onEnable();
}
public void onDisable() {
this.elytraDelay.reset();
this.waterTicks = 0;
super.onDisable();
}
public static void setMotion(double motion) {
double forward = mc.player.movementInput.moveForward;
double strafe = mc.player.movementInput.moveStrafe;
float yaw = mc.player.rotationYaw;
if (forward == 0.0 && strafe == 0.0) {
mc.player.motionX = 0.0;
mc.player.motionZ = 0.0;
MatrixStrafeMovement.oldSpeed = 0.0;
} else {
if (forward != 0.0) {
if (strafe > 0.0) {
yaw += (float)(forward > 0.0 ? -45 : 45);
} else if (strafe < 0.0) {
yaw += (float)(forward > 0.0 ? 45 : -45);
}
strafe = 0.0;
if (forward > 0.0) {
forward = 1.0;
} else if (forward < 0.0) {
forward = -1.0;
}
}
double cosinus = Math.cos(Math.toRadians((double)(yaw + 90.0F)));
double sinus = Math.sin(Math.toRadians((double)(yaw + 90.0F)));
mc.player.motionX = forward * motion * cosinus + strafe * motion * sinus;
mc.player.motionZ = forward * motion * sinus - strafe * motion * cosinus;
}
}
private void disabler() {
if (StrafeSunriseModule.elytra.get()) {
int elytra = getHotbarSlotOfItem();
if (!mc.player.isInWater()) {
if (!mc.player.isInLava() && this.waterTicks <= 0 && elytra != -1) {
if (!mc.player.isInWeb) {
if (elytra != -2) {
mc.playerController.windowClick(0, elytra, 1, ClickType.PICKUP, mc.player);
mc.playerController.windowClick(0, 6, 1, ClickType.PICKUP, mc.player);
}
NetHandlerPlayClient var2 = mc.getConnection();
var2.sendPacket(new CPacketEntityAction(mc.player, CPacketEntityAction.Action.START_FALL_FLYING));
var2 = mc.getConnection();
var2.sendPacket(new CPacketEntityAction(mc.player, CPacketEntityAction.Action.START_FALL_FLYING));
if (elytra != -2) {
mc.playerController.windowClick(0, 6, 1, ClickType.PICKUP, mc.player);
mc.playerController.windowClick(0, elytra, 1, ClickType.PICKUP, mc.player);
}
}
}
}
}
}
public static int getHotbarSlotOfItem() {
Iterator var0 = mc.player.getArmorInventoryList().iterator();
while (var0.hasNext()) {
ItemStack stack = (ItemStack) var0.next();
if (stack.getItem() == Items.ELYTRA) {
return -2;
}
}
int slot = -1;
for (int i = 0; i < 36; ++i) {
ItemStack s = mc.player.inventory.getStackInSlot(i);
if (s.getItem() == Items.ELYTRA) {
slot = i;
break;
}
}
if (slot < 9 && slot != -1) {
slot += 36;
}
return slot;
}
public boolean strafes() {
if (mc.player == null) {
return false;
} else if (Vishka.getInstance().manager.getModule(ElytraSunrise.class).state) {
return false;
} else if (Vishka.getInstance().manager.getModule(FlightModule.class).state) {
return false;
} else if (Vishka.getInstance().manager.getModule(TargetStrafeModule.class).state) {
return false;
} else {
if (mc.player.isSneaking()) {
return false;
} else {
if (mc.player.isInLava()) {
return false;
} else {
if (mc.player.isInWater()) {
return false;
} else {
return !mc.player.capabilities.isFlying;
}
}
}
}
}
}