aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlkalus <3060479+draknyte1@users.noreply.github.com>2018-05-24 09:56:23 +1000
committerAlkalus <3060479+draknyte1@users.noreply.github.com>2018-05-24 09:56:23 +1000
commit37271be246f94eb81c909be45403ee377d7228c3 (patch)
treef58e1b4a135b1c00d5d2d79aa6436aa014c1e0e0
parent81ab0e2ef5e9b4c3121ea23ee597e71fffda5d69 (diff)
downloadGT5-Unofficial-37271be246f94eb81c909be45403ee377d7228c3.tar.gz
GT5-Unofficial-37271be246f94eb81c909be45403ee377d7228c3.tar.bz2
GT5-Unofficial-37271be246f94eb81c909be45403ee377d7228c3.zip
+ Added base framework for wearables. (Clothing/Armour).
$ Fixed issue with Giant Chicken Renderer.
-rw-r--r--src/Java/gtPlusPlus/core/client/renderer/RenderGiantChicken.java20
-rw-r--r--src/Java/gtPlusPlus/core/item/ModItems.java6
-rw-r--r--src/Java/gtPlusPlus/core/item/wearable/WearableLoader.java15
-rw-r--r--src/Java/gtPlusPlus/core/item/wearable/armour/ArmourLoader.java29
-rw-r--r--src/Java/gtPlusPlus/core/item/wearable/armour/base/BaseArmour.java11
-rw-r--r--src/Java/gtPlusPlus/core/item/wearable/armour/base/BaseArmourBoots.java10
-rw-r--r--src/Java/gtPlusPlus/core/item/wearable/armour/base/BaseArmourChest.java10
-rw-r--r--src/Java/gtPlusPlus/core/item/wearable/armour/base/BaseArmourHelm.java10
-rw-r--r--src/Java/gtPlusPlus/core/item/wearable/armour/base/BaseArmourLegs.java10
-rw-r--r--src/Java/gtPlusPlus/core/item/wearable/base/BaseItemWearable.java71
-rw-r--r--src/Java/gtPlusPlus/core/material/MaterialGenerator.java4
11 files changed, 181 insertions, 15 deletions
diff --git a/src/Java/gtPlusPlus/core/client/renderer/RenderGiantChicken.java b/src/Java/gtPlusPlus/core/client/renderer/RenderGiantChicken.java
index b3d1ce21fc..d3c1e852d9 100644
--- a/src/Java/gtPlusPlus/core/client/renderer/RenderGiantChicken.java
+++ b/src/Java/gtPlusPlus/core/client/renderer/RenderGiantChicken.java
@@ -7,10 +7,10 @@ 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.entity.monster.EntityGiantChickenBase;
import gtPlusPlus.core.util.reflect.ReflectionUtils;
@SideOnly(Side.CLIENT)
@@ -42,15 +42,15 @@ public class RenderGiantChicken extends RenderChicken {
* (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_)
+ public void doRender(EntityGiantChickenBase 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_);
+ this.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_)
+ protected ResourceLocation getEntityTexture(EntityGiantChickenBase p_110775_1_)
{
return chickenTexturesEx;
}
@@ -58,7 +58,7 @@ public class RenderGiantChicken extends RenderChicken {
/**
* Defines what float the third param in setRotationAngles of ModelBase is
*/
- protected float handleRotationFloat(EntityChicken p_77044_1_, float p_77044_2_)
+ protected float handleRotationFloat(EntityGiantChickenBase 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_;
@@ -73,7 +73,7 @@ public class RenderGiantChicken extends RenderChicken {
*/
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_);
+ this.doRender((EntityGiantChickenBase)p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
}
/**
@@ -81,7 +81,7 @@ public class RenderGiantChicken extends RenderChicken {
*/
protected float handleRotationFloat(EntityLivingBase p_77044_1_, float p_77044_2_)
{
- return this.handleRotationFloat((EntityChicken)p_77044_1_, p_77044_2_);
+ return this.handleRotationFloat((EntityGiantChickenBase)p_77044_1_, p_77044_2_);
}
/**
@@ -92,7 +92,7 @@ public class RenderGiantChicken extends RenderChicken {
*/
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_);
+ this.doRender((EntityGiantChickenBase)p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
}
/**
@@ -100,7 +100,7 @@ public class RenderGiantChicken extends RenderChicken {
*/
protected ResourceLocation getEntityTexture(Entity p_110775_1_)
{
- return this.getEntityTexture((EntityChicken)p_110775_1_);
+ return this.getEntityTexture((EntityGiantChickenBase)p_110775_1_);
}
/**
@@ -111,6 +111,6 @@ public class RenderGiantChicken extends RenderChicken {
*/
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_);
+ this.doRender((EntityGiantChickenBase)p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
}
} \ No newline at end of file
diff --git a/src/Java/gtPlusPlus/core/item/ModItems.java b/src/Java/gtPlusPlus/core/item/ModItems.java
index 7d4f20d968..f3e1c64049 100644
--- a/src/Java/gtPlusPlus/core/item/ModItems.java
+++ b/src/Java/gtPlusPlus/core/item/ModItems.java
@@ -44,6 +44,7 @@ import gtPlusPlus.core.item.init.ItemsMultiTools;
import gtPlusPlus.core.item.materials.DustDecayable;
import gtPlusPlus.core.item.tool.misc.SandstoneHammer;
import gtPlusPlus.core.item.tool.staballoy.*;
+import gtPlusPlus.core.item.wearable.WearableLoader;
import gtPlusPlus.core.lib.CORE;
import gtPlusPlus.core.lib.CORE.ConfigSwitches;
import gtPlusPlus.core.lib.LoadedMods;
@@ -64,7 +65,7 @@ public final class ModItems {
public static ToolMaterial STABALLOY = EnumHelper.addToolMaterial("Staballoy", 3, 2500, 7, 1.0F, 18);
-
+
public static Item ZZZ_Empty;
public static Item AAA_Broken;
@@ -304,6 +305,9 @@ public final class ModItems {
//Register Rope
itemFiber = new CoreItem("itemFiber", "Plant Fiber", tabMisc);
itemRope = new CoreItem("itemRope", "Rope", tabMisc);
+
+ //Load Wearable Items
+ WearableLoader.run();
//Make some backpacks
//Primary colours
diff --git a/src/Java/gtPlusPlus/core/item/wearable/WearableLoader.java b/src/Java/gtPlusPlus/core/item/wearable/WearableLoader.java
new file mode 100644
index 0000000000..6912b4e771
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/item/wearable/WearableLoader.java
@@ -0,0 +1,15 @@
+package gtPlusPlus.core.item.wearable;
+
+import gtPlusPlus.core.item.wearable.armour.ArmourLoader;
+
+public class WearableLoader {
+
+ public static void run() {
+ execute();
+ }
+
+ private static void execute() {
+ ArmourLoader.run();
+ }
+
+}
diff --git a/src/Java/gtPlusPlus/core/item/wearable/armour/ArmourLoader.java b/src/Java/gtPlusPlus/core/item/wearable/armour/ArmourLoader.java
new file mode 100644
index 0000000000..86711d42b2
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/item/wearable/armour/ArmourLoader.java
@@ -0,0 +1,29 @@
+package gtPlusPlus.core.item.wearable.armour;
+
+import cpw.mods.fml.client.registry.RenderingRegistry;
+
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemArmor.ArmorMaterial;
+
+import net.minecraftforge.common.util.EnumHelper;
+
+public class ArmourLoader {
+
+ public static Item ClearGlassChestplate;
+ public static Item ClearGlassBoots;
+ public static Item ClearGlassLeggings;
+ public static Item ClearGlassHelmet;
+
+ public static ArmorMaterial ClearGlassArmor = EnumHelper.addArmorMaterial("ClearGlassArmor", 1, new int[] { 1, 4, 2, 1 }, 100);
+
+
+ public static void run() {
+ glassArmour();
+ }
+
+ private static void glassArmour() {
+ RenderingRegistry.addNewArmourRendererPrefix("ClearGlassArmor");
+ //ClearGlassHelmet = new ClearGlassArmor(2055, ClearGlassArmor, 5, 0).setUnlocalizedName("amethyst_helmet");
+ }
+
+}
diff --git a/src/Java/gtPlusPlus/core/item/wearable/armour/base/BaseArmour.java b/src/Java/gtPlusPlus/core/item/wearable/armour/base/BaseArmour.java
new file mode 100644
index 0000000000..0c6a547d34
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/item/wearable/armour/base/BaseArmour.java
@@ -0,0 +1,11 @@
+package gtPlusPlus.core.item.wearable.armour.base;
+
+import gtPlusPlus.core.item.wearable.base.BaseItemWearable;
+
+public abstract class BaseArmour extends BaseItemWearable {
+
+ public BaseArmour(ArmorMaterial material, int renderIndex, int armourType) {
+ super(material, renderIndex, armourType);
+ }
+
+}
diff --git a/src/Java/gtPlusPlus/core/item/wearable/armour/base/BaseArmourBoots.java b/src/Java/gtPlusPlus/core/item/wearable/armour/base/BaseArmourBoots.java
new file mode 100644
index 0000000000..2ace8919d0
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/item/wearable/armour/base/BaseArmourBoots.java
@@ -0,0 +1,10 @@
+package gtPlusPlus.core.item.wearable.armour.base;
+
+public abstract class BaseArmourBoots extends BaseArmour {
+
+ public BaseArmourBoots(ArmorMaterial material, int renderIndex) {
+ super(material, renderIndex, 3);
+ // TODO Auto-generated constructor stub
+ }
+
+}
diff --git a/src/Java/gtPlusPlus/core/item/wearable/armour/base/BaseArmourChest.java b/src/Java/gtPlusPlus/core/item/wearable/armour/base/BaseArmourChest.java
new file mode 100644
index 0000000000..16899c4229
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/item/wearable/armour/base/BaseArmourChest.java
@@ -0,0 +1,10 @@
+package gtPlusPlus.core.item.wearable.armour.base;
+
+public abstract class BaseArmourChest extends BaseArmour {
+
+ public BaseArmourChest(ArmorMaterial material, int renderIndex) {
+ super(material, renderIndex, 1);
+ // TODO Auto-generated constructor stub
+ }
+
+}
diff --git a/src/Java/gtPlusPlus/core/item/wearable/armour/base/BaseArmourHelm.java b/src/Java/gtPlusPlus/core/item/wearable/armour/base/BaseArmourHelm.java
new file mode 100644
index 0000000000..c3676277eb
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/item/wearable/armour/base/BaseArmourHelm.java
@@ -0,0 +1,10 @@
+package gtPlusPlus.core.item.wearable.armour.base;
+
+public abstract class BaseArmourHelm extends BaseArmour {
+
+ public BaseArmourHelm(ArmorMaterial material, int renderIndex) {
+ super(material, renderIndex, 0);
+ // TODO Auto-generated constructor stub
+ }
+
+}
diff --git a/src/Java/gtPlusPlus/core/item/wearable/armour/base/BaseArmourLegs.java b/src/Java/gtPlusPlus/core/item/wearable/armour/base/BaseArmourLegs.java
new file mode 100644
index 0000000000..9794a713ac
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/item/wearable/armour/base/BaseArmourLegs.java
@@ -0,0 +1,10 @@
+package gtPlusPlus.core.item.wearable.armour.base;
+
+public abstract class BaseArmourLegs extends BaseArmour {
+
+ public BaseArmourLegs(ArmorMaterial material, int renderIndex) {
+ super(material, renderIndex, 2);
+ // TODO Auto-generated constructor stub
+ }
+
+}
diff --git a/src/Java/gtPlusPlus/core/item/wearable/base/BaseItemWearable.java b/src/Java/gtPlusPlus/core/item/wearable/base/BaseItemWearable.java
new file mode 100644
index 0000000000..9ffd3c6db6
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/item/wearable/base/BaseItemWearable.java
@@ -0,0 +1,71 @@
+package gtPlusPlus.core.item.wearable.base;
+
+import net.minecraft.entity.EntityLivingBase;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.ItemArmor;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+import net.minecraft.util.DamageSource;
+
+import net.minecraftforge.common.ISpecialArmor;
+
+public abstract class BaseItemWearable extends ItemArmor implements ISpecialArmor {
+
+ public BaseItemWearable(ArmorMaterial material, int renderIndex, int armourType) {
+ super(material, renderIndex, armourType);
+ }
+
+ public abstract int getRenderIndex();
+
+
+
+ @Override
+ public ArmorProperties getProperties(EntityLivingBase player, ItemStack armor, DamageSource source, double damage,
+ int slot) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public int getArmorDisplay(EntityPlayer player, ItemStack armor, int slot) {
+ // TODO Auto-generated method stub
+ return 0;
+ }
+
+ @Override
+ public void damageArmor(EntityLivingBase entity, ItemStack stack, DamageSource source, int damage, int slot) {
+ // TODO Auto-generated method stub
+
+ }
+
+ public void dyeArmour(ItemStack aArmour, int aColour) {
+ func_82813_b(aArmour, aColour);
+ }
+
+ @Override
+ public void func_82813_b(ItemStack p_82813_1_, int p_82813_2_) {
+ NBTTagCompound nbttagcompound = p_82813_1_.getTagCompound();
+ if (nbttagcompound == null) {
+ nbttagcompound = new NBTTagCompound();
+ p_82813_1_.setTagCompound(nbttagcompound);
+ }
+ NBTTagCompound nbttagcompound1 = nbttagcompound.getCompoundTag("display");
+ if (!nbttagcompound.hasKey("display", 10)) {
+ nbttagcompound.setTag("display", nbttagcompound1);
+ }
+ nbttagcompound1.setInteger("color", p_82813_2_);
+ }
+
+ @Override
+ public void removeColor(ItemStack p_82815_1_) {
+ NBTTagCompound nbttagcompound = p_82815_1_.getTagCompound();
+ if (nbttagcompound != null) {
+ NBTTagCompound nbttagcompound1 = nbttagcompound.getCompoundTag("display");
+ if (nbttagcompound1.hasKey("color")) {
+ nbttagcompound1.removeTag("color");
+ }
+ }
+ }
+
+
+}
diff --git a/src/Java/gtPlusPlus/core/material/MaterialGenerator.java b/src/Java/gtPlusPlus/core/material/MaterialGenerator.java
index 0eb2667f4f..0185c7d8c4 100644
--- a/src/Java/gtPlusPlus/core/material/MaterialGenerator.java
+++ b/src/Java/gtPlusPlus/core/material/MaterialGenerator.java
@@ -303,10 +303,6 @@ public class MaterialGenerator {
sRadiation = matInfo.vRadiationLevel;
}
- Item temp;
- Block tempBlock;
-
-
if (generateOre) {
tempBlock = new BlockBaseOre(matInfo, BlockTypes.ORE, Colour.intValue());
}