aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/core/client/renderer
diff options
context:
space:
mode:
authorAlkalus <3060479+draknyte1@users.noreply.github.com>2018-05-24 05:10:32 +1000
committerAlkalus <3060479+draknyte1@users.noreply.github.com>2018-05-24 05:10:32 +1000
commit7a632048aae20cb62470adc6be0700f092f3893f (patch)
treefb14c0c37338bc5e9d5387fd59dadc670ffe8ff7 /src/Java/gtPlusPlus/core/client/renderer
parent41e94c991ba39a7a466b67a13f346461b26ce3c1 (diff)
downloadGT5-Unofficial-7a632048aae20cb62470adc6be0700f092f3893f.tar.gz
GT5-Unofficial-7a632048aae20cb62470adc6be0700f092f3893f.tar.bz2
GT5-Unofficial-7a632048aae20cb62470adc6be0700f092f3893f.zip
+ Added Giant Chicken.
+ Added Big Eggs. - Removed Segment Analytics entirely.
Diffstat (limited to 'src/Java/gtPlusPlus/core/client/renderer')
-rw-r--r--src/Java/gtPlusPlus/core/client/renderer/RenderGiantChicken.java116
1 files changed, 116 insertions, 0 deletions
diff --git a/src/Java/gtPlusPlus/core/client/renderer/RenderGiantChicken.java b/src/Java/gtPlusPlus/core/client/renderer/RenderGiantChicken.java
new file mode 100644
index 0000000000..b3d1ce21fc
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/client/renderer/RenderGiantChicken.java
@@ -0,0 +1,116 @@
+package gtPlusPlus.core.client.renderer;
+
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import net.minecraft.client.model.ModelBase;
+import net.minecraft.client.renderer.entity.RenderChicken;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.EntityLiving;
+import net.minecraft.entity.EntityLivingBase;
+import net.minecraft.entity.passive.EntityChicken;
+import net.minecraft.util.MathHelper;
+import net.minecraft.util.ResourceLocation;
+
+import gtPlusPlus.core.util.reflect.ReflectionUtils;
+
+@SideOnly(Side.CLIENT)
+public class RenderGiantChicken extends RenderChicken {
+
+ /**
+ * Fancy reflective handling of nabbing the original chicken texture object, should save reload the texture to memory. :)
+ */
+ private static final ResourceLocation chickenTexturesEx;
+ static {
+ ResourceLocation mChicken;
+ try {
+ mChicken = (ResourceLocation) ReflectionUtils.getField(RenderGiantChicken.class, "chickenTextures").get(null);
+ }
+ catch (IllegalArgumentException | IllegalAccessException | NoSuchFieldException e) {
+ mChicken = new ResourceLocation("textures/entity/chicken.png");
+ }
+ chickenTexturesEx = mChicken;
+ }
+
+ public RenderGiantChicken(ModelBase p_i1252_1_, float p_i1252_2_)
+ {
+ super(p_i1252_1_, p_i1252_2_);
+ }
+
+ /**
+ * Actually renders the given argument. This is a synthetic bridge method, always casting down its argument and then
+ * handing it off to a worker function which does the actual work. In all probabilty, the class Render is generic
+ * (Render<T extends Entity) and this method has signature public void func_76986_a(T entity, double d, double d1,
+ * double d2, float f, float f1). But JAD is pre 1.5 so doesn't do that.
+ */
+ public void doRender(EntityChicken p_76986_1_, double p_76986_2_, double p_76986_4_, double p_76986_6_, float p_76986_8_, float p_76986_9_)
+ {
+ super.doRender((EntityLiving)p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
+ }
+
+ /**
+ * Returns the location of an entity's texture. Doesn't seem to be called unless you call Render.bindEntityTexture.
+ */
+ protected ResourceLocation getEntityTexture(EntityChicken p_110775_1_)
+ {
+ return chickenTexturesEx;
+ }
+
+ /**
+ * Defines what float the third param in setRotationAngles of ModelBase is
+ */
+ protected float handleRotationFloat(EntityChicken p_77044_1_, float p_77044_2_)
+ {
+ float f1 = p_77044_1_.field_70888_h + (p_77044_1_.field_70886_e - p_77044_1_.field_70888_h) * p_77044_2_;
+ float f2 = p_77044_1_.field_70884_g + (p_77044_1_.destPos - p_77044_1_.field_70884_g) * p_77044_2_;
+ return (MathHelper.sin(f1) + 1.0F) * f2;
+ }
+
+ /**
+ * Actually renders the given argument. This is a synthetic bridge method, always casting down its argument and then
+ * handing it off to a worker function which does the actual work. In all probabilty, the class Render is generic
+ * (Render<T extends Entity) and this method has signature public void func_76986_a(T entity, double d, double d1,
+ * double d2, float f, float f1). But JAD is pre 1.5 so doesn't do that.
+ */
+ public void doRender(EntityLiving p_76986_1_, double p_76986_2_, double p_76986_4_, double p_76986_6_, float p_76986_8_, float p_76986_9_)
+ {
+ this.doRender((EntityChicken)p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
+ }
+
+ /**
+ * Defines what float the third param in setRotationAngles of ModelBase is
+ */
+ protected float handleRotationFloat(EntityLivingBase p_77044_1_, float p_77044_2_)
+ {
+ return this.handleRotationFloat((EntityChicken)p_77044_1_, p_77044_2_);
+ }
+
+ /**
+ * Actually renders the given argument. This is a synthetic bridge method, always casting down its argument and then
+ * handing it off to a worker function which does the actual work. In all probabilty, the class Render is generic
+ * (Render<T extends Entity) and this method has signature public void func_76986_a(T entity, double d, double d1,
+ * double d2, float f, float f1). But JAD is pre 1.5 so doesn't do that.
+ */
+ public void doRender(EntityLivingBase p_76986_1_, double p_76986_2_, double p_76986_4_, double p_76986_6_, float p_76986_8_, float p_76986_9_)
+ {
+ this.doRender((EntityChicken)p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
+ }
+
+ /**
+ * Returns the location of an entity's texture. Doesn't seem to be called unless you call Render.bindEntityTexture.
+ */
+ protected ResourceLocation getEntityTexture(Entity p_110775_1_)
+ {
+ return this.getEntityTexture((EntityChicken)p_110775_1_);
+ }
+
+ /**
+ * Actually renders the given argument. This is a synthetic bridge method, always casting down its argument and then
+ * handing it off to a worker function which does the actual work. In all probabilty, the class Render is generic
+ * (Render<T extends Entity) and this method has signature public void func_76986_a(T entity, double d, double d1,
+ * double d2, float f, float f1). But JAD is pre 1.5 so doesn't do that.
+ */
+ public void doRender(Entity p_76986_1_, double p_76986_2_, double p_76986_4_, double p_76986_6_, float p_76986_8_, float p_76986_9_)
+ {
+ this.doRender((EntityChicken)p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
+ }
+} \ No newline at end of file