aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/core/handler
diff options
context:
space:
mode:
Diffstat (limited to 'src/Java/gtPlusPlus/core/handler')
-rw-r--r--src/Java/gtPlusPlus/core/handler/render/FirepitModel.java112
-rw-r--r--src/Java/gtPlusPlus/core/handler/render/FirepitRender.java54
2 files changed, 166 insertions, 0 deletions
diff --git a/src/Java/gtPlusPlus/core/handler/render/FirepitModel.java b/src/Java/gtPlusPlus/core/handler/render/FirepitModel.java
new file mode 100644
index 0000000000..fbc0b22690
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/handler/render/FirepitModel.java
@@ -0,0 +1,112 @@
+// Date: 20/12/2016 5:51:14 PM
+// Template version 1.1
+// Java generated by Techne
+// Keep in mind that you still need to fill in some blanks
+// - ZeuX
+
+package gtPlusPlus.core.handler.render;
+
+import net.minecraft.client.model.ModelBase;
+import net.minecraft.client.model.ModelRenderer;
+import net.minecraft.entity.Entity;
+
+public class FirepitModel extends ModelBase
+{
+ //fields
+ ModelRenderer Side_A;
+ ModelRenderer Side_B;
+ ModelRenderer Side_C;
+ ModelRenderer Side_D;
+ ModelRenderer Log1;
+ ModelRenderer Log2;
+ ModelRenderer Log3;
+ ModelRenderer Log4;
+
+ public FirepitModel()
+ {
+ textureWidth = 16;
+ textureHeight = 16;
+
+ Side_A = new ModelRenderer(this, 0, 0);
+ Side_A.addBox(0F, 0F, 0F, 12, 6, 1);
+ Side_A.setRotationPoint(-6F, 18F, -6F);
+ Side_A.setTextureSize(16, 16);
+ Side_A.mirror = true;
+ setRotation(Side_A, -0.3148822F, 0F, 0F);
+ Side_A.mirror = false;
+ Side_B = new ModelRenderer(this, 0, 0);
+ Side_B.addBox(0F, 0F, 0F, 12, 6, 1);
+ Side_B.setRotationPoint(-6F, 18F, 6F);
+ Side_B.setTextureSize(16, 16);
+ Side_B.mirror = true;
+ setRotation(Side_B, -0.3148822F, 1.570796F, 0F);
+ Side_C = new ModelRenderer(this, 0, 0);
+ Side_C.addBox(0F, 0F, 0F, 12, 6, 1);
+ Side_C.setRotationPoint(6F, 18F, 6F);
+ Side_C.setTextureSize(16, 16);
+ Side_C.mirror = true;
+ setRotation(Side_C, -0.3148822F, 3.141593F, 0F);
+ Side_C.mirror = false;
+ Side_D = new ModelRenderer(this, 0, 0);
+ Side_D.addBox(0F, 0F, 0F, 12, 6, 1);
+ Side_D.setRotationPoint(6F, 18F, -6F);
+ Side_D.setTextureSize(16, 16);
+ Side_D.mirror = true;
+ setRotation(Side_D, -0.3148822F, 4.712389F, 0F);
+ Log1 = new ModelRenderer(this, 0, 10);
+ Log1.addBox(0F, 0F, 0F, 14, 2, 2);
+ Log1.setRotationPoint(4F, 10F, -4F);
+ Log1.setTextureSize(16, 16);
+ Log1.mirror = true;
+ setRotation(Log1, 0F, 0F, 1.570796F);
+ Log2 = new ModelRenderer(this, -2, 10);
+ Log2.addBox(0F, 0F, 0F, 14, 2, 2);
+ Log2.setRotationPoint(-4F, 10F, -4F);
+ Log2.setTextureSize(16, 16);
+ Log2.mirror = true;
+ setRotation(Log2, 1.570796F, 0F, 1.570796F);
+ Log2.mirror = false;
+ Log3 = new ModelRenderer(this, 0, 10);
+ Log3.addBox(0F, 0F, 0F, 14, 2, 2);
+ Log3.setRotationPoint(-4F, 10F, 4F);
+ Log3.setTextureSize(16, 16);
+ Log3.mirror = true;
+ setRotation(Log3, 3.141593F, 0F, 1.570796F);
+ Log4 = new ModelRenderer(this, -2, 10);
+ Log4.addBox(0F, 0F, 0F, 14, 2, 2);
+ Log4.setRotationPoint(4F, 10F, 4F);
+ Log4.setTextureSize(16, 16);
+ Log4.mirror = true;
+ setRotation(Log4, 4.712389F, 0F, 1.570796F);
+ Log4.mirror = false;
+ }
+
+ @Override
+public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5)
+ {
+ super.render(entity, f, f1, f2, f3, f4, f5);
+ setRotationAngles(f, f1, f2, f3, f4, f5, entity);
+ Side_A.render(f5);
+ Side_B.render(f5);
+ Side_C.render(f5);
+ Side_D.render(f5);
+ Log1.render(f5);
+ Log2.render(f5);
+ Log3.render(f5);
+ Log4.render(f5);
+ }
+
+ private void setRotation(ModelRenderer model, float x, float y, float z)
+ {
+ model.rotateAngleX = x;
+ model.rotateAngleY = y;
+ model.rotateAngleZ = z;
+ }
+
+ @Override
+public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity entity)
+ {
+ super.setRotationAngles(f, f1, f2, f3, f4, f5, entity);
+ }
+
+}
diff --git a/src/Java/gtPlusPlus/core/handler/render/FirepitRender.java b/src/Java/gtPlusPlus/core/handler/render/FirepitRender.java
new file mode 100644
index 0000000000..16ad016b97
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/handler/render/FirepitRender.java
@@ -0,0 +1,54 @@
+package gtPlusPlus.core.handler.render;
+
+import net.minecraft.block.Block;
+import net.minecraft.client.renderer.OpenGlHelper;
+import net.minecraft.client.renderer.Tessellator;
+import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
+import net.minecraft.entity.Entity;
+import net.minecraft.tileentity.TileEntity;
+import net.minecraft.util.ResourceLocation;
+import net.minecraft.world.World;
+
+import org.lwjgl.opengl.GL11;
+public class FirepitRender extends TileEntitySpecialRenderer{
+ ResourceLocation texture = new ResourceLocation("miscutils" + ":"+ "textures/blocks/FirePit/mossyFirepit.png");
+
+ private FirepitModel model;
+
+ public FirepitRender(){
+ this.model = new FirepitModel();
+ }
+
+ private void adjustRotatePivotViaMeta(World world, int x, int y, int z) {
+ int meta = world.getBlockMetadata(x, y, z);
+ GL11.glPushMatrix();
+ GL11.glRotatef(meta * (-90), 0.0F, 0.0F, 1.0F);
+ GL11.glPopMatrix();
+ }
+
+ @Override
+ public void renderTileEntityAt(TileEntity entity, double x, double y, double z, float i) {
+ GL11.glPushMatrix();
+ GL11.glTranslatef((float)x + 0.1F, (float)y + 1.0F, (float)z + 0.5F);
+ GL11.glRotatef(180, 0F, 0F, 1F);
+
+ this.bindTexture(texture);
+ GL11.glPushMatrix();
+ this.model.render((Entity)null, 0.0F, 0.0F, -0.1F, 0.0F, 0.0F, 0.0625F);
+ GL11.glPopMatrix();
+ GL11.glPopMatrix();
+ }
+
+ //Set the lighting stuff, so it changes it's brightness properly.
+ private void adjustLightFixture(World world, int i, int j, int k, Block block) {
+ Tessellator tess = Tessellator.instance;
+ //float brightness = block.getBlockBrightness(world, i, j, k);
+ //As of MC 1.7+ block.getBlockBrightness() has become block.getLightValue():
+ float brightness = block.getLightValue(world, i, j, k);
+ int skyLight = world.getLightBrightnessForSkyBlocks(i, j, k, 0);
+ int modulousModifier = skyLight % 65536;
+ int divModifier = skyLight / 65536;
+ tess.setColorOpaque_F(brightness, brightness, brightness);
+ OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, (float) modulousModifier, divModifier);
+ }
+}