напиши

  • Мы теперь в Discord

    Мы рады объявить, что теперь у нас есть сервер Discord. В честь этого мы проводим розыгрыш!
    Теперь вы можете легко связаться с нами и другими участниками сообщества,
    обмениваться идеями и получать обновления о нашей деятельности.

  • EXCLUSIVE ⚡

    Гость, покупая подписку, ты увеличишь свои доходы в разы!
    Мы делаем самые актуальные сборки, переводим лучшие приватные плагины, а так-же обновляем их и фиксим любые ошибки.
    Дешевле, чем студии и другие разработчики!

  • Приветствуем тебя Гость!⁣

    Недавно на форуме? Не знаешь как можно скачивать ресурсы?
    Для этого нужно лишь зарегистрировать на форуме, и получать доступ к профессиональным плагинам, оптимизированным настройкам.
    Здесь только самое лучшее.

chat bupz

Пользователь
5 Май 2023
18
0
1
какая проблема в коде?

@ModuleAnnotation(name = "TPAura", type = Type.COMBAT)
public class TPAura extends Module {
public Path path;

public SliderSetting range;

public SliderSetting step;

public BooleanSetting crits;

public BooleanSetting render;

public BooleanSetting swap;

public BooleanSetting rotate;

public static EntityLivingBase entity;

public EventListener<EventMotion> e;

public EventListener<EventDraw> draw;

public TPAura() {
this.range = new SliderSetting("Range", 15.0F, 10.0F, 100.0F, 1.0F);
this.step = new SliderSetting("Step", 5.0F, 2.0F, 50.0F, 1.0F);
this.crits = new BooleanSetting("Criticals", true);
this.render = new BooleanSetting("Visual", true);
this.swap = new BooleanSetting("Swap", false);
this.rotate = new BooleanSetting("Rotate", true);
this.e = (e -> {
setDisplayName(String.valueOf(this.range.get()));
entity = (EntityLivingBase)getNearestEntity();
if (entity == null) {
this.path = null;
return;
}
this.path = new Path(mc.player.getPositionVector(), entity.getPositionVector());
this.path.calculatePath(this.step.get());
if (this.rotate.get()) {
Vec2f rotations = getRotationToEntity((Entity)entity);
e.setYaw(rotations.x);
e.setPitch(rotations.y);
}
if (mc.player.getCooledAttackStrength(1.0F) == 1.0F) {
if (this.crits.get())
mc.player.connection.sendPacket((Packet)new CPacketPlayer.Position(mc.player.posX, mc.player.posY + 0.01D, mc.player.posZ, false));
for (Vec3d vec : this.path.getPath())
mc.player.connection.sendPacket((Packet)new CPacketPlayer.PositionRotation(vec.x, vec.y, vec.z, mc.player.rotationYaw, mc.player.rotationPitch, false));
mc.player.connection.sendPacket((Packet)new CPacketUseEntity((Entity)entity));
mc.player.resetCooldown();
if (this.swap.get())
mc.player.swingArm(EnumHand.MAIN_HAND);
Collections.reverse(this.path.getPath());
for (Vec3d vec : this.path.getPath())
mc.player.connection.sendPacket((Packet)new CPacketPlayer.PositionRotation(vec.x, vec.y, vec.z, mc.player.rotationYaw, mc.player.rotationPitch, false));
}
});
this.draw = (e -> {
if (e.type == EventDraw.RenderType.RENDER) {
if (this.path == null || !this.render.get())
return;
for (Vec3d entity : this.path.getPath()) {
if (mc.player.getPositionVector().distanceTo(entity) < 2.0D)
continue;
double x = entity.x - (mc.getRenderManager()).renderPosX;
double y = entity.y - (mc.getRenderManager()).renderPosY;
double z = entity.z - (mc.getRenderManager()).renderPosZ;
GL11.glPushMatrix();
mc.entityRenderer.setupCameraTransform(e.partialTicks, 2);
GL11.glDisable(3008);
GL11.glBlendFunc(770, 771);
GL11.glEnable(3042);
GL11.glDisable(3553);
GL11.glDepthMask(false);
GlStateManager.color(1.0F, 1.0F, 1.0F, 0.05F);
Render<Entity> render = null;
try {
render = mc.getRenderManager().getEntityRenderObject((Entity)mc.player);
} catch (Exception e1) {
e1.printStackTrace();
}
if (render != null)
((RenderLivingBase)RenderLivingBase.class.cast(render)).doRenderT((EntityLivingBase)mc.player, x, y, z, 1.0F, mc.getRenderPartialTicks());
GL11.glEnable(3553);
GL11.glDepthMask(true);
GL11.glDisable(3042);
GL11.glEnable(3008);
mc.entityRenderer.setupCameraTransform(e.partialTicks, 0);
GlStateManager.resetColor();
GL11.glPopMatrix();
}
}
});
}

public void onDisable() {
super.onDisable();
entity = null;
}

public Vec2f getRotationToEntity(Entity entity) {
Vec3d eyesPos = new Vec3d(mc.player.posX, mc.player.posY + mc.player.getEyeHeight(), mc.player.posZ);
Vec3d entityPos = new Vec3d(entity.posX, entity.posY + entity.getEyeHeight(), entity.posZ);
double diffX = entityPos.x - eyesPos.x;
double diffY = entityPos.y - eyesPos.y;
double diffZ = entityPos.z - eyesPos.z;
double dist = Math.sqrt(diffX * diffX + diffZ * diffZ);
float yaw = (float)Math.toDegrees(Math.atan2(diffZ, diffX)) - 90.0F;
float pitch = (float)-Math.toDegrees(Math.atan2(diffY, dist));
return new Vec2f(yaw, pitch);
}

public Entity getNearestEntity() {
EntityPlayer entityPlayer;
Entity nearest = null;
double distance = this.range.get();
for (EntityPlayer entity : mc.world.playerEntities) {
if (entity == mc.player)
continue;
if (entity.isBot)
continue;
double d = mc.player.getDistanceToEntity((Entity)entity);
if (nearest == null && d < distance) {
entityPlayer = entity;
distance = d;
}
}
return (Entity)entityPlayer;
}
}
 
