package im.negr.modules.impl.render;
import com.google.common.eventbus.Subscribe;
import com.mojang.blaze3d.platform.GlStateManager;
import com.mojang.blaze3d.systems.RenderSystem;
import im.negr.client.events.WorldEvent;
import im.negr.modules.api.Category;
import im.negr.modules.api.Module;
import im.negr.modules.api.ModuleAnnotation;
import im.negr.system.render.DisplayUtils;
import im.negr.modules.api.Type;
import im.negr.system.math.MathUtil;
import im.negr.system.render.ColorUtils;
import net.minecraft.client.renderer.vertex.DefaultVertexFormats;
import net.minecraft.client.settings.PointOfView;
import net.minecraft.util.math.MathHelper;
import net.minecraft.util.math.vector.Vector3d;
import org.lwjgl.opengl.GL11;
@ModuleAnnotation(name = "Hat", type = Type.Render)
public class Hat extends Module {
@Subscribe
private void onRender(WorldEvent e) {
if (mc.gameSettings.getPointOfView() == PointOfView.FIRST_PERSON) return;
GlStateManager.pushMatrix();
RenderSystem.translated(-mc.getRenderManager().info.getProjectedView().x, -mc.getRenderManager().info.getProjectedView().y + 0.25, -mc.getRenderManager().info.getProjectedView().z);
Vector3d interpolated = MathUtil.interpolate(mc.player.getPositionVec(), new Vector3d(mc.player.lastTickPosX, mc.player.lastTickPosY, mc.player.lastTickPosZ), e.getPartialTicks());
RenderSystem.translated(interpolated.x, interpolated.y + mc.player.getHeight(), interpolated.z);
GL11.glEnable(GL11.GL_BLEND);
GL11.glDisable(GL11.GL_CULL_FACE);
GL11.glDisable(GL11.GL_TEXTURE_2D);
GL11.glEnable(GL11.GL_DEPTH_TEST);
GL11.glDepthMask(false);
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
GL11.glBegin(GL11.GL_TRIANGLE_STRIP);
float height = 0.6f;
float baseRadius = 0.3f;
int segments = 36;
for (int i = 0; i <= segments; i++) {
float angle = (float) (i * 2 * Math.PI / segments);
float x = (float) Math.cos(angle) * baseRadius;
float z = (float) Math.sin(angle) * baseRadius;
GL11.glColor4f(0.7f, 0.7f, 0.9f, 0.9f);
GL11.glVertex3f(x, 0, z);
GL11.glColor4f(0.8f, 0.8f, 1.0f, 0.9f);
GL11.glVertex3f(0, height, 0);
}
GL11.glEnd();
GL11.glEnable(GL11.GL_CULL_FACE);
GL11.glEnable(GL11.GL_TEXTURE_2D);
GL11.glDepthMask(true);
GL11.glDisable(GL11.GL_BLEND);
GlStateManager.popMatrix();
}
}
//я гном ыыы сигма бой эщкере