use of omtteam.openmodularturrets.tileentity.turrets.DisposableItemTurretTileEntity in project OpenModularTurrets by OpenModularTurretsTeam.
the class DisposableItemTurretRenderer method renderTileEntityAt.
@SuppressWarnings("ConstantConditions")
@Override
@SideOnly(Side.CLIENT)
public void renderTileEntityAt(TileEntity te, double x, double y, double z, float scale, int destroyStage) {
DisposableItemTurretTileEntity turretHead = (DisposableItemTurretTileEntity) te;
int rotation;
ResourceLocation textures = (new ResourceLocation(Reference.MOD_ID + ":textures/blocks/dispose_item_turret.png"));
Minecraft.getMinecraft().renderEngine.bindTexture(textures);
GL11.glPushMatrix();
GL11.glTranslatef((float) x + 0.5F, (float) y + 1.5F, (float) z + 0.5F);
if (te == null) {
GL11.glScalef(0.7F, -0.7F, -0.7F);
GL11.glTranslatef((float) x + 0.0F, (float) y + 0.4F, (float) z + 0.5F);
GL11.glRotatef(45.0F, 2.5F, -4.5F, -1.0F);
model.renderAll();
GL11.glPopMatrix();
return;
}
if (turretHead.shouldConceal) {
GL11.glPopMatrix();
return;
}
if (te.getWorld() != null) {
rotation = te.getBlockMetadata();
GL11.glRotatef(rotation * 90, 0.0F, 1.0F, 0.0F);
GL11.glScalef(1.0F, -1F, -1F);
model.setRotationForTarget(turretHead.rotationXY, turretHead.rotationXZ);
model.Base.rotateAngleX = turretHead.baseFitRotationX;
model.Base.rotateAngleY = turretHead.baseFitRotationZ;
model.Pole.rotateAngleX = turretHead.baseFitRotationX;
model.Pole.rotateAngleY = turretHead.baseFitRotationZ;
model.BoxUnder.rotateAngleX = turretHead.baseFitRotationX;
}
model.renderAll();
if (turretHead.getBase() != null) {
if (TurretHeadUtil.hasSolarPanelAddon(turretHead.getBase())) {
ResourceLocation texturesSolar = (new ResourceLocation(Reference.MOD_ID + ":textures/blocks/addon_solar_panel.png"));
Minecraft.getMinecraft().renderEngine.bindTexture(texturesSolar);
solar.setRotationForTarget(turretHead.rotationXY, turretHead.rotationXZ);
solar.renderAll();
}
if (TurretHeadUtil.hasDamageAmpAddon(turretHead.getBase())) {
ResourceLocation texturesAmp = (new ResourceLocation(Reference.MOD_ID + ":textures/blocks/addon_damage_amp.png"));
Minecraft.getMinecraft().renderEngine.bindTexture(texturesAmp);
amp.setRotationForTarget(turretHead.rotationXY, turretHead.rotationXZ);
amp.renderAll();
}
if (TurretHeadUtil.hasRedstoneReactor(turretHead.getBase())) {
ResourceLocation texturesReac = (new ResourceLocation(Reference.MOD_ID + ":textures/blocks/addon_redstone_reactor.png"));
Minecraft.getMinecraft().renderEngine.bindTexture(texturesReac);
reac.setRotationForTarget(turretHead.rotationXY, turretHead.rotationXZ);
reac.renderAll();
}
}
GL11.glPopMatrix();
}
Aggregations