Существует потенциальная проблема с методом `getNearestEntity()`. Если для всех сущностей в mc.world.playerEntities для isBot установлено значение true, то EntityPlayer будет иметь значение null, и при попытке привести его к Entity произойдет исключение NullPointerException. Метод, вероятно, должен обрабатывать этот случай, возвращая значение null или значение по умолчанию.
 
Существует потенциальная проблема с методом `getNearestEntity()`. Если для всех сущностей в mc.world.playerEntities для isBot установлено значение true, то EntityPlayer будет иметь значение null, и при попытке привести его к Entity произойдет исключение NullPointerException. Метод, вероятно, должен обрабатывать этот случай, возвращая значение null или значение по умолчанию.
напиши похожий код
 
напиши похожий код
Конечно, вот пример кода, который обрабатывает вышеупомянутую проблему:

```
public Entity getNearestEntity() {
EntityPlayer entityPlayer = null;
double distance = this.range.get();
for (EntityPlayer entity : mc.world.playerEntities) {
if (entity == mc.player || entity.isBot)
continue;
double d = mc.player.getDistanceToEntity(entity);
if (d < distance) {
entityPlayer = entity;
distance = d;
}
}
return (entityPlayer != null)
? (Entity) entityPlayer
: null;
}
```

Здесь мы добавили проверку, если существует сущность, не являющаяся ботом, и находящаяся на расстоянии меньше `distance`, то она будет выбрана как ближайшая. Если такой сущности не найдено, возвращается значение null.
 

Помочь проекту 💕

Собрано
"52,204.60" ₽
Цель
"60,000.00" ₽

Последние ресурсы