From 7a632048aae20cb62470adc6be0700f092f3893f Mon Sep 17 00:00:00 2001 From: Alkalus <3060479+draknyte1@users.noreply.github.com> Date: Thu, 24 May 2018 05:10:32 +1000 Subject: + Added Giant Chicken. + Added Big Eggs. - Removed Segment Analytics entirely. --- .../core/client/renderer/RenderGiantChicken.java | 116 +++++++++++++++++++++ 1 file changed, 116 insertions(+) create mode 100644 src/Java/gtPlusPlus/core/client/renderer/RenderGiantChicken.java (limited to 'src/Java/gtPlusPlus/core/client/renderer') 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