Начинающий
- Статус
- Оффлайн
- Регистрация
- 17 Июл 2024
- Сообщения
- 257
- Реакции
- 3
- Выберите загрузчик игры
- Vanilla
- Прочие моды
увидел этот таргет есп в разних читах и он мне понравился я сделал немного он корявый ну норм думаю
(Тутор как добавить:надо добавить в AuraComponent заместо 11 на то что вам надо и в килауру добавляете например
public final ModeSetting targetesp = new ModeSetting("Отображения Цели", "1", new String[]{"1", "2", "3", "4", "5", "6", "7","как вам надо", "Не Отоброжать"}); и ещё в низу AuraComponent добавляете то что я ещё прикрепил потом запускаете и работает) если что-то надо пишите
Пожалуйста, авторизуйтесь для просмотра ссылки.
Код:
if (attackAura.targetesp.is("11")) {
if (currentTarget != null && !alpha.finished(Direction.BACKWARDS)) {
MatrixStack ms = e.getMatrix();
ms.push();
RenderSystem.pushMatrix();
RenderSystem.disableLighting();
depthMask(false);
RenderSystem.enableBlend();
RenderSystem.shadeModel(7425);
RenderSystem.disableCull();
RenderSystem.disableAlphaTest();
RenderSystem.blendFuncSeparate(770, 1, 0, 1);
renderGhosts(ms, currentTarget, e.getPartialTicks());
RenderSystem.defaultBlendFunc();
RenderSystem.enableDepthTest();
GL11.glEnable(GL11.GL_CULL_FACE);
depthMask(true);
RenderSystem.popMatrix();
ms.pop();
}
}
Код:
private void renderGhosts(MatrixStack ms, LivingEntity target, float partialTicks) {
List<Vector3d> t1 = trail1.computeIfAbsent(target, k -> new CopyOnWriteArrayList<>());
List<Vector3d> t2 = trail2.computeIfAbsent(target, k -> new CopyOnWriteArrayList<>());
List<Vector3d> t3 = trail3.computeIfAbsent(target, k -> new CopyOnWriteArrayList<>());
double x = interporate(partialTicks, target.lastTickPosX, target.getPosX());
double y = interporate(partialTicks, target.lastTickPosY, target.getPosY()) + target.getHeight() / 2f;
double z = interporate(partialTicks, target.lastTickPosZ, target.getPosZ());
double radius = 0.67;
float size = 0.67f; // increased size for more visible trails
double angle = 0.15f * (System.currentTimeMillis() % 4000L) / 45.0;
double s = Math.sin(angle) * radius;
double c = Math.cos(angle) * radius;
Vector3d orb1Pos = new Vector3d(x + s, y + c, z - c);
Vector3d orb2Pos = new Vector3d(x - s, y + s, z - c);
Vector3d orb3Pos = new Vector3d(x - s, y - s, z + c);
boolean isMoving = t1.isEmpty() || t1.get(t1.size() - 1).distanceTo(orb1Pos) > 0.01;
if (isMoving) {
t1.add(orb1Pos);
t2.add(orb2Pos);
t3.add(orb3Pos);
}
while (t1.size() > 80) t1.remove(0);
while (t2.size() > 80) t2.remove(0);
while (t3.size() > 80) t3.remove(0);
RenderSystem.pushMatrix();
setup3DRender(true);
RenderSystem.shadeModel(GL11.GL_SMOOTH);
ms.push();
float anim = (float) (animka.getOutput() / 255f);
float opacityFactor = 0.75f; // slightly more transparent
float maxAlpha = 255 * anim * opacityFactor;
int color = getBlinkingColorStyle(180);
renderTrail(ms, t1, color, maxAlpha, size);
renderTrail(ms, t2, color, maxAlpha, size);
renderTrail(ms, t3, color, maxAlpha, size);
ms.pop();
reset3DRender();
RenderSystem.popMatrix();
}
private void renderTrail(MatrixStack ms, List<Vector3d> trail, int color, float maxAlpha, float baseSize) {
if (trail.isEmpty()) return;
Quaternion cameraRotation = mc.getRenderManager().info.getRotation().copy();
Vector3d cameraPos = mc.getRenderManager().info.getProjectedView();
for (int i = 0; i < trail.size(); i++) {
Vector3d pos = trail.get(i);
float progress = (float) i / Math.max(1, trail.size() - 1);
int currentAlpha = (int) (maxAlpha * progress);
int baseColor = ColorUtil.interpolateColor(Theme.ClientColor(), Theme.ClientColorG(), progress);
int white = ColorUtil.rgba(255, 255, 255, 255);
int finalBase = ColorUtil.interpolateColor(baseColor, white, 0.2f);
int trailColor = setAlpha(finalBase, (float) currentAlpha / 255f);
float size = baseSize * progress;
ms.push();
ms.translate(pos.getX() - cameraPos.getX(), pos.getY() - cameraPos.getY(), pos.getZ() - cameraPos.getZ());
if (!throughWalls.isValue()) RenderSystem.enableDepthTest(); else RenderSystem.disableDepthTest();
drawOrb3D(ms, new ResourceLocation("litka/images/world/glow.png"), size, trailColor);
ms.pop();
}
}
public final ModeSetting targetesp = new ModeSetting("Отображения Цели", "1", new String[]{"1", "2", "3", "4", "5", "6", "7","как вам надо", "Не Отоброжать"}); и ещё в низу AuraComponent добавляете то что я ещё прикрепил потом запускаете и работает) если что-то надо пишите