Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package micdoodle8.mods.galacticraft.core.client.render.entities;
- import api.player.model.ModelPlayer;
- import api.player.render.RenderPlayerAPI;
- import api.player.render.RenderPlayerBase;
- import cpw.mods.fml.client.FMLClientHandler;
- import cpw.mods.fml.common.eventhandler.EventBus;
- import java.util.Map;
- import micdoodle8.mods.galacticraft.api.prefab.entity.EntityTieredRocket;
- import micdoodle8.mods.galacticraft.api.world.IGalacticraftWorldProvider;
- import micdoodle8.mods.galacticraft.core.GalacticraftCore;
- import micdoodle8.mods.galacticraft.core.client.model.ModelPlayerBaseGC;
- import micdoodle8.mods.galacticraft.core.proxy.ClientProxyCore;
- import micdoodle8.mods.galacticraft.core.wrappers.PlayerGearData;
- import net.minecraft.client.Minecraft;
- import net.minecraft.client.entity.AbstractClientPlayer;
- import net.minecraft.client.model.ModelBiped;
- import net.minecraft.client.renderer.entity.RenderPlayer;
- import net.minecraft.client.renderer.texture.TextureManager;
- import net.minecraft.client.settings.GameSettings;
- import net.minecraft.entity.EntityLivingBase;
- import net.minecraft.entity.player.EntityPlayer;
- import net.minecraft.util.ResourceLocation;
- import net.minecraft.world.World;
- import net.minecraftforge.common.MinecraftForge;
- import org.lwjgl.opengl.GL11;
- public class RenderPlayerBaseGC
- extends RenderPlayerBase
- {
- public ModelPlayer modelThermalPadding;
- public ModelPlayer modelThermalPaddingHelmet;
- private static ResourceLocation thermalPaddingTexture0;
- private static ResourceLocation thermalPaddingTexture1;
- public RenderPlayerBaseGC(RenderPlayerAPI renderPlayerAPI)
- {
- super(renderPlayerAPI);
- this.modelThermalPadding = new ModelPlayer(0.25F);
- this.modelThermalPaddingHelmet = new ModelPlayer(0.9F);
- if (GalacticraftCore.isPlanetsLoaded)
- {
- thermalPaddingTexture0 = new ResourceLocation("galacticraftasteroids", "textures/misc/thermalPadding_0.png");
- thermalPaddingTexture1 = new ResourceLocation("galacticraftasteroids", "textures/misc/thermalPadding_1.png");
- }
- }
- public void renderModel(EntityLivingBase par1EntityLivingBase, float par2, float par3, float par4, float par5, float par6, float par7)
- {
- super.renderModel(par1EntityLivingBase, par2, par3, par4, par5, par6, par7);
- if (thermalPaddingTexture0 != null)
- {
- PlayerGearData gearData = (PlayerGearData)ClientProxyCore.playerItemData.get(par1EntityLivingBase.func_70005_c_());
- if ((gearData != null) && (!RenderPlayerGC.flagThermalOverride)) {
- for (int i = 0; i < 4; i++)
- {
- ModelBiped modelBiped;
- ModelBiped modelBiped;
- if (i == 0) {
- modelBiped = this.modelThermalPaddingHelmet;
- } else {
- modelBiped = this.modelThermalPadding;
- }
- int padding = gearData.getThermalPadding(i);
- if ((padding >= 0) && (!par1EntityLivingBase.func_82150_aj()))
- {
- GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
- FMLClientHandler.instance().getClient().func_110434_K().func_110577_a(thermalPaddingTexture1);
- modelBiped.field_78116_c.field_78806_j = (i == 0);
- modelBiped.field_78114_d.field_78806_j = (i == 0);
- modelBiped.field_78115_e.field_78806_j = ((i == 1) || (i == 2));
- modelBiped.field_78112_f.field_78806_j = (i == 1);
- modelBiped.field_78113_g.field_78806_j = (i == 1);
- modelBiped.field_78123_h.field_78806_j = ((i == 2) || (i == 3));
- modelBiped.field_78124_i.field_78806_j = ((i == 2) || (i == 3));
- modelBiped.field_78095_p = this.renderPlayer.field_77109_a.field_78095_p;
- modelBiped.field_78093_q = this.renderPlayer.field_77109_a.field_78093_q;
- modelBiped.field_78091_s = this.renderPlayer.field_77109_a.field_78091_s;
- if (this.renderPlayer.field_77109_a != null)
- {
- modelBiped.field_78119_l = this.renderPlayer.field_77109_a.field_78119_l;
- modelBiped.field_78120_m = this.renderPlayer.field_77109_a.field_78120_m;
- modelBiped.field_78117_n = this.renderPlayer.field_77109_a.field_78117_n;
- modelBiped.field_78118_o = this.renderPlayer.field_77109_a.field_78118_o;
- }
- modelBiped.func_78086_a(par1EntityLivingBase, par2, par3, 0.0F);
- modelBiped.func_78088_a(par1EntityLivingBase, par2, par3, par4, par5, par6, par7);
- GL11.glDisable(2896);
- FMLClientHandler.instance().getClient().func_110434_K().func_110577_a(thermalPaddingTexture0);
- GL11.glEnable(3008);
- GL11.glEnable(3042);
- GL11.glAlphaFunc(516, 0.0F);
- GL11.glBlendFunc(770, 771);
- float time = par1EntityLivingBase.field_70173_aa / 10.0F;
- float sTime = (float)Math.sin(time) * 0.5F + 0.5F;
- float r = 0.2F * sTime;
- float g = 1.0F * sTime;
- float b = 0.2F * sTime;
- if ((par1EntityLivingBase.field_70170_p.field_73011_w instanceof IGalacticraftWorldProvider))
- {
- float modifier = ((IGalacticraftWorldProvider)par1EntityLivingBase.field_70170_p.field_73011_w).getThermalLevelModifier();
- if (modifier > 0.0F)
- {
- b = g;
- g = r;
- }
- else if (modifier < 0.0F)
- {
- r = g;
- g = b;
- }
- }
- GL11.glColor4f(r, g, b, 0.4F * sTime);
- modelBiped.func_78088_a(par1EntityLivingBase, par2, par3, par4, par5, par6, par7);
- GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
- GL11.glDisable(3042);
- GL11.glEnable(3008);
- GL11.glEnable(2896);
- }
- }
- }
- }
- }
- public void rotatePlayer(AbstractClientPlayer par1AbstractClientPlayer, float par2, float par3, float par4)
- {
- if ((par1AbstractClientPlayer.func_70089_S()) && (par1AbstractClientPlayer.func_70608_bn()))
- {
- RenderPlayerGC.RotatePlayerEvent event = new RenderPlayerGC.RotatePlayerEvent(par1AbstractClientPlayer);
- MinecraftForge.EVENT_BUS.post(event);
- if (!event.vanillaOverride)
- {
- GL11.glRotatef(par1AbstractClientPlayer.func_71051_bG(), 0.0F, 1.0F, 0.0F);
- GL11.glRotatef(getDeathMaxRotation(par1AbstractClientPlayer), 0.0F, 0.0F, 1.0F);
- GL11.glRotatef(270.0F, 0.0F, 1.0F, 0.0F);
- GL11.glTranslatef(0.0F, 0.0F, ModelPlayerBaseGC.isSmartMovingLoaded ? 3.0F : 2.0F);
- }
- else if ((event.shouldRotate == null) || (event.shouldRotate.booleanValue()))
- {
- GL11.glRotatef(par1AbstractClientPlayer.func_71051_bG(), 0.0F, 1.0F, 0.0F);
- }
- }
- else
- {
- if (((par1AbstractClientPlayer instanceof EntityPlayer)) && (Minecraft.func_71410_x().field_71474_y.field_74320_O != 0))
- {
- EntityPlayer player = par1AbstractClientPlayer;
- if ((player.field_70154_o instanceof EntityTieredRocket))
- {
- EntityTieredRocket rocket = (EntityTieredRocket)player.field_70154_o;
- GL11.glTranslatef(0.0F, -rocket.getRotateOffset(), 0.0F);
- float anglePitch = rocket.field_70127_C;
- float angleYaw = rocket.field_70126_B;
- GL11.glRotatef(-angleYaw, 0.0F, 1.0F, 0.0F);
- GL11.glRotatef(anglePitch, 0.0F, 0.0F, 1.0F);
- GL11.glTranslatef(0.0F, rocket.getRotateOffset(), 0.0F);
- }
- }
- super.rotatePlayer(par1AbstractClientPlayer, par2, par3, par4);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement