mirror of
https://github.com/HbmMods/Hbm-s-Nuclear-Tech-GIT.git
synced 2026-01-25 10:32:49 +00:00
203 lines
8.3 KiB
Java
203 lines
8.3 KiB
Java
package com.hbm.render;
|
|
|
|
import org.lwjgl.opengl.GL11;
|
|
|
|
import com.hbm.blocks.TileEntityLaunchPad;
|
|
import com.hbm.lib.RefStrings;
|
|
|
|
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
|
|
import net.minecraft.tileentity.TileEntity;
|
|
import net.minecraft.util.ResourceLocation;
|
|
import net.minecraftforge.client.model.AdvancedModelLoader;
|
|
import net.minecraftforge.client.model.IModelCustom;
|
|
|
|
public class RenderLaunchPadTier1 extends TileEntitySpecialRenderer {
|
|
|
|
private static final ResourceLocation objTesterModelRL = new ResourceLocation(/*"/assets/" + */RefStrings.MODID, "models/LaunchPad.obj");
|
|
private static final ResourceLocation missileGenericModel = new ResourceLocation(/*"/assets/" + */RefStrings.MODID, "models/MissileV2.obj");
|
|
private static final ResourceLocation missileStrongModel = new ResourceLocation(/*"/assets/" + */RefStrings.MODID, "models/MissileGeneric.obj");
|
|
private static final ResourceLocation missileHugeModel = new ResourceLocation(/*"/assets/" + */RefStrings.MODID, "models/MissileHuge.obj");
|
|
private static final ResourceLocation missileNuclearModel = new ResourceLocation(/*"/assets/" + */RefStrings.MODID, "models/MissileNuke.obj");
|
|
private static final ResourceLocation missileMirvModel = new ResourceLocation(/*"/assets/" + */RefStrings.MODID, "models/MissileMirv.obj");
|
|
private static final ResourceLocation missileThermoModel = new ResourceLocation(/*"/assets/" + */RefStrings.MODID, "models/MissileThermal.obj");
|
|
private IModelCustom padModel;
|
|
private IModelCustom missileGeneric;
|
|
private IModelCustom missileStrong;
|
|
private IModelCustom missileHuge;
|
|
private IModelCustom missileNuclear;
|
|
private IModelCustom missileMirv;
|
|
private IModelCustom missileThermo;
|
|
private ResourceLocation padTexture;
|
|
private ResourceLocation missileGenericTexture;
|
|
private ResourceLocation missileIncendiaryTexture;
|
|
private ResourceLocation missileClusterTexture;
|
|
private ResourceLocation missileBusterTexture;
|
|
private ResourceLocation missileStrongTexture;
|
|
private ResourceLocation missileStrongIncendiaryTexture;
|
|
private ResourceLocation missileStrongClusterTexture;
|
|
private ResourceLocation missileStrongBusterTexture;
|
|
private ResourceLocation missileHugeTexture;
|
|
private ResourceLocation missileHugeIncendiaryTexture;
|
|
private ResourceLocation missileHugeClusterTexture;
|
|
private ResourceLocation missileHugeBusterTexture;
|
|
private ResourceLocation missileNuclearTexture;
|
|
private ResourceLocation missileMirvTexture;
|
|
private ResourceLocation missileThermoEndoTexture;
|
|
private ResourceLocation missileThermoExoTexture;
|
|
|
|
public RenderLaunchPadTier1()
|
|
{
|
|
padModel = AdvancedModelLoader.loadModel(objTesterModelRL);
|
|
missileGeneric = AdvancedModelLoader.loadModel(missileGenericModel);
|
|
missileStrong = AdvancedModelLoader.loadModel(missileStrongModel);
|
|
missileHuge = AdvancedModelLoader.loadModel(missileHugeModel);
|
|
missileNuclear = AdvancedModelLoader.loadModel(missileNuclearModel);
|
|
missileMirv = AdvancedModelLoader.loadModel(missileMirvModel);
|
|
missileThermo = AdvancedModelLoader.loadModel(missileThermoModel);
|
|
padTexture = new ResourceLocation(RefStrings.MODID, "textures/models/TheGadget3_.png");
|
|
missileGenericTexture = new ResourceLocation(RefStrings.MODID, "textures/models/MissileV2.png");
|
|
missileIncendiaryTexture = new ResourceLocation(RefStrings.MODID, "textures/models/MissileIncendiary.png");
|
|
missileClusterTexture = new ResourceLocation(RefStrings.MODID, "textures/models/MissileCluster.png");
|
|
missileBusterTexture = new ResourceLocation(RefStrings.MODID, "textures/models/MissileBuster.png");
|
|
missileStrongTexture = new ResourceLocation(RefStrings.MODID, "textures/models/MissileGeneric.png");
|
|
missileStrongIncendiaryTexture = new ResourceLocation(RefStrings.MODID, "textures/models/MissileGenericIncendiary.png");
|
|
missileStrongClusterTexture = new ResourceLocation(RefStrings.MODID, "textures/models/MissileGenericCluster.png");
|
|
missileStrongBusterTexture = new ResourceLocation(RefStrings.MODID, "textures/models/MissileGenericBuster.png");
|
|
missileHugeTexture = new ResourceLocation(RefStrings.MODID, "textures/models/MissileHuge.png");
|
|
missileHugeIncendiaryTexture = new ResourceLocation(RefStrings.MODID, "textures/models/MissileHugeIncendiary.png");
|
|
missileHugeClusterTexture = new ResourceLocation(RefStrings.MODID, "textures/models/MissileHugeCluster.png");
|
|
missileHugeBusterTexture = new ResourceLocation(RefStrings.MODID, "textures/models/MissileHugeBuster.png");
|
|
missileNuclearTexture = new ResourceLocation(RefStrings.MODID, "textures/models/MissileNuke.png");
|
|
missileMirvTexture = new ResourceLocation(RefStrings.MODID, "textures/models/MissileMirv.png");
|
|
missileThermoEndoTexture = new ResourceLocation(RefStrings.MODID, "textures/models/MissileThermalEndo.png");
|
|
missileThermoExoTexture = new ResourceLocation(RefStrings.MODID, "textures/models/MissileThermalExo.png");
|
|
}
|
|
|
|
@Override
|
|
public void renderTileEntityAt(TileEntity tileEntity, double x, double y, double z, float f)
|
|
{
|
|
GL11.glPushMatrix();
|
|
GL11.glTranslated(x + 0.5D, y, z + 0.5D);
|
|
GL11.glEnable(GL11.GL_LIGHTING);
|
|
switch(tileEntity.getBlockMetadata())
|
|
{
|
|
case 5:
|
|
GL11.glRotatef(90, 0F, 1F, 0F); break;
|
|
case 2:
|
|
GL11.glRotatef(180, 0F, 1F, 0F); break;
|
|
case 4:
|
|
GL11.glRotatef(270, 0F, 1F, 0F); break;
|
|
case 3:
|
|
GL11.glRotatef(0, 0F, 1F, 0F); break;
|
|
}
|
|
|
|
bindTexture(padTexture);
|
|
padModel.renderAll();
|
|
|
|
//if(((TileEntityLaunchPad)tileEntity).getThatWorld().isRemote)
|
|
{
|
|
GL11.glTranslated(0, 0.5, 0);
|
|
|
|
if(((TileEntityLaunchPad)tileEntity).state == 1)
|
|
{
|
|
GL11.glScalef(1.0F, 1.0F, 1.0F);
|
|
bindTexture(missileGenericTexture);
|
|
missileGeneric.renderAll();
|
|
}
|
|
if(((TileEntityLaunchPad)tileEntity).state == 2)
|
|
{
|
|
GL11.glScalef(1.5F, 1.5F, 1.5F);
|
|
bindTexture(missileStrongTexture);
|
|
missileStrong.renderAll();
|
|
}
|
|
if(((TileEntityLaunchPad)tileEntity).state == 3)
|
|
{
|
|
GL11.glScalef(1.0F, 1.0F, 1.0F);
|
|
bindTexture(missileClusterTexture);
|
|
missileGeneric.renderAll();
|
|
}
|
|
if(((TileEntityLaunchPad)tileEntity).state == 4)
|
|
{
|
|
GL11.glScalef(1.5F, 1.5F, 1.5F);
|
|
bindTexture(missileNuclearTexture);
|
|
missileNuclear.renderAll();
|
|
}
|
|
if(((TileEntityLaunchPad)tileEntity).state == 5)
|
|
{
|
|
GL11.glScalef(1.0F, 1.0F, 1.0F);
|
|
bindTexture(missileIncendiaryTexture);
|
|
missileGeneric.renderAll();
|
|
}
|
|
if(((TileEntityLaunchPad)tileEntity).state == 6)
|
|
{
|
|
GL11.glScalef(1.0F, 1.0F, 1.0F);
|
|
bindTexture(missileBusterTexture);
|
|
missileGeneric.renderAll();
|
|
}
|
|
if(((TileEntityLaunchPad)tileEntity).state == 7)
|
|
{
|
|
GL11.glScalef(1.5F, 1.5F, 1.5F);
|
|
bindTexture(missileStrongIncendiaryTexture);
|
|
missileStrong.renderAll();
|
|
}
|
|
if(((TileEntityLaunchPad)tileEntity).state == 8)
|
|
{
|
|
GL11.glScalef(1.5F, 1.5F, 1.5F);
|
|
bindTexture(missileStrongClusterTexture);
|
|
missileStrong.renderAll();
|
|
}
|
|
if(((TileEntityLaunchPad)tileEntity).state == 9)
|
|
{
|
|
GL11.glScalef(1.5F, 1.5F, 1.5F);
|
|
bindTexture(missileStrongBusterTexture);
|
|
missileStrong.renderAll();
|
|
}
|
|
if(((TileEntityLaunchPad)tileEntity).state == 10)
|
|
{
|
|
GL11.glScalef(2.0F, 2.0F, 2.0F);
|
|
bindTexture(missileHugeTexture);
|
|
missileHuge.renderAll();
|
|
}
|
|
if(((TileEntityLaunchPad)tileEntity).state == 11)
|
|
{
|
|
GL11.glScalef(2.0F, 2.0F, 2.0F);
|
|
bindTexture(missileHugeIncendiaryTexture);
|
|
missileHuge.renderAll();
|
|
}
|
|
if(((TileEntityLaunchPad)tileEntity).state == 12)
|
|
{
|
|
GL11.glScalef(2.0F, 2.0F, 2.0F);
|
|
bindTexture(missileHugeClusterTexture);
|
|
missileHuge.renderAll();
|
|
}
|
|
if(((TileEntityLaunchPad)tileEntity).state == 13)
|
|
{
|
|
GL11.glScalef(2.0F, 2.0F, 2.0F);
|
|
bindTexture(missileHugeBusterTexture);
|
|
missileHuge.renderAll();
|
|
}
|
|
if(((TileEntityLaunchPad)tileEntity).state == 14)
|
|
{
|
|
GL11.glScalef(1.5F, 1.5F, 1.5F);
|
|
bindTexture(missileThermoEndoTexture);
|
|
missileThermo.renderAll();
|
|
}
|
|
if(((TileEntityLaunchPad)tileEntity).state == 15)
|
|
{
|
|
GL11.glScalef(1.5F, 1.5F, 1.5F);
|
|
bindTexture(missileThermoExoTexture);
|
|
missileThermo.renderAll();
|
|
}
|
|
if(((TileEntityLaunchPad)tileEntity).state == 16)
|
|
{
|
|
GL11.glScalef(2F, 2F, 2F);
|
|
bindTexture(missileMirvTexture);
|
|
missileMirv.renderAll();
|
|
}
|
|
}
|
|
|
|
GL11.glPopMatrix();
|
|
}
|
|
|
|
}
|