Advertisement
_Enrico

RenderPlayerEvent

May 12th, 2025
467
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.51 KB | Source Code | 0 0
  1. package org.polyfrost.frozen.features.misc;
  2.  
  3. import cc.polyfrost.oneconfig.libs.universal.UGraphics;
  4. import net.minecraft.client.Minecraft;
  5. import net.minecraft.client.entity.EntityPlayerSP;
  6. import net.minecraft.client.model.ModelPlayer;
  7. import net.minecraft.client.renderer.GlStateManager;
  8. import net.minecraftforge.client.event.RenderPlayerEvent;
  9. import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
  10. import org.polyfrost.frozen.config.Config;
  11.  
  12. public class PlayerRenderer {
  13.  
  14.     private void renderPlayer(RenderPlayerEvent e) {
  15.         float pt = e.partialRenderTick;
  16.  
  17.         EntityPlayerSP player = Minecraft.getMinecraft().thePlayer;
  18.         ModelPlayer model =  e.renderer.getMainModel();
  19.  
  20.         float bodyYaw = lerp(player.prevRenderYawOffset, player.renderYawOffset, pt);
  21.         float headYaw = clamp180(lerp(player.prevRotationYawHead, player.rotationYawHead, pt) - bodyYaw);
  22.         float pitch = lerp(player.prevRotationPitch, player.rotationPitch, pt);
  23.  
  24.         GlStateManager.pushMatrix();
  25.         GlStateManager.enableRescaleNormal();
  26.         GlStateManager.enableAlpha();
  27.         GlStateManager.disableLighting();
  28.         GlStateManager.enableBlend();
  29.         GlStateManager.scale(Config.playerScale, Config.playerScale, Config.playerScale);
  30.         GlStateManager.translate(0, 0.24, 0);
  31.         GlStateManager.rotate(-bodyYaw, 0, 1, 0);
  32.  
  33.         Minecraft.getMinecraft().getTextureManager().bindTexture(player.getLocationSkin());
  34.         model.render(player, player.limbSwing, player.limbSwingAmount, player.getAge() + pt, -limit90(headYaw), pitch, -0.01F);
  35.  
  36.         GlStateManager.disableBlend();
  37.         GlStateManager.disableAlpha();
  38.         GlStateManager.enableLighting();
  39.         GlStateManager.popMatrix();
  40.     }
  41.  
  42.     @SubscribeEvent
  43.     public void onEntityRenderPre(RenderPlayerEvent.Pre e) {
  44.         if (!Config.customPlayerScale || e.entity != Minecraft.getMinecraft().thePlayer) return;
  45.         GlStateManager.pushMatrix();
  46.         GlStateManager.translate(0, -500, 0);
  47.     }
  48.  
  49.     @SubscribeEvent
  50.     public void onEntityRenderPost(RenderPlayerEvent.Post e) {
  51.         if (!Config.customPlayerScale || e.entity != Minecraft.getMinecraft().thePlayer) return;
  52.         GlStateManager.popMatrix();
  53.         renderPlayer(e);
  54.     }
  55.  
  56.     private float lerp (float a, float b, float t) {return a + (b - a) * t;}
  57.     private float clamp180 (float a) { return ((a + 180) % 360 + 360) % 360 - 180;}
  58.     private float limit90 (float a) { return Math.max(-90, Math.min(90, a));}
  59. }
  60.  
  61.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement