Like csgo FakeBody
-
all code xD
package net.ccbluex.liquidbounce.injection.forge.mixins.render; import co.uk.hexeption.utils.OutlineUtils; import net.ccbluex.liquidbounce.LiquidBounce; import net.ccbluex.liquidbounce.features.module.modules.render.*; import net.ccbluex.liquidbounce.utils.RotationUtils; import net.ccbluex.liquidbounce.utils.ClientUtils; import net.ccbluex.liquidbounce.utils.EntityUtils; import net.minecraft.client.model.ModelBase; import net.ccbluex.liquidbounce.utils.render.RenderUtils; import net.minecraft.client.Minecraft; import net.minecraft.client.model.ModelBase; import net.minecraft.client.renderer.GlStateManager; import net.minecraft.client.renderer.entity.RendererLivingEntity; import net.minecraft.client.renderer.texture.DynamicTexture; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; import net.minecraft.client.renderer.GLAllocation; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.util.MathHelper; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.lwjgl.opengl.GL11; import net.minecraft.client.renderer.OpenGlHelper; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Overwrite; import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; import java.awt.*; import java.nio.FloatBuffer; @Mixin(RendererLivingEntity.class) @SideOnly(Side.CLIENT) public abstract class MixinRendererLivingEntity extends MixinRender { @Shadow protected abstract<T extends EntityLivingBase> float handleRotationFloat(T livingBase, float partialTicks); @Shadow private static final Logger logger = LogManager.getLogger(); @Shadow protected abstract<T extends EntityLivingBase> void rotateCorpse(T bat, float p_77043_2_, float p_77043_3_, float partialTicks); @Shadow protected abstract<T extends EntityLivingBase> float getSwingProgress(T livingBase, float partialTickTime); @Shadow protected abstract <T extends EntityLivingBase> void renderLivingAt(T entityLivingBaseIn, double x, double y, double z); @Shadow protected abstract <T extends EntityLivingBase> void preRenderCallback(T entitylivingbaseIn, float partialTickTime); @Shadow protected boolean renderOutlines = false; @Shadow protected abstract <T extends EntityLivingBase> boolean setScoreTeamColor(T entityLivingBaseIn); @Shadow protected abstract void unsetBrightness(); @Shadow protected abstract void unsetScoreTeamColor(); @Shadow protected abstract <T extends EntityLivingBase> void renderLayers(T entitylivingbaseIn, float p_177093_2_, float p_177093_3_, float partialTicks, float p_177093_5_, float p_177093_6_, float p_177093_7_, float p_177093_8_); @Shadow protected abstract <T extends EntityLivingBase> boolean setDoRenderBrightness(T entityLivingBaseIn, float partialTicks); @Shadow private static final DynamicTexture field_177096_e = new DynamicTexture(16, 16); @Shadow protected abstract float interpolateRotation(float par1, float par2, float par3); @Shadow protected FloatBuffer brightnessBuffer = GLAllocation.createDirectFloatBuffer(4); @Shadow public abstract <T extends EntityLivingBase> int getColorMultiplier(T entitylivingbaseIn, float lightBrightness, float partialTickTime); @Shadow protected ModelBase mainModel; @Inject(method = "renderModel", at = @At("HEAD")) private <T extends EntityLivingBase> void injectChamsPre(T entitylivingbaseIn, float p_77036_2_, float p_77036_3_, float p_77036_4_, float p_77036_5_, float p_77036_6_, float p_77036_7_, CallbackInfo callbackInfo) { final Chams chams = (Chams) LiquidBounce.moduleManager.getModule(Chams.class); Minecraft mc = Minecraft.getMinecraft(); if (!chams.me.get()) { if (chams.getState() && chams.targetsValue.get() && entitylivingbaseIn instanceof EntityPlayer && !entitylivingbaseIn.equals(mc.thePlayer)) { GL11.glPushMatrix(); GL11.glEnable((int) 10754); OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, 240.0f, 240.0f); GL11.glPolygonOffset(1.0F, -1000000F); GL11.glEnable((int) 3042); GL11.glDisable((int) 3553); GL11.glDisable((int) 2896); GL11.glBlendFunc((int) 770, (int) 771); GL11.glColor4f(((float) (mc.thePlayer.canEntityBeSeen(entitylivingbaseIn) ? Chams.Color.getRed() : Chams.WallColor.getRed()) / 255.0f), ((float) (mc.thePlayer.canEntityBeSeen(entitylivingbaseIn) ? Chams.Color.getGreen() : Chams.WallColor.getGreen()) / 255.0f), ((float) (mc.thePlayer.canEntityBeSeen(entitylivingbaseIn) ? Chams.Color.getBlue() : Chams.WallColor.getBlue()) / 255.0f), ((float) chams.Alpha.get() / 255.0f)); GL11.glDisable((int) 2929); GL11.glDepthMask((boolean) false); } } else { if (chams.getState() && chams.targetsValue.get() && entitylivingbaseIn instanceof EntityPlayer) { GL11.glPushMatrix(); GL11.glEnable((int) 10754); OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, 240.0f, 240.0f); GL11.glPolygonOffset(1.0F, -1000000F); GL11.glEnable((int) 3042); GL11.glDisable((int) 3553); GL11.glDisable((int) 2896); GL11.glBlendFunc((int) 770, (int) 771); GL11.glColor4f(((float) (mc.thePlayer.canEntityBeSeen(entitylivingbaseIn) ? Chams.Color.getRed() : Chams.WallColor.getRed()) / 255.0f), ((float) (mc.thePlayer.canEntityBeSeen(entitylivingbaseIn) ? Chams.Color.getGreen() : Chams.WallColor.getGreen()) / 255.0f), ((float) (mc.thePlayer.canEntityBeSeen(entitylivingbaseIn) ? Chams.Color.getBlue() : Chams.WallColor.getBlue()) / 255.0f), ((float) chams.Alpha.get() / 255.0f)); GL11.glDisable((int) 2929); GL11.glDepthMask((boolean) false); } } } @Inject(method = "renderModel", at = @At("RETURN")) private <T extends EntityLivingBase> void injectChamsPost(T entitylivingbaseIn, float p_77036_2_, float p_77036_3_, float p_77036_4_, float p_77036_5_, float p_77036_6_, float p_77036_7_, CallbackInfo callbackInfo) { final Chams chams = (Chams) LiquidBounce.moduleManager.getModule(Chams.class); Minecraft mc = Minecraft.getMinecraft(); if(!chams.me.get()) { if (chams.getState() && chams.targetsValue.get() && entitylivingbaseIn instanceof EntityPlayer && !entitylivingbaseIn.equals(mc.thePlayer)) { GL11.glEnable((int) 2929); GL11.glDepthMask((boolean) true); GL11.glColor4f(((float) (mc.thePlayer.canEntityBeSeen(entitylivingbaseIn) ? Chams.Color.getRed() : Chams.WallColor.getRed()) / 255.0f), ((float) (mc.thePlayer.canEntityBeSeen(entitylivingbaseIn) ? Chams.Color.getGreen() : Chams.WallColor.getGreen()) / 255.0f), ((float) (mc.thePlayer.canEntityBeSeen(entitylivingbaseIn) ? Chams.Color.getBlue() : Chams.WallColor.getBlue()) / 255.0f), ((float) chams.Alpha.get() / 255.0f)); GL11.glEnable((int) 3553); GL11.glColor4f((float) 1.0f, (float) 1.0f, (float) 1.0f, (float) 1.0f); GL11.glDisable((int) 3042); GL11.glEnable((int) 2896); GL11.glPolygonOffset((float) 1.0f, (float) -1000000.0f); GL11.glDisable((int) 10754); GL11.glPopMatrix(); } }else{ if (chams.getState() && chams.targetsValue.get() && entitylivingbaseIn instanceof EntityPlayer) { GL11.glEnable((int) 2929); GL11.glDepthMask((boolean) true); GL11.glColor4f(((float) (mc.thePlayer.canEntityBeSeen(entitylivingbaseIn) ? Chams.Color.getRed() : Chams.WallColor.getRed()) / 255.0f), ((float) (mc.thePlayer.canEntityBeSeen(entitylivingbaseIn) ? Chams.Color.getGreen() : Chams.WallColor.getGreen()) / 255.0f), ((float) (mc.thePlayer.canEntityBeSeen(entitylivingbaseIn) ? Chams.Color.getBlue() : Chams.WallColor.getBlue()) / 255.0f), ((float) chams.Alpha.get() / 255.0f)); GL11.glEnable((int) 3553); GL11.glColor4f((float) 1.0f, (float) 1.0f, (float) 1.0f, (float) 1.0f); GL11.glDisable((int) 3042); GL11.glEnable((int) 2896); GL11.glPolygonOffset((float) 1.0f, (float) -1000000.0f); GL11.glDisable((int) 10754); GL11.glPopMatrix(); } } } @Overwrite public<T extends EntityLivingBase> void doRender(T entity, double x, double y, double z, float entityYaw, float partialTicks) { GlStateManager.pushMatrix(); GlStateManager.disableCull(); this.mainModel.swingProgress = this.getSwingProgress(entity, partialTicks); this.mainModel.isRiding = entity.isRiding(); this.mainModel.isChild = entity.isChild(); try { float f = this.interpolateRotation(entity.prevRenderYawOffset, entity.renderYawOffset, partialTicks); float f1 = this.interpolateRotation(entity.prevRotationYawHead, entity.rotationYawHead, partialTicks); float f2 = f1 - f; if (entity.isRiding() && entity.ridingEntity instanceof EntityLivingBase) { EntityLivingBase entitylivingbase = (EntityLivingBase)entity.ridingEntity; f = this.interpolateRotation(entitylivingbase.prevRenderYawOffset, entitylivingbase.renderYawOffset, partialTicks); f2 = f1 - f; float f3 = MathHelper.wrapAngleTo180_float(f2); if (f3 < -85.0F) { f3 = -85.0F; } if (f3 >= 85.0F) { f3 = 85.0F; } f = f1 - f3; if (f3 * f3 > 2500.0F) { f += f3 * 0.2F; } } float f7 = entity.prevRotationPitch + (entity.rotationPitch - entity.prevRotationPitch) * partialTicks; this.renderLivingAt(entity, x, y, z); float f8 = this.handleRotationFloat(entity, partialTicks); this.rotateCorpse(entity, f8, f, partialTicks); GlStateManager.enableRescaleNormal(); GlStateManager.scale(-1.0F, -1.0F, 1.0F); this.preRenderCallback(entity, partialTicks); float f4 = 0.0625F; GlStateManager.translate(0.0F, -1.5078125F, 0.0F); float f5 = entity.prevLimbSwingAmount + (entity.limbSwingAmount - entity.prevLimbSwingAmount) * partialTicks; float f6 = entity.limbSwing - entity.limbSwingAmount * (1.0F - partialTicks); if (entity.isChild()) { f6 *= 3.0F; } if (f5 > 1.0F) { f5 = 1.0F; } GlStateManager.enableAlpha(); this.mainModel.setLivingAnimations(entity, f6, f5, partialTicks); this.mainModel.setRotationAngles(f6, f5, f8, f2, f7, 0.0625F, entity); if (this.renderOutlines) { boolean flag1 = this.setScoreTeamColor(entity); this.renderModel(entity, f6, f5, f8, f2, f7, 0.0625F); if (flag1) { this.unsetScoreTeamColor(); } } else { boolean flag = this.setDoRenderBrightness(entity, partialTicks); this.renderModel(entity, f6, f5, f8, f2, f7, 0.0625F); if (flag) { this.unsetBrightness(); } GlStateManager.depthMask(true); if (!(entity instanceof EntityPlayer) || !((EntityPlayer)entity).isSpectator()) { this.renderLayers(entity, f6, f5, partialTicks, f8, f2, f7, 0.0625F); } } Rotations rotations = (Rotations)LiquidBounce.moduleManager.getModule(Rotations.class); float renderpitch = (Minecraft.getMinecraft().gameSettings.thirdPersonView != 0 && rotations.getState() && rotations.getMode().get().equals("FakeBody") && entity == Minecraft.getMinecraft().thePlayer) ? (entity.prevRotationPitch + (((RotationUtils.serverRotation.getPitch() != 0.0f) ? RotationUtils.serverRotation.getPitch() : entity.rotationPitch) - entity.prevRotationPitch)) : (entity.prevRotationPitch + (entity.rotationPitch - entity.prevRotationPitch) * partialTicks); float renderyaw = (Minecraft.getMinecraft().gameSettings.thirdPersonView != 0 && rotations.getState() && rotations.getMode().get().equals("FakeBody") && entity == Minecraft.getMinecraft().thePlayer) ? (entity.prevRotationYaw + (((RotationUtils.serverRotation.getYaw() != 0.0f) ? RotationUtils.serverRotation.getYaw() : entity.rotationYaw) - entity.prevRotationYaw)) : (entity.prevRotationYaw + (entity.rotationYaw - entity.prevRotationYaw) * partialTicks); if(rotations.getState() && rotations.getMode().get().equals("FakeBody")&&entity.equals(Minecraft.getMinecraft().thePlayer) && rotations.shouldRotate()) { //假身绘制 :/ GL11.glPushMatrix(); GL11.glPushAttrib(1048575); GL11.glDisable(2929); GL11.glDisable(3553); GL11.glDisable(3553); GL11.glEnable(3042); GL11.glBlendFunc(770,771); GL11.glDisable(2896); GL11.glPolygonMode(1032,6914); GL11.glColor4f(rotations.getR().get()/255,rotations.getG().get()/255,rotations.getB().get(),rotations.getAlpha().get()/255); GL11.glRotatef(renderyaw - f,0,0.001f,0); this.mainModel.render(Minecraft.getMinecraft().thePlayer,f6, f5, renderpitch, renderyaw - f, renderpitch,0.0625F); GL11.glEnable(2896); GL11.glDisable(3042); GL11.glEnable(3553); GL11.glEnable(2929); GL11.glColor3d(1,1,1); GL11.glPopAttrib(); GL11.glPopMatrix(); } GlStateManager.disableRescaleNormal(); } catch (Exception exception) { logger.error((String)"Couldn\'t render entity", (Throwable)exception); } GlStateManager.setActiveTexture(OpenGlHelper.lightmapTexUnit); GlStateManager.enableTexture2D(); GlStateManager.setActiveTexture(OpenGlHelper.defaultTexUnit); GlStateManager.enableCull(); GlStateManager.popMatrix(); if (!this.renderOutlines) { super.doRender(entity, x, y, z, entityYaw, partialTicks); } } @Overwrite protected <T extends EntityLivingBase> boolean setBrightness(T entitylivingbaseIn, float partialTicks, boolean combineTextures) { float f = entitylivingbaseIn.getBrightness(partialTicks); int i = this.getColorMultiplier(entitylivingbaseIn, f, partialTicks); boolean flag = (i >> 24 & 255) > 0; boolean flag1 = entitylivingbaseIn.hurtTime > 0 || entitylivingbaseIn.deathTime > 0; DMGColor DC = (DMGColor)LiquidBounce.moduleManager.getModule(DMGColor.class); if (!flag && !flag1) { return false; } else if (!flag && !combineTextures) { return false; } else { GlStateManager.setActiveTexture(OpenGlHelper.defaultTexUnit); GlStateManager.enableTexture2D(); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, GL11.GL_TEXTURE_ENV_MODE, OpenGlHelper.GL_COMBINE); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_COMBINE_RGB, GL11.GL_MODULATE); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_SOURCE0_RGB, OpenGlHelper.defaultTexUnit); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_SOURCE1_RGB, OpenGlHelper.GL_PRIMARY_COLOR); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_OPERAND0_RGB, GL11.GL_SRC_COLOR); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_OPERAND1_RGB, GL11.GL_SRC_COLOR); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_COMBINE_ALPHA, GL11.GL_REPLACE); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_SOURCE0_ALPHA, OpenGlHelper.defaultTexUnit); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_OPERAND0_ALPHA, GL11.GL_SRC_ALPHA); GlStateManager.setActiveTexture(OpenGlHelper.lightmapTexUnit); GlStateManager.enableTexture2D(); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, GL11.GL_TEXTURE_ENV_MODE, OpenGlHelper.GL_COMBINE); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_COMBINE_RGB, OpenGlHelper.GL_INTERPOLATE); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_SOURCE0_RGB, OpenGlHelper.GL_CONSTANT); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_SOURCE1_RGB, OpenGlHelper.GL_PREVIOUS); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_SOURCE2_RGB, OpenGlHelper.GL_CONSTANT); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_OPERAND0_RGB, GL11.GL_SRC_COLOR); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_OPERAND1_RGB, GL11.GL_SRC_COLOR); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_OPERAND2_RGB, GL11.GL_SRC_ALPHA); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_COMBINE_ALPHA, GL11.GL_REPLACE); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_SOURCE0_ALPHA, OpenGlHelper.GL_PREVIOUS); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_OPERAND0_ALPHA, GL11.GL_SRC_ALPHA); this.brightnessBuffer.position(0); if (flag1) { if(DC.getState()) { this.brightnessBuffer.put(DC.R.get()/255f); this.brightnessBuffer.put(DC.G.get()/255f); this.brightnessBuffer.put(DC.B.get()/255f); this.brightnessBuffer.put(DC.Alpha.get()/255f); }else{ this.brightnessBuffer.put(1.0F); this.brightnessBuffer.put(0.0F); this.brightnessBuffer.put(0.0F); this.brightnessBuffer.put(0.3F); } } else { float f1 = (float)(i >> 24 & 255) / 255.0F; float f2 = (float)(i >> 16 & 255) / 255.0F; float f3 = (float)(i >> 8 & 255) / 255.0F; float f4 = (float)(i & 255) / 255.0F; this.brightnessBuffer.put(f2); this.brightnessBuffer.put(f3); this.brightnessBuffer.put(f4); this.brightnessBuffer.put(1.0F - f1); } this.brightnessBuffer.flip(); GL11.glTexEnv(GL11.GL_TEXTURE_ENV, GL11.GL_TEXTURE_ENV_COLOR, (FloatBuffer)this.brightnessBuffer); GlStateManager.setActiveTexture(OpenGlHelper.GL_TEXTURE2); GlStateManager.enableTexture2D(); GlStateManager.bindTexture(field_177096_e.getGlTextureId()); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, GL11.GL_TEXTURE_ENV_MODE, OpenGlHelper.GL_COMBINE); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_COMBINE_RGB, GL11.GL_MODULATE); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_SOURCE0_RGB, OpenGlHelper.GL_PREVIOUS); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_SOURCE1_RGB, OpenGlHelper.lightmapTexUnit); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_OPERAND0_RGB, GL11.GL_SRC_COLOR); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_OPERAND1_RGB, GL11.GL_SRC_COLOR); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_COMBINE_ALPHA, GL11.GL_REPLACE); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_SOURCE0_ALPHA, OpenGlHelper.GL_PREVIOUS); GL11.glTexEnvi(GL11.GL_TEXTURE_ENV, OpenGlHelper.GL_OPERAND0_ALPHA, GL11.GL_SRC_ALPHA); GlStateManager.setActiveTexture(OpenGlHelper.defaultTexUnit); return true; } } /** * @author CCBlueX */ @Overwrite protected <T extends EntityLivingBase> void renderModel(T entitylivingbaseIn, float p_77036_2_, float p_77036_3_, float p_77036_4_, float p_77036_5_, float p_77036_6_, float scaleFactor) { boolean visible = !entitylivingbaseIn.isInvisible(); final TrueSight trueSight = (TrueSight) LiquidBounce.moduleManager.getModule(TrueSight.class); boolean semiVisible = !visible && (!entitylivingbaseIn.isInvisibleToPlayer(Minecraft.getMinecraft().thePlayer) || (trueSight.getState() && trueSight.getEntitiesValue().get())); if(visible || semiVisible) { if(!this.bindEntityTexture(entitylivingbaseIn)) return; if(semiVisible) { GlStateManager.pushMatrix(); GlStateManager.color(1.0F, 1.0F, 1.0F, 0.15F); GlStateManager.depthMask(false); GlStateManager.enableBlend(); GlStateManager.blendFunc(770, 771); GlStateManager.alphaFunc(516, 0.003921569F); } final ESP esp = (ESP) LiquidBounce.moduleManager.getModule(ESP.class); if(esp.getState() && EntityUtils.isSelected(entitylivingbaseIn, false)) { Minecraft mc = Minecraft.getMinecraft(); boolean fancyGraphics = mc.gameSettings.fancyGraphics; mc.gameSettings.fancyGraphics = false; float gamma = mc.gameSettings.gammaSetting; mc.gameSettings.gammaSetting = 100000F; switch(esp.modeValue.get().toLowerCase()) { case "wireframe": GL11.glPushMatrix(); GL11.glPushAttrib(GL11.GL_ALL_ATTRIB_BITS); GL11.glPolygonMode(GL11.GL_FRONT_AND_BACK, GL11.GL_LINE); GL11.glDisable(GL11.GL_TEXTURE_2D); GL11.glDisable(GL11.GL_LIGHTING); GL11.glDisable(GL11.GL_DEPTH_TEST); GL11.glEnable(GL11.GL_LINE_SMOOTH); GL11.glEnable(GL11.GL_BLEND); GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); RenderUtils.glColor(esp.getColor(entitylivingbaseIn)); GL11.glLineWidth(esp.wireframeWidth.get()); this.mainModel.render(entitylivingbaseIn, p_77036_2_, p_77036_3_, p_77036_4_, p_77036_5_, p_77036_6_, scaleFactor); GL11.glPopAttrib(); GL11.glPopMatrix(); break; case "outline": ClientUtils.disableFastRender(); GlStateManager.resetColor(); final Color color = esp.getColor(entitylivingbaseIn); OutlineUtils.setColor(color); OutlineUtils.renderOne(esp.outlineWidth.get()); this.mainModel.render(entitylivingbaseIn, p_77036_2_, p_77036_3_, p_77036_4_, p_77036_5_, p_77036_6_, scaleFactor); OutlineUtils.setColor(color); OutlineUtils.renderTwo(); this.mainModel.render(entitylivingbaseIn, p_77036_2_, p_77036_3_, p_77036_4_, p_77036_5_, p_77036_6_, scaleFactor); OutlineUtils.setColor(color); OutlineUtils.renderThree(); this.mainModel.render(entitylivingbaseIn, p_77036_2_, p_77036_3_, p_77036_4_, p_77036_5_, p_77036_6_, scaleFactor); OutlineUtils.setColor(color); OutlineUtils.renderFour(color); this.mainModel.render(entitylivingbaseIn, p_77036_2_, p_77036_3_, p_77036_4_, p_77036_5_, p_77036_6_, scaleFactor); OutlineUtils.setColor(color); OutlineUtils.renderFive(); OutlineUtils.setColor(Color.WHITE); } mc.gameSettings.fancyGraphics = fancyGraphics; mc.gameSettings.gammaSetting = gamma; } this.mainModel.render(entitylivingbaseIn, p_77036_2_, p_77036_3_, p_77036_4_, p_77036_5_, p_77036_6_, scaleFactor); if(semiVisible) { GlStateManager.disableBlend(); GlStateManager.alphaFunc(516, 0.1F); GlStateManager.popMatrix(); GlStateManager.depthMask(true); } } } }
-
Actually, I want your client
-
it cant display nametags?
-
(boolean) false