-
Автор темы
- #1
Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:
- бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
- маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
- приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
- обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.
Спасибо!
Просто не рендрерится png
Код:
public class JumpCircle extends Module {
private List<Circle> circleList = new ArrayList<>();;
public JumpCircle () {
setKey((short) KeyEvent.VK_G);
}
@Override
public void disabled() {
circleList.remove(1);
super.disabled();
}
@SubscribeEvent
public void onJump (PlayerJumpEvent jumpEvent) {
ClientPlayerEntity clientPlayer = mc.player;
assert clientPlayer != null;
if (clientPlayer.isOnGround()) {
circleList.add(new Circle(new Vector3d(clientPlayer.getPosX(), clientPlayer.getPosY(), clientPlayer.getPosZ()), 0));
}
}
public MatrixStack matrixFrom (MatrixStack matrixStack, ActiveRenderInfo camera) {
matrixStack.rotate(Vector3f.XP.rotationDegrees(camera.getPitch()));
matrixStack.rotate(Vector3f.YP.rotationDegrees(camera.getYaw() + 180F));
return matrixStack;
}
@SubscribeEvent
public void worldRender (WorldRenderEvent worldRender) {
MatrixStack matrixStack = matrixFrom(worldRender.getMatrixStack(), mc.gameRenderer.getActiveRenderInfo());
double ix = -mc.getRenderManager().info.getProjectedView().getX();
double iy = -mc.getRenderManager().info.getProjectedView().getY();
double iz = -mc.getRenderManager().info.getProjectedView().getZ();
Collections.reverse(circleList);
for (Circle circle : circleList) {
double x = circle.getVector3d().getX() - circle.getFactor() / 2;
double y = circle.getVector3d().getY();
double z = circle.getVector3d().getZ() - circle.getFactor() / 2;
circle.setFactor(lerp(circle.getFactor(), 1.5F, .80F));
Tessellator tessellator = Tessellator.getInstance();
BufferBuilder buffer = tessellator.getBuffer();
matrixStack.push();
matrixStack.translate(ix, iy, iz);
matrixStack.translate(x, y, z);
matrixStack.rotate(new Quaternion(new Vector3f(1, 0, 0), 90F, true));
RenderSystem.enableBlend();
RenderSystem.disableAlphaTest();
RenderSystem.depthMask(false);
GL11.glAlphaFunc(GL11.GL_GREATER, .02F);
GL11.glDisable(GL11.GL_POINT_SMOOTH);
int[] c = rgba(new Color(0xFFFFFF).getRGB());
RenderSystem.blendFuncSeparate(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA, GL11.GL_ONE, GL11.GL_ZERO);
RenderSystem.enableDepthTest();
buffer.begin(GL_QUADS, POSITION_TEX_COLOR);
mc.getTextureManager().bindTexture(new ResourceLocation("assets/minecraft/textures/item/apple.png"));
buffer.pos(matrixStack.getLast().getMatrix(), 0, 0, 0).tex(0, 0).color(c[0], c[1], c[2], c[3]).endVertex();
buffer.pos(matrixStack.getLast().getMatrix(), 0, circle.getFactor(), 0).tex(0, 1).color(c[0], c[1], c[2], c[3]).endVertex();
buffer.pos(matrixStack.getLast().getMatrix(), circle.getFactor(), circle.getFactor(), 0).tex(1, 1).color(c[0], c[1], c[2], c[3]).endVertex();
buffer.pos(matrixStack.getLast().getMatrix(), circle.getFactor(), 0, 0).tex(1, 0).color(c[0], c[1], c[2], c[3]).endVertex();
tessellator.draw();
RenderSystem.enableBlend();
RenderSystem.disableBlend();
RenderSystem.depthMask(true);
matrixStack.pop();
}
Collections.reverse(circleList);
}
@Getter
@AllArgsConstructor
public static class Circle {
private Vector3d vector3d;
private @Setter float factor;
}
public static int[] rgba (int color) {
return new int[] { color >> 16 & 0xFF, color >> 8 & 0xFF, color & 0xFF, color >> 24 & 0xFF };
}
public static float lerp (float a, float b, float t) {
return a + (b - a) * t;
}
}