diff --git a/common/mekanism/client/ClientProxy.java b/common/mekanism/client/ClientProxy.java index e71494d6d..3b7cf09d1 100644 --- a/common/mekanism/client/ClientProxy.java +++ b/common/mekanism/client/ClientProxy.java @@ -334,6 +334,7 @@ public class ClientProxy extends CommonProxy MinecraftForgeClient.registerItemRenderer(Mekanism.obsidianTNTID, handler); MinecraftForgeClient.registerItemRenderer(Mekanism.basicBlockID, handler); MinecraftForgeClient.registerItemRenderer(Mekanism.Jetpack.itemID, handler); + MinecraftForgeClient.registerItemRenderer(Mekanism.ArmoredJetpack.itemID, handler); MinecraftForgeClient.registerItemRenderer(Mekanism.PartTransmitter.itemID, handler); MinecraftForgeClient.registerItemRenderer(Mekanism.GasMask.itemID, handler); MinecraftForgeClient.registerItemRenderer(Mekanism.ScubaTank.itemID, handler); diff --git a/common/mekanism/client/render/ModelCustomArmor.java b/common/mekanism/client/render/ModelCustomArmor.java index eda5f0558..091b500e8 100644 --- a/common/mekanism/client/render/ModelCustomArmor.java +++ b/common/mekanism/client/render/ModelCustomArmor.java @@ -135,7 +135,7 @@ public class ModelCustomArmor extends ModelBiped { if(biped.modelType == ArmorModel.JETPACK) { - ArmorModel.armoredJetpackModel.render(0.0625F); + ArmorModel.jetpackModel.render(0.0625F); } else if(biped.modelType == ArmorModel.ARMOREDJETPACK) { @@ -200,7 +200,7 @@ public class ModelCustomArmor extends ModelBiped public static enum ArmorModel { JETPACK(1, MekanismUtils.getResource(ResourceType.RENDER, "Jetpack.png")), - ARMOREDJETPACK(1, MekanismUtils.getResource(ResourceType.RENDER, "Jetpack.png")), + ARMOREDJETPACK(1, MekanismUtils.getResource(ResourceType.RENDER, "ArmoredJetpack.png")), SCUBATANK(1, MekanismUtils.getResource(ResourceType.RENDER, "ScubaSet.png")), GASMASK(0, MekanismUtils.getResource(ResourceType.RENDER, "ScubaSet.png")), FREERUNNERS(3, MekanismUtils.getResource(ResourceType.RENDER, "FreeRunners.png")); diff --git a/common/mekanism/client/render/item/ItemRenderingHandler.java b/common/mekanism/client/render/item/ItemRenderingHandler.java index c62bdd8c9..178c9ac6b 100644 --- a/common/mekanism/client/render/item/ItemRenderingHandler.java +++ b/common/mekanism/client/render/item/ItemRenderingHandler.java @@ -4,6 +4,7 @@ import mekanism.api.EnumColor; import mekanism.api.energy.IEnergizedItem; import mekanism.client.ClientProxy; import mekanism.client.MekanismClient; +import mekanism.client.model.ModelArmoredJetpack; import mekanism.client.model.ModelAtomicDisassembler; import mekanism.client.model.ModelEnergyCube; import mekanism.client.model.ModelEnergyCube.ModelEnergyCore; @@ -30,7 +31,6 @@ import mekanism.common.item.ItemBlockBasic; import mekanism.common.item.ItemBlockMachine; import mekanism.common.item.ItemFreeRunners; import mekanism.common.item.ItemGasMask; -import mekanism.common.item.ItemJetpack; import mekanism.common.item.ItemRobit; import mekanism.common.item.ItemScubaTank; import mekanism.common.item.ItemWalkieTalkie; @@ -71,6 +71,7 @@ public class ItemRenderingHandler implements IItemRenderer public ModelGasTank gasTank = new ModelGasTank(); public ModelObsidianTNT obsidianTNT = new ModelObsidianTNT(); public ModelJetpack jetpack = new ModelJetpack(); + public ModelArmoredJetpack armoredJetpack = new ModelArmoredJetpack(); public ModelGasMask gasMask = new ModelGasMask(); public ModelScubaTank scubaTank = new ModelScubaTank(); public ModelFreeRunners freeRunners = new ModelFreeRunners(); @@ -324,7 +325,7 @@ public class ItemRenderingHandler implements IItemRenderer Minecraft.getMinecraft().renderEngine.bindTexture(MekanismUtils.getResource(ResourceType.RENDER, "Robit.png")); robit.render(0.08F); } - else if(item.getItem() instanceof ItemJetpack) + else if(item.getItem() == Mekanism.Jetpack) { GL11.glRotatef(180, 0.0F, 0.0F, 1.0F); GL11.glRotatef(90, 0.0F, -1.0F, 0.0F); @@ -332,6 +333,14 @@ public class ItemRenderingHandler implements IItemRenderer Minecraft.getMinecraft().renderEngine.bindTexture(MekanismUtils.getResource(ResourceType.RENDER, "Jetpack.png")); jetpack.render(0.0625F); } + else if(item.getItem() == Mekanism.ArmoredJetpack) + { + GL11.glRotatef(180, 0.0F, 0.0F, 1.0F); + GL11.glRotatef(90, 0.0F, -1.0F, 0.0F); + GL11.glTranslatef(0.2F, -0.35F, 0.0F); + Minecraft.getMinecraft().renderEngine.bindTexture(MekanismUtils.getResource(ResourceType.RENDER, "ArmoredJetpack.png")); + armoredJetpack.render(0.0625F); + } else if(item.getItem() instanceof ItemGasMask) { GL11.glRotatef(180, 0.0F, 0.0F, 1.0F); diff --git a/common/mekanism/common/Mekanism.java b/common/mekanism/common/Mekanism.java index 4c56276f1..86cd53e8f 100644 --- a/common/mekanism/common/Mekanism.java +++ b/common/mekanism/common/Mekanism.java @@ -258,6 +258,7 @@ public class Mekanism public static Item Salt; public static Item BrineBucket; public static Item FreeRunners; + public static Item ArmoredJetpack; //Blocks public static Block BasicBlock; @@ -567,6 +568,9 @@ public class Mekanism CraftingManager.getInstance().getRecipeList().add(new MekanismRecipe(new ItemStack(FreeRunners), new Object[] { "C C", "A A", "T T", Character.valueOf('C'), "circuitBasic", Character.valueOf('A'), EnrichedAlloy, Character.valueOf('T'), EnergyTablet.getUnchargedItem() })); + CraftingManager.getInstance().getRecipeList().add(new MekanismRecipe(new ItemStack(ArmoredJetpack), new Object[] { + "D D", "BSB", " J ", Character.valueOf('D'), "dustDiamond", Character.valueOf('B'), "ingotBronze", Character.valueOf('S'), "blockSteel", Character.valueOf('J'), Jetpack.getEmptyItem() + })); for(RecipeType type : RecipeType.values()) { @@ -781,6 +785,7 @@ public class Mekanism GasMask = (ItemGasMask)new ItemGasMask(configuration.getItem("GasMask", ITEM_ID++).getInt()).setUnlocalizedName("GasMask"); ScubaTank = (ItemScubaTank)new ItemScubaTank(configuration.getItem("ScubaTank", ITEM_ID++).getInt()).setUnlocalizedName("ScubaTank"); Jetpack = (ItemJetpack)new ItemJetpack(configuration.getItem("Jetpack", ITEM_ID++).getInt()).setUnlocalizedName("Jetpack"); + ArmoredJetpack = (ItemJetpack)new ItemJetpack(configuration.getItem("ArmoredJetpack", ITEM_ID++).getInt()).setUnlocalizedName("ArmoredJetpack"); FreeRunners = new ItemFreeRunners(configuration.getItem("FreeRunners", ITEM_ID++).getInt()).setUnlocalizedName("FreeRunners"); BrineBucket = new ItemMekanism(configuration.getItem("BrineBucket", ITEM_ID++).getInt()).setMaxStackSize(1).setUnlocalizedName("BrineBucket"); Sawdust = new ItemMekanism(configuration.getItem("Sawdust", ITEM_ID++).getInt()).setUnlocalizedName("Sawdust"); @@ -836,6 +841,7 @@ public class Mekanism GameRegistry.registerItem(BrineBucket, "BrineBucket"); GameRegistry.registerItem(Crystal, "Crystal"); GameRegistry.registerItem(FreeRunners, "FrictionBoots"); + GameRegistry.registerItem(ArmoredJetpack, "ArmoredJetpack"); } /** diff --git a/common/mekanism/common/item/ItemJetpack.java b/common/mekanism/common/item/ItemJetpack.java index 2e7334853..7b4c03006 100644 --- a/common/mekanism/common/item/ItemJetpack.java +++ b/common/mekanism/common/item/ItemJetpack.java @@ -74,7 +74,16 @@ public class ItemJetpack extends ItemArmor implements IGasItem public ModelBiped getArmorModel(EntityLivingBase entityLiving, ItemStack itemStack, int armorSlot) { ModelCustomArmor model = ModelCustomArmor.INSTANCE; - model.modelType = ArmorModel.JETPACK; + + if(this == Mekanism.Jetpack) + { + model.modelType = ArmorModel.JETPACK; + } + else if(this == Mekanism.ArmoredJetpack) + { + model.modelType = ArmorModel.ARMOREDJETPACK; + } + return model; } diff --git a/resources/assets/mekanism/render/ArmoredJetpack.png b/resources/assets/mekanism/render/ArmoredJetpack.png new file mode 100644 index 000000000..13ddd671c Binary files /dev/null and b/resources/assets/mekanism/render/ArmoredJetpack.png differ