diff --git a/assets/hbm/lang/de_DE.lang b/assets/hbm/lang/de_DE.lang index fb4a03d27..96f314f9b 100644 --- a/assets/hbm/lang/de_DE.lang +++ b/assets/hbm/lang/de_DE.lang @@ -1167,6 +1167,8 @@ item.gun_revolver_cursed.name=Verfluchte Pistole item.gun_revolver_nightmare.name=Nightmare-Revolver (Original) item.gun_revolver_nightmare2.name=Nightmare-Revolver (Dunkel) item.gun_revolver_pip.name=Lil' Pipsqueak +item.gun_calamity.name=Calamity +item.gun_calamity_dual.name=Sattelkanone item.gun_fatman.name=M42 Nukleares Katapult "Fat Man" item.gun_proto.name=M42 Nukleares Katapult "Proto MIRV" item.gun_mirv.name=M42 Nukleares Katapult "Experimentelles MIRV" @@ -1212,6 +1214,7 @@ item.gun_revolver_cursed_ammo.name=Stahlpatrone item.gun_revolver_nightmare_ammo.name=Nightmare-Kugel item.gun_revolver_nightmare2_ammo.name=Laserschrot item.gun_revolver_pip_ammo.name=Verdorbene Patrone +item.gun_calamity_ammo.name=.50 BMG Patrone item.gun_fatman_ammo.name=Miniatombombe item.gun_mirv_ammo.name=Achtfaches MIRV item.gun_bf_ammo.name=Mk.V kompaktes AMAT-Artilleriegeschoss - Typ B.F. diff --git a/assets/hbm/lang/en_US.lang b/assets/hbm/lang/en_US.lang index 392925c41..0ba17a937 100644 --- a/assets/hbm/lang/en_US.lang +++ b/assets/hbm/lang/en_US.lang @@ -1167,6 +1167,8 @@ item.gun_revolver_cursed.name=Cursed Revolver item.gun_revolver_nightmare.name=Nightmare Revolver (Original) item.gun_revolver_nightmare2.name=Nightmare Revolver (Dark) item.gun_revolver_pip.name=Lil' Pipsqueak +item.gun_calamity.name=Calamity +item.gun_calamity_dual.name=Saddle Gun item.gun_fatman.name=M42 Nuclear Catapult "Fat Man" item.gun_proto.name=M42 Nuclear Catapult "Proto MIRV" item.gun_mirv.name=M42 Nuclear Catapult "Experimental MIRV" @@ -1212,6 +1214,7 @@ item.gun_revolver_cursed_ammo.name=Steel Bullet item.gun_revolver_nightmare_ammo.name=Nightmare Bullet item.gun_revolver_nightmare2_ammo.name=Laser Buckshot item.gun_revolver_pip_ammo.name=Tainted Bullet +item.gun_calamity_ammo.name=.50 BMG Round item.gun_fatman_ammo.name=Mini Nuke item.gun_mirv_ammo.name=Eightfold MIRV item.gun_bf_ammo.name=Mk.V Compact AMAT-Artillery Shell - Type B.F. diff --git a/assets/hbm/sounds.json b/assets/hbm/sounds.json index 5b7412318..f23eb5f3c 100644 --- a/assets/hbm/sounds.json +++ b/assets/hbm/sounds.json @@ -87,6 +87,7 @@ "weapon.uziShoot": {"category": "player", "sounds": [{"name": "weapon/uziShoot", "stream": false}]}, "weapon.silencerShoot": {"category": "player", "sounds": [{"name": "weapon/silencerShoot", "stream": false}]}, "weapon.gBounce": {"category": "player", "sounds": ["weapon/gBounce1", "weapon/gBounce2", "weapon/gBounce3"]}, + "weapon.calShoot": {"category": "player", "sounds": ["weapon/cal1", "weapon/cal2", "weapon/cal3"]}, "weapon.reloadTurret": {"category": "player", "sounds": [{"name": "weapon/reloadTurret", "stream": false}]}, "weapon.switchmode1": {"category": "player", "sounds": [{"name": "weapon/switchmode1", "stream": false}]}, diff --git a/assets/hbm/sounds/weapon/cal1.ogg b/assets/hbm/sounds/weapon/cal1.ogg new file mode 100644 index 000000000..79a7c0792 Binary files /dev/null and b/assets/hbm/sounds/weapon/cal1.ogg differ diff --git a/assets/hbm/sounds/weapon/cal2.ogg b/assets/hbm/sounds/weapon/cal2.ogg new file mode 100644 index 000000000..934880aea Binary files /dev/null and b/assets/hbm/sounds/weapon/cal2.ogg differ diff --git a/assets/hbm/sounds/weapon/cal3.ogg b/assets/hbm/sounds/weapon/cal3.ogg new file mode 100644 index 000000000..817bec5d3 Binary files /dev/null and b/assets/hbm/sounds/weapon/cal3.ogg differ diff --git a/assets/hbm/textures/items/gun_calamity.png b/assets/hbm/textures/items/gun_calamity.png new file mode 100644 index 000000000..a5ec308bc Binary files /dev/null and b/assets/hbm/textures/items/gun_calamity.png differ diff --git a/assets/hbm/textures/items/gun_calamity_ammo.png b/assets/hbm/textures/items/gun_calamity_ammo.png new file mode 100644 index 000000000..cc26b5bab Binary files /dev/null and b/assets/hbm/textures/items/gun_calamity_ammo.png differ diff --git a/assets/hbm/textures/items/gun_calamity_dual.png b/assets/hbm/textures/items/gun_calamity_dual.png new file mode 100644 index 000000000..3f6d18f42 Binary files /dev/null and b/assets/hbm/textures/items/gun_calamity_dual.png differ diff --git a/assets/hbm/textures/models/ModelCalBarrel.png b/assets/hbm/textures/models/ModelCalBarrel.png new file mode 100644 index 000000000..1b5903f49 Binary files /dev/null and b/assets/hbm/textures/models/ModelCalBarrel.png differ diff --git a/assets/hbm/textures/models/ModelCalDualStock.png b/assets/hbm/textures/models/ModelCalDualStock.png new file mode 100644 index 000000000..c24d88063 Binary files /dev/null and b/assets/hbm/textures/models/ModelCalDualStock.png differ diff --git a/assets/hbm/textures/models/ModelCalStock.png b/assets/hbm/textures/models/ModelCalStock.png new file mode 100644 index 000000000..e1f8df03e Binary files /dev/null and b/assets/hbm/textures/models/ModelCalStock.png differ diff --git a/com/hbm/blocks/ModBlocks.java b/com/hbm/blocks/ModBlocks.java index 027cd4106..da584f667 100644 --- a/com/hbm/blocks/ModBlocks.java +++ b/com/hbm/blocks/ModBlocks.java @@ -882,7 +882,7 @@ public class ModBlocks { vault_door = new VaultDoor(Material.iron).setBlockName("vault_door").setHardness(10.0F).setResistance(10000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":vault_door"); blast_door = new BlastDoor(Material.iron).setBlockName("blast_door").setHardness(10.0F).setResistance(10000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":blast_door"); - barbed_wire = new BarbedWire(Material.iron).setBlockName("barbed_wire").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":barbed_wire"); + barbed_wire = new BarbedWire(Material.iron).setBlockName("barbed_wire").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":barbed_wire"); marker_structure = new BlockMarker(Material.iron).setBlockName("marker_structure").setHardness(0.0F).setResistance(0.0F).setLightLevel(1.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":marker_structure"); diff --git a/com/hbm/blocks/generic/BlockCrate.java b/com/hbm/blocks/generic/BlockCrate.java index 59067a3ba..2c98a533d 100644 --- a/com/hbm/blocks/generic/BlockCrate.java +++ b/com/hbm/blocks/generic/BlockCrate.java @@ -110,6 +110,8 @@ public class BlockCrate extends BlockFalling { BlockCrate.addToListWithWeight(weaponList, ModItems.gun_revolver_nightmare, 5); BlockCrate.addToListWithWeight(weaponList, ModItems.gun_revolver_nightmare2, 4); BlockCrate.addToListWithWeight(weaponList, ModItems.gun_revolver_pip, 3); + BlockCrate.addToListWithWeight(weaponList, ModItems.gun_calamity, 3); + BlockCrate.addToListWithWeight(weaponList, ModItems.gun_calamity_dual, 2); BlockCrate.addToListWithWeight(weaponList, ModItems.gun_rpg, 8); BlockCrate.addToListWithWeight(weaponList, ModItems.gun_stinger, 7); BlockCrate.addToListWithWeight(weaponList, ModItems.gun_fatman, 5); @@ -215,6 +217,7 @@ public class BlockCrate extends BlockFalling { BlockCrate.addToListWithWeight(redList, ModItems.mysteryshovel, 1); BlockCrate.addToListWithWeight(redList, ModItems.gun_revolver_pip, 1); BlockCrate.addToListWithWeight(redList, ModItems.clip_revolver_pip, 1); + BlockCrate.addToListWithWeight(redList, ModItems.gun_calamity_dual, 1); BlockCrate.addToListWithWeight(redList, ModItems.gun_b92, 1); BlockCrate.addToListWithWeight(redList, ModItems.weaponized_starblaster_cell, 1); BlockCrate.addToListWithWeight(redList, ModItems.battery_spark, 1); diff --git a/com/hbm/items/ModItems.java b/com/hbm/items/ModItems.java index c6117c7d5..2538bf194 100644 --- a/com/hbm/items/ModItems.java +++ b/com/hbm/items/ModItems.java @@ -742,6 +742,9 @@ public class ModItems { public static Item gun_revolver_nightmare2_ammo; public static Item gun_revolver_pip; public static Item gun_revolver_pip_ammo; + public static Item gun_calamity; + public static Item gun_calamity_dual; + public static Item gun_calamity_ammo; public static Item gun_fatman; public static Item gun_proto; public static Item gun_fatman_ammo; @@ -2029,6 +2032,9 @@ public class ModItems { gun_revolver_nightmare2 = new GunNightmare().setMaxDamage(6).setUnlocalizedName("gun_revolver_nightmare2").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_revolver_nightmare2"); gun_revolver_pip_ammo = new ItemCustomLore().setUnlocalizedName("gun_revolver_pip_ammo").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_revolver_pip_ammo"); gun_revolver_pip = new GunRevolver(gun_revolver_pip_ammo, 25, 35, false, false).setMaxDamage(1000).setUnlocalizedName("gun_revolver_pip").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_revolver_pip"); + gun_calamity_ammo = new ItemCustomLore().setUnlocalizedName("gun_calamity_ammo").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_calamity_ammo"); + gun_calamity = new GunCalamity().setUnlocalizedName("gun_calamity").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_calamity"); + gun_calamity_dual = new GunCalamity().setUnlocalizedName("gun_calamity_dual").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_calamity_dual"); gun_fatman_ammo = new Item().setUnlocalizedName("gun_fatman_ammo").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_fatman_ammo"); gun_fatman = new GunFatman().setMaxDamage(2500).setUnlocalizedName("gun_fatman").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_fatman"); gun_proto = new GunProtoMirv().setMaxDamage(2500).setUnlocalizedName("gun_proto").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_fatman"); @@ -3478,6 +3484,8 @@ public class ModItems { GameRegistry.registerItem(gun_revolver_nightmare, gun_revolver_nightmare.getUnlocalizedName()); GameRegistry.registerItem(gun_revolver_nightmare2, gun_revolver_nightmare2.getUnlocalizedName()); GameRegistry.registerItem(gun_revolver_pip, gun_revolver_pip.getUnlocalizedName()); + GameRegistry.registerItem(gun_calamity, gun_calamity.getUnlocalizedName()); + GameRegistry.registerItem(gun_calamity_dual, gun_calamity_dual.getUnlocalizedName()); GameRegistry.registerItem(gun_b92, gun_b92.getUnlocalizedName()); GameRegistry.registerItem(gun_b93, gun_b93.getUnlocalizedName()); GameRegistry.registerItem(gun_rpg, gun_rpg.getUnlocalizedName()); @@ -3529,6 +3537,7 @@ public class ModItems { GameRegistry.registerItem(gun_revolver_nightmare_ammo, gun_revolver_nightmare_ammo.getUnlocalizedName()); GameRegistry.registerItem(gun_revolver_nightmare2_ammo, gun_revolver_nightmare2_ammo.getUnlocalizedName()); GameRegistry.registerItem(gun_revolver_pip_ammo, gun_revolver_pip_ammo.getUnlocalizedName()); + GameRegistry.registerItem(gun_calamity_ammo, gun_calamity_ammo.getUnlocalizedName()); GameRegistry.registerItem(gun_b92_ammo, gun_b92_ammo.getUnlocalizedName()); GameRegistry.registerItem(gun_rpg_ammo, gun_rpg_ammo.getUnlocalizedName()); GameRegistry.registerItem(gun_stinger_ammo, gun_stinger_ammo.getUnlocalizedName()); diff --git a/com/hbm/items/weapon/GunCalamity.java b/com/hbm/items/weapon/GunCalamity.java new file mode 100644 index 000000000..4cda557aa --- /dev/null +++ b/com/hbm/items/weapon/GunCalamity.java @@ -0,0 +1,128 @@ +package com.hbm.items.weapon; + +import java.util.List; +import java.util.Random; + +import com.google.common.collect.Multimap; +import com.hbm.entity.projectile.EntityBullet; +import com.hbm.items.ModItems; + +import net.minecraft.enchantment.Enchantment; +import net.minecraft.enchantment.EnchantmentHelper; +import net.minecraft.entity.SharedMonsterAttributes; +import net.minecraft.entity.ai.attributes.AttributeModifier; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.EnumAction; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.EnumChatFormatting; +import net.minecraft.world.World; +import net.minecraftforge.event.entity.player.ArrowNockEvent; + +public class GunCalamity extends Item { + + Random rand = new Random(); + + public GunCalamity() + { + this.maxStackSize = 1; + } + + @Override + public EnumAction getItemUseAction(ItemStack par1ItemStack) { + return EnumAction.bow; + } + + @Override + public int getMaxItemUseDuration(ItemStack p_77626_1_) { + return 72000; + } + + @Override + public ItemStack onItemRightClick(ItemStack p_77659_1_, World p_77659_2_, EntityPlayer p_77659_3_) { + ArrowNockEvent event = new ArrowNockEvent(p_77659_3_, p_77659_1_); + { + p_77659_3_.setItemInUse(p_77659_1_, this.getMaxItemUseDuration(p_77659_1_)); + } + + return p_77659_1_; + } + + @Override + public void onUsingTick(ItemStack stack, EntityPlayer player, int count) + { + World world = player.worldObj; + + boolean flag = player.capabilities.isCreativeMode + || EnchantmentHelper.getEnchantmentLevel(Enchantment.infinity.effectId, stack) > 0; + + if ((player.capabilities.isCreativeMode || player.inventory.hasItem(ModItems.gun_calamity_ammo)) && count % 6 == 0) { + EntityBullet entityarrow = new EntityBullet(world, player, 3.0F, 15, 25, false, false); + entityarrow.setDamage(15 + rand.nextInt(25)); + + world.playSoundAtEntity(player, "hbm:weapon.calShoot", 1.0F, 1.0F); + + if (flag) { + entityarrow.canBePickedUp = 2; + } else { + player.inventory.consumeInventoryItem(ModItems.gun_mp40_ammo); + } + + if (!world.isRemote) { + world.spawnEntityInWorld(entityarrow); + } + } + + if (this == ModItems.gun_calamity_dual && (player.capabilities.isCreativeMode || player.inventory.hasItem(ModItems.gun_calamity_ammo)) && count % 6 == 3) { + EntityBullet entityarrow = new EntityBullet(world, player, 3.0F, 15, 25, false, false); + entityarrow.setDamage(15 + rand.nextInt(25)); + + world.playSoundAtEntity(player, "hbm:weapon.calShoot", 1.0F, 0.7F); + + if (flag) { + entityarrow.canBePickedUp = 2; + } else { + player.inventory.consumeInventoryItem(ModItems.gun_mp40_ammo); + } + + if (!world.isRemote) { + world.spawnEntityInWorld(entityarrow); + } + } + } + + @Override + public int getItemEnchantability() { + return 0; + } + + @Override + public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) { + + if(this == ModItems.gun_calamity) { + list.add("Handheld Maxim"); + } + if(this == ModItems.gun_calamity_dual) { + list.add("You may be thinking, 'This gun makes no"); + list.add("sense, why is there only one receiver for"); + list.add("two barrels, and how do the bullets even"); + list.add("come out of this thing? The barrels are"); + list.add("just taped onto a plate with no connection"); + list.add("to the rest of the gun!' Well my boy, this"); + list.add("question has a simple, easy to understand"); + list.add("answer, it's because " + EnumChatFormatting.OBFUSCATED + "gkjin soi unsi"); + list.add("and " + EnumChatFormatting.OBFUSCATED + "aslfnu isnfi uo fnafaoin fsj afakjkk abk"); + } + list.add(""); + list.add("Ammo: .50 BMG Round"); + list.add("Damage: 15 - 25"); + } + + @Override + public Multimap getItemAttributeModifiers() { + Multimap multimap = super.getItemAttributeModifiers(); + multimap.put(SharedMonsterAttributes.attackDamage.getAttributeUnlocalizedName(), + new AttributeModifier(field_111210_e, "Weapon modifier", 3, 0)); + return multimap; + } +} diff --git a/com/hbm/lib/RefStrings.java b/com/hbm/lib/RefStrings.java index b661c3a64..6652631a7 100644 --- a/com/hbm/lib/RefStrings.java +++ b/com/hbm/lib/RefStrings.java @@ -3,7 +3,7 @@ package com.hbm.lib; public class RefStrings { public static final String MODID = "hbm"; public static final String NAME = "Hbm's Nuclear Tech Mod"; - public static final String VERSION = "1.0.27 BETA (2922)"; + public static final String VERSION = "1.0.27 BETA (2936)"; //HBM's Beta Naming Convention: //V T (X-Y-Z) //V -> next release version diff --git a/com/hbm/main/ClientProxy.java b/com/hbm/main/ClientProxy.java index fb9ae0523..8d5390011 100644 --- a/com/hbm/main/ClientProxy.java +++ b/com/hbm/main/ClientProxy.java @@ -237,6 +237,8 @@ public class ClientProxy extends ServerProxy MinecraftForgeClient.registerItemRenderer(ModItems.gun_uzi_silencer, new ItemRenderUZI()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_uzi_saturnite, new ItemRenderUZI()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_uzi_saturnite_silencer, new ItemRenderUZI()); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_calamity, new ItemRenderOverkill()); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_calamity_dual, new ItemRenderOverkill()); MinecraftForgeClient.registerItemRenderer(ModItems.multitool_dig, new ItemRenderMultitool()); MinecraftForgeClient.registerItemRenderer(ModItems.multitool_silk, new ItemRenderMultitool()); diff --git a/com/hbm/main/CraftingManager.java b/com/hbm/main/CraftingManager.java index 8c31c55a3..9d4ad0b5e 100644 --- a/com/hbm/main/CraftingManager.java +++ b/com/hbm/main/CraftingManager.java @@ -1309,6 +1309,9 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.syringe_taint), new Object[] { ModItems.bottle2_empty, ModItems.syringe_metal_empty, ModItems.ducttape, ModItems.powder_magic, "nuggetSchrabidium", Items.potionitem })); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.loops), new Object[] { ModItems.flame_pony, Items.wheat, Items.sugar }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.loop_stew), new Object[] { ModItems.loops, ModItems.can_smart, Items.bowl }); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_calamity, 1), new Object[] { " PI", "BBM", " PI", 'P', "plateIron", 'B', ModItems.pipes_steel, 'M', ModItems.mechanism_rifle_1, 'I', "ingotSteel" })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_calamity_dual, 1), new Object[] { "BBM", " PI", "BBM", 'P', "plateIron", 'B', ModItems.pipes_steel, 'M', ModItems.mechanism_rifle_1, 'I', "ingotSteel" })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_calamity_ammo, 8), new Object[] { "S", "C", "G", 'S', "plateSteel", 'C', "plateCopper", 'G', Items.gunpowder })); GameRegistry.addShapelessRecipe(new ItemStack(Items.paper, 1), new Object[] { new ItemStack(ModItems.assembly_template, 1, OreDictionary.WILDCARD_VALUE) }); GameRegistry.addShapelessRecipe(new ItemStack(Items.paper, 1), new Object[] { new ItemStack(ModItems.chemistry_template, 1, OreDictionary.WILDCARD_VALUE) }); diff --git a/com/hbm/main/MainRegistry.java b/com/hbm/main/MainRegistry.java index d9ec24aa0..311f25088 100644 --- a/com/hbm/main/MainRegistry.java +++ b/com/hbm/main/MainRegistry.java @@ -522,8 +522,8 @@ public class MainRegistry public static int broadcaster = 5000; public static int minefreq = 64; public static int radfreq = 5000; - public static int meteorStrikeChance = 20 * 60 * 90; - public static int meteorShowerChance = 20 * 60 * 3; + public static int meteorStrikeChance = 20 * 60 * 180; + public static int meteorShowerChance = 20 * 60 * 5; public static int meteorShowerDuration = 6000; public static int limitExplosionLifespan = 0; public static int radarRange = 1000; @@ -1676,10 +1676,10 @@ public class MainRegistry propRad.comment = "Spawn radiation hotspot on every nTH chunk"; radfreq = propRad.getInt(); - Property propMeteorStrikeChance = config.get(Configuration.CATEGORY_GENERAL, "5.00_meteorStrikeChance", 50000); + Property propMeteorStrikeChance = config.get(Configuration.CATEGORY_GENERAL, "5.00_meteorStrikeChance", 20 * 60 * 180); propMeteorStrikeChance.comment = "The probability of a meteor spawning (an average of once every nTH ticks)"; meteorStrikeChance = propMeteorStrikeChance.getInt(); - Property propMeteorShowerChance = config.get(Configuration.CATEGORY_GENERAL, "5.01_meteorShowerChance", 500); + Property propMeteorShowerChance = config.get(Configuration.CATEGORY_GENERAL, "5.01_meteorShowerChance", 20 * 60 * 5); propMeteorShowerChance.comment = "The probability of a meteor spawning during meteor shower (an average of once every nTH ticks)"; meteorShowerChance = propMeteorShowerChance.getInt(); Property propMeteorShowerDuration = config.get(Configuration.CATEGORY_GENERAL, "5.02_meteorShowerDuration", 6000); diff --git a/com/hbm/render/item/ItemRenderOverkill.java b/com/hbm/render/item/ItemRenderOverkill.java index 27d8b341c..0cc9b2a73 100644 --- a/com/hbm/render/item/ItemRenderOverkill.java +++ b/com/hbm/render/item/ItemRenderOverkill.java @@ -5,6 +5,9 @@ import org.lwjgl.opengl.GL11; import com.hbm.items.ModItems; import com.hbm.lib.RefStrings; import com.hbm.main.MainRegistry; +import com.hbm.render.model.ModelCalBarrel; +import com.hbm.render.model.ModelCalDualStock; +import com.hbm.render.model.ModelCalStock; import com.hbm.render.model.ModelDash; import com.hbm.render.model.ModelDefabricator; import com.hbm.render.model.ModelEuthanasia; @@ -31,6 +34,10 @@ public class ItemRenderOverkill implements IItemRenderer { protected ModelDash dasher; protected ModelTwiGun rgottp; protected ModelPip pip; + + protected ModelCalBarrel barrel; + protected ModelCalStock stock; + protected ModelCalDualStock saddle; public ItemRenderOverkill() { powerJack = new ModelJack(); @@ -41,6 +48,9 @@ public class ItemRenderOverkill implements IItemRenderer { dasher = new ModelDash(); rgottp = new ModelTwiGun(); pip = new ModelPip(); + barrel = new ModelCalBarrel(); + stock = new ModelCalStock(); + saddle = new ModelCalDualStock(); } @Override @@ -114,6 +124,24 @@ public class ItemRenderOverkill implements IItemRenderer { rgottp.render((Entity)data[1], 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F); if(item.getItem() == ModItems.gun_revolver_pip) pip.render((Entity)data[1], 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F); + + if(item.getItem() == ModItems.gun_calamity) { + Minecraft.getMinecraft().renderEngine.bindTexture(new ResourceLocation(RefStrings.MODID +":textures/models/ModelCalBarrel.png")); + barrel.render((Entity)data[1], 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F); + Minecraft.getMinecraft().renderEngine.bindTexture(new ResourceLocation(RefStrings.MODID +":textures/models/ModelCalStock.png")); + stock.render((Entity)data[1], 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F); + } + if(item.getItem() == ModItems.gun_calamity_dual) { + Minecraft.getMinecraft().renderEngine.bindTexture(new ResourceLocation(RefStrings.MODID +":textures/models/ModelCalDualStock.png")); + saddle.render((Entity)data[1], 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F); + Minecraft.getMinecraft().renderEngine.bindTexture(new ResourceLocation(RefStrings.MODID +":textures/models/ModelCalBarrel.png")); + GL11.glTranslated(1D/16D * -2, 0, 0); + GL11.glTranslated(0, 0, 0.35); + barrel.render((Entity)data[1], 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F); + GL11.glTranslated(0, 0, -0.7); + barrel.render((Entity)data[1], 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F); + } + GL11.glPopMatrix(); break; case EQUIPPED: @@ -153,11 +181,19 @@ public class ItemRenderOverkill implements IItemRenderer { GL11.glTranslatef(0.5F, 0.2F, 0); if(item.getItem() == ModItems.gun_defabricator) GL11.glTranslatef(0.5F, 0.6F, -0.2F); - + if(item.getItem() == ModItems.gun_revolver_pip) { GL11.glScalef(0.60F, 0.60F, 0.60F); GL11.glTranslatef(0.7F, 0.3F, 0.0F); } + if(item.getItem() == ModItems.gun_calamity) { + GL11.glScalef(0.75F, 0.75F, 0.75F); + GL11.glTranslatef(0.5F, 0.0F, 0.0F); + } + if(item.getItem() == ModItems.gun_calamity_dual) { + GL11.glScalef(0.75F, 0.75F, 0.75F); + GL11.glTranslatef(0.5F, 0.0F, 0.0F); + } if(item.getItem() == ModItems.gun_jack) powerJack.render((Entity)data[1], 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F); @@ -175,6 +211,23 @@ public class ItemRenderOverkill implements IItemRenderer { rgottp.render((Entity)data[1], 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F); if(item.getItem() == ModItems.gun_revolver_pip) pip.render((Entity)data[1], 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F); + + if(item.getItem() == ModItems.gun_calamity) { + Minecraft.getMinecraft().renderEngine.bindTexture(new ResourceLocation(RefStrings.MODID +":textures/models/ModelCalBarrel.png")); + barrel.render((Entity)data[1], 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F); + Minecraft.getMinecraft().renderEngine.bindTexture(new ResourceLocation(RefStrings.MODID +":textures/models/ModelCalStock.png")); + stock.render((Entity)data[1], 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F); + } + if(item.getItem() == ModItems.gun_calamity_dual) { + Minecraft.getMinecraft().renderEngine.bindTexture(new ResourceLocation(RefStrings.MODID +":textures/models/ModelCalDualStock.png")); + saddle.render((Entity)data[1], 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F); + Minecraft.getMinecraft().renderEngine.bindTexture(new ResourceLocation(RefStrings.MODID +":textures/models/ModelCalBarrel.png")); + GL11.glTranslated(1D/16D * -2, 0, 0); + GL11.glTranslated(0, 0, 0.35); + barrel.render((Entity)data[1], 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F); + GL11.glTranslated(0, 0, -0.7); + barrel.render((Entity)data[1], 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F); + } GL11.glPopMatrix(); default: break; } diff --git a/com/hbm/render/model/ModelCalBarrel.java b/com/hbm/render/model/ModelCalBarrel.java new file mode 100644 index 000000000..81bf3b31e --- /dev/null +++ b/com/hbm/render/model/ModelCalBarrel.java @@ -0,0 +1,108 @@ +// Date: 24.10.2018 09:56:30 +// Template version 1.1 +// Java generated by Techne +// Keep in mind that you still need to fill in some blanks +// - ZeuX + +package com.hbm.render.model; + +import org.lwjgl.opengl.GL11; + +import net.minecraft.client.model.ModelBase; +import net.minecraft.client.model.ModelRenderer; +import net.minecraft.entity.Entity; + +public class ModelCalBarrel extends ModelBase { + // fields + ModelRenderer Shape1; + ModelRenderer Shape2; + ModelRenderer Shape3; + ModelRenderer Shape4; + ModelRenderer Shape5; + ModelRenderer Shape6; + ModelRenderer Shape7; + + public ModelCalBarrel() { + textureWidth = 128; + textureHeight = 32; + + Shape1 = new ModelRenderer(this, 0, 0); + Shape1.addBox(0F, 0F, 0F, 30, 6, 3); + Shape1.setRotationPoint(-30F, 0F, -1.5F); + Shape1.setTextureSize(128, 32); + Shape1.mirror = true; + setRotation(Shape1, 0F, 0F, 0F); + Shape2 = new ModelRenderer(this, 0, 19); + Shape2.addBox(0F, 0F, 0F, 30, 3, 6); + Shape2.setRotationPoint(-30F, 1.5F, -3F); + Shape2.setTextureSize(128, 32); + Shape2.mirror = true; + setRotation(Shape2, 0F, 0F, 0F); + Shape3 = new ModelRenderer(this, 0, 9); + Shape3.addBox(0F, 0F, 0F, 30, 5, 5); + Shape3.setRotationPoint(-30F, 0.5F, -2.5F); + Shape3.setTextureSize(128, 32); + Shape3.mirror = true; + setRotation(Shape3, 0F, 0F, 0F); + Shape4 = new ModelRenderer(this, 0, 28); + Shape4.addBox(0F, 0F, 0F, 1, 2, 2); + Shape4.setRotationPoint(-30.5F, 0.5F, -1F); + Shape4.setTextureSize(128, 32); + Shape4.mirror = true; + setRotation(Shape4, 0F, 0F, 0F); + Shape5 = new ModelRenderer(this, 6, 28); + Shape5.addBox(0F, 0F, 0F, 3, 2, 2); + Shape5.setRotationPoint(-33F, 3.5F, -1F); + Shape5.setTextureSize(128, 32); + Shape5.mirror = true; + setRotation(Shape5, 0F, 0F, 0F); + Shape6 = new ModelRenderer(this, 66, 0); + Shape6.addBox(0F, 0F, 0F, 4, 2, 4); + Shape6.setRotationPoint(-20F, -1F, -2F); + Shape6.setTextureSize(128, 32); + Shape6.mirror = true; + setRotation(Shape6, 0F, 0F, 0F); + Shape7 = new ModelRenderer(this, 82, 0); + Shape7.addBox(0F, -1F, -4F, 4, 1, 4); + Shape7.setRotationPoint(-20F, -1F, 2F); + Shape7.setTextureSize(128, 32); + Shape7.mirror = true; + setRotation(Shape7, -0.3490659F, 0F, 0F); + } + + 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); + Shape1.render(f5); + Shape2.render(f5); + Shape3.render(f5); + Shape4.render(f5); + Shape5.render(f5); + Shape6.render(f5); + Shape7.render(f5); + } + + public void renderAll(float f5) { + GL11.glPushMatrix(); + GL11.glTranslated(0, 1D/16D * 1, 0); + Shape1.render(f5); + Shape2.render(f5); + Shape3.render(f5); + Shape4.render(f5); + Shape5.render(f5); + Shape6.render(f5); + Shape7.render(f5); + GL11.glPopMatrix(); + } + + private void setRotation(ModelRenderer model, float x, float y, float z) { + model.rotateAngleX = x; + model.rotateAngleY = y; + model.rotateAngleZ = z; + } + + 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/com/hbm/render/model/ModelCalDualStock.java b/com/hbm/render/model/ModelCalDualStock.java new file mode 100644 index 000000000..a9b94fdfd --- /dev/null +++ b/com/hbm/render/model/ModelCalDualStock.java @@ -0,0 +1,243 @@ +// Date: 24.10.2018 10:31:22 +// Template version 1.1 +// Java generated by Techne +// Keep in mind that you still need to fill in some blanks +// - ZeuX + +package com.hbm.render.model; + +import org.lwjgl.opengl.GL11; + +import net.minecraft.client.model.ModelBase; +import net.minecraft.client.model.ModelRenderer; +import net.minecraft.entity.Entity; + +public class ModelCalDualStock extends ModelBase { + // fields + ModelRenderer Shape8; + ModelRenderer Shape9; + ModelRenderer Shape10; + ModelRenderer Shape11; + ModelRenderer Shape12; + ModelRenderer Shape13; + ModelRenderer Shape14; + ModelRenderer Shape15; + ModelRenderer Shape16; + ModelRenderer Shape17; + ModelRenderer Shape18; + ModelRenderer Shape19; + ModelRenderer Shape20; + ModelRenderer Shape21; + ModelRenderer Shape22; + ModelRenderer Shape1; + ModelRenderer Shape2; + ModelRenderer Shape3; + ModelRenderer Shape4; + ModelRenderer Shape5; + ModelRenderer Shape6; + ModelRenderer Shape7; + + public ModelCalDualStock() { + textureWidth = 64; + textureHeight = 32; + + Shape8 = new ModelRenderer(this, 0, 0); + Shape8.addBox(0F, 0F, 0F, 15, 6, 3); + Shape8.setRotationPoint(0F, 1F, -1.5F); + Shape8.setTextureSize(64, 32); + Shape8.mirror = true; + setRotation(Shape8, 0F, 0F, 0F); + Shape9 = new ModelRenderer(this, 0, 9); + Shape9.addBox(0F, 0F, 0F, 6, 1, 2); + Shape9.setRotationPoint(7F, 7F, -1F); + Shape9.setTextureSize(64, 32); + Shape9.mirror = true; + setRotation(Shape9, 0F, 0F, 0F); + Shape10 = new ModelRenderer(this, 0, 12); + Shape10.addBox(0F, 0F, 0F, 2, 5, 2); + Shape10.setRotationPoint(10F, 8F, -1F); + Shape10.setTextureSize(64, 32); + Shape10.mirror = true; + setRotation(Shape10, 0F, 0F, -0.2617994F); + Shape11 = new ModelRenderer(this, 0, 26); + Shape11.addBox(0F, 0F, 0F, 3, 4, 2); + Shape11.setRotationPoint(19F, 3F, -1F); + Shape11.setTextureSize(64, 32); + Shape11.mirror = true; + setRotation(Shape11, 0F, 0F, 0F); + Shape12 = new ModelRenderer(this, 0, 22); + Shape12.addBox(-4F, 0F, 0F, 4, 2, 2); + Shape12.setRotationPoint(19F, 3F, -1F); + Shape12.setTextureSize(64, 32); + Shape12.mirror = true; + setRotation(Shape12, 0F, 0F, -0.1115358F); + Shape13 = new ModelRenderer(this, 10, 28); + Shape13.addBox(-5F, -2F, 0F, 5, 2, 2); + Shape13.setRotationPoint(19F, 7F, -1F); + Shape13.setTextureSize(64, 32); + Shape13.mirror = true; + setRotation(Shape13, 0F, 0F, 0.2617994F); + Shape14 = new ModelRenderer(this, 12, 23); + Shape14.addBox(0F, 0F, 0F, 1, 3, 2); + Shape14.setRotationPoint(22F, 3F, -1F); + Shape14.setTextureSize(64, 32); + Shape14.mirror = true; + setRotation(Shape14, 0F, 0F, 0.3490659F); + Shape15 = new ModelRenderer(this, 42, 0); + Shape15.addBox(0F, 0F, 0F, 3, 5, 8); + Shape15.setRotationPoint(3F, 4F, -9.5F); + Shape15.setTextureSize(64, 32); + Shape15.mirror = true; + setRotation(Shape15, 0F, 0F, 0F); + Shape16 = new ModelRenderer(this, 36, 0); + Shape16.addBox(0F, 0F, 0F, 2, 1, 1); + Shape16.setRotationPoint(3.5F, 3.5F, -4F); + Shape16.setTextureSize(64, 32); + Shape16.mirror = true; + setRotation(Shape16, 0F, 0F, 0F); + Shape17 = new ModelRenderer(this, 36, 0); + Shape17.addBox(0F, 0F, 0F, 2, 1, 1); + Shape17.setRotationPoint(3.5F, 2.7F, -3.5F); + Shape17.setTextureSize(64, 32); + Shape17.mirror = true; + setRotation(Shape17, 0F, 0F, 0F); + Shape18 = new ModelRenderer(this, 36, 0); + Shape18.addBox(0F, 0F, 0F, 2, 1, 1); + Shape18.setRotationPoint(3.5F, 2.2F, -2.8F); + Shape18.setTextureSize(64, 32); + Shape18.mirror = true; + setRotation(Shape18, 0F, 0F, 0F); + Shape19 = new ModelRenderer(this, 36, 0); + Shape19.addBox(0F, 0F, 0F, 2, 1, 1); + Shape19.setRotationPoint(3.5F, 1.8F, -2F); + Shape19.setTextureSize(64, 32); + Shape19.mirror = true; + setRotation(Shape19, 0F, 0F, 0F); + Shape20 = new ModelRenderer(this, 16, 9); + Shape20.addBox(0F, 0F, 0F, 6, 1, 4); + Shape20.setRotationPoint(7F, 4F, -2F); + Shape20.setTextureSize(64, 32); + Shape20.mirror = true; + setRotation(Shape20, 0F, 0F, 0F); + Shape21 = new ModelRenderer(this, 8, 12); + Shape21.addBox(0F, 0F, 0F, 2, 1, 1); + Shape21.setRotationPoint(11F, 0F, 0F); + Shape21.setTextureSize(64, 32); + Shape21.mirror = true; + setRotation(Shape21, 0F, 0F, 0F); + Shape22 = new ModelRenderer(this, 8, 14); + Shape22.addBox(0F, 0F, 0F, 2, 1, 2); + Shape22.setRotationPoint(11F, -1F, 0F); + Shape22.setTextureSize(64, 32); + Shape22.mirror = true; + setRotation(Shape22, -0.3490659F, 0F, 0F); + Shape1 = new ModelRenderer(this, 42, 0); + Shape1.addBox(0F, 0F, 0F, 3, 5, 8); + Shape1.setRotationPoint(3F, 4F, 1.5F); + Shape1.setTextureSize(64, 32); + Shape1.mirror = true; + setRotation(Shape1, 0F, 0F, 0F); + Shape2 = new ModelRenderer(this, 36, 0); + Shape2.addBox(0F, 0F, 0F, 2, 1, 1); + Shape2.setRotationPoint(3.5F, 3.5F, 3F); + Shape2.setTextureSize(64, 32); + Shape2.mirror = true; + setRotation(Shape2, 0F, 0F, 0F); + Shape3 = new ModelRenderer(this, 36, 0); + Shape3.addBox(0F, 0F, 0F, 2, 1, 1); + Shape3.setRotationPoint(3.5F, 2.7F, 2.5F); + Shape3.setTextureSize(64, 32); + Shape3.mirror = true; + setRotation(Shape3, 0F, 0F, 0F); + Shape4 = new ModelRenderer(this, 36, 0); + Shape4.addBox(0F, 0F, 0F, 2, 1, 1); + Shape4.setRotationPoint(3.5F, 2.2F, 1.8F); + Shape4.setTextureSize(64, 32); + Shape4.mirror = true; + setRotation(Shape4, 0F, 0F, 0F); + Shape5 = new ModelRenderer(this, 36, 0); + Shape5.addBox(0F, 0F, 0F, 2, 1, 1); + Shape5.setRotationPoint(3.5F, 1.8F, 1F); + Shape5.setTextureSize(64, 32); + Shape5.mirror = true; + setRotation(Shape5, 0F, 0F, 0F); + Shape6 = new ModelRenderer(this, 18, 17); + Shape6.addBox(0F, 0F, 0F, 1, 5, 6); + Shape6.setRotationPoint(-1F, 1F, -3F); + Shape6.setTextureSize(64, 32); + Shape6.mirror = true; + setRotation(Shape6, 0F, 0F, 0F); + Shape7 = new ModelRenderer(this, 32, 13); + Shape7.addBox(0F, 0F, 0F, 1, 4, 15); + Shape7.setRotationPoint(-2F, 2F, -7.5F); + Shape7.setTextureSize(64, 32); + Shape7.mirror = true; + setRotation(Shape7, 0F, 0F, 0F); + } + + 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); + Shape8.render(f5); + Shape9.render(f5); + Shape10.render(f5); + Shape11.render(f5); + Shape12.render(f5); + Shape13.render(f5); + Shape14.render(f5); + Shape15.render(f5); + Shape16.render(f5); + Shape17.render(f5); + Shape18.render(f5); + Shape19.render(f5); + Shape20.render(f5); + Shape21.render(f5); + Shape22.render(f5); + Shape1.render(f5); + Shape2.render(f5); + Shape3.render(f5); + Shape4.render(f5); + Shape5.render(f5); + Shape6.render(f5); + Shape7.render(f5); + } + + public void renderAll(float f5) { + GL11.glPushMatrix(); + GL11.glTranslated(1D/16D * 2, 0, 0); + Shape8.render(f5); + Shape9.render(f5); + Shape10.render(f5); + Shape11.render(f5); + Shape12.render(f5); + Shape13.render(f5); + Shape14.render(f5); + Shape15.render(f5); + Shape16.render(f5); + Shape17.render(f5); + Shape18.render(f5); + Shape19.render(f5); + Shape20.render(f5); + Shape21.render(f5); + Shape22.render(f5); + Shape1.render(f5); + Shape2.render(f5); + Shape3.render(f5); + Shape4.render(f5); + Shape5.render(f5); + Shape6.render(f5); + Shape7.render(f5); + GL11.glPopMatrix(); + } + + private void setRotation(ModelRenderer model, float x, float y, float z) { + model.rotateAngleX = x; + model.rotateAngleY = y; + model.rotateAngleZ = z; + } + + 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/com/hbm/render/model/ModelCalStock.java b/com/hbm/render/model/ModelCalStock.java new file mode 100644 index 000000000..f6902b24c --- /dev/null +++ b/com/hbm/render/model/ModelCalStock.java @@ -0,0 +1,175 @@ +// Date: 24.10.2018 10:23:38 +// Template version 1.1 +// Java generated by Techne +// Keep in mind that you still need to fill in some blanks +// - ZeuX + +package com.hbm.render.model; + +import net.minecraft.client.model.ModelBase; +import net.minecraft.client.model.ModelRenderer; +import net.minecraft.entity.Entity; + +public class ModelCalStock extends ModelBase { + // fields + ModelRenderer Shape8; + ModelRenderer Shape9; + ModelRenderer Shape10; + ModelRenderer Shape11; + ModelRenderer Shape12; + ModelRenderer Shape13; + ModelRenderer Shape14; + ModelRenderer Shape15; + ModelRenderer Shape16; + ModelRenderer Shape17; + ModelRenderer Shape18; + ModelRenderer Shape19; + ModelRenderer Shape20; + ModelRenderer Shape21; + ModelRenderer Shape22; + + public ModelCalStock() { + textureWidth = 64; + textureHeight = 32; + + Shape8 = new ModelRenderer(this, 0, 0); + Shape8.addBox(0F, 0F, 0F, 15, 6, 3); + Shape8.setRotationPoint(0F, 1F, -1.5F); + Shape8.setTextureSize(64, 32); + Shape8.mirror = true; + setRotation(Shape8, 0F, 0F, 0F); + Shape9 = new ModelRenderer(this, 0, 9); + Shape9.addBox(0F, 0F, 0F, 6, 1, 2); + Shape9.setRotationPoint(7F, 7F, -1F); + Shape9.setTextureSize(64, 32); + Shape9.mirror = true; + setRotation(Shape9, 0F, 0F, 0F); + Shape10 = new ModelRenderer(this, 0, 12); + Shape10.addBox(0F, 0F, 0F, 2, 5, 2); + Shape10.setRotationPoint(10F, 8F, -1F); + Shape10.setTextureSize(64, 32); + Shape10.mirror = true; + setRotation(Shape10, 0F, 0F, -0.2617994F); + Shape11 = new ModelRenderer(this, 0, 26); + Shape11.addBox(0F, 0F, 0F, 3, 4, 2); + Shape11.setRotationPoint(19F, 3F, -1F); + Shape11.setTextureSize(64, 32); + Shape11.mirror = true; + setRotation(Shape11, 0F, 0F, 0F); + Shape12 = new ModelRenderer(this, 0, 22); + Shape12.addBox(-4F, 0F, 0F, 4, 2, 2); + Shape12.setRotationPoint(19F, 3F, -1F); + Shape12.setTextureSize(64, 32); + Shape12.mirror = true; + setRotation(Shape12, 0F, 0F, -0.1115358F); + Shape13 = new ModelRenderer(this, 10, 28); + Shape13.addBox(-5F, -2F, 0F, 5, 2, 2); + Shape13.setRotationPoint(19F, 7F, -1F); + Shape13.setTextureSize(64, 32); + Shape13.mirror = true; + setRotation(Shape13, 0F, 0F, 0.2617994F); + Shape14 = new ModelRenderer(this, 12, 23); + Shape14.addBox(0F, 0F, 0F, 1, 3, 2); + Shape14.setRotationPoint(22F, 3F, -1F); + Shape14.setTextureSize(64, 32); + Shape14.mirror = true; + setRotation(Shape14, 0F, 0F, 0.3490659F); + Shape15 = new ModelRenderer(this, 42, 0); + Shape15.addBox(0F, 0F, 0F, 3, 5, 8); + Shape15.setRotationPoint(3F, 4F, -9.5F); + Shape15.setTextureSize(64, 32); + Shape15.mirror = true; + setRotation(Shape15, 0F, 0F, 0F); + Shape16 = new ModelRenderer(this, 36, 0); + Shape16.addBox(0F, 0F, 0F, 2, 1, 1); + Shape16.setRotationPoint(3.5F, 3.5F, -4F); + Shape16.setTextureSize(64, 32); + Shape16.mirror = true; + setRotation(Shape16, 0F, 0F, 0F); + Shape17 = new ModelRenderer(this, 36, 0); + Shape17.addBox(0F, 0F, 0F, 2, 1, 1); + Shape17.setRotationPoint(3.5F, 2.7F, -3.5F); + Shape17.setTextureSize(64, 32); + Shape17.mirror = true; + setRotation(Shape17, 0F, 0F, 0F); + Shape18 = new ModelRenderer(this, 36, 0); + Shape18.addBox(0F, 0F, 0F, 2, 1, 1); + Shape18.setRotationPoint(3.5F, 2.2F, -2.8F); + Shape18.setTextureSize(64, 32); + Shape18.mirror = true; + setRotation(Shape18, 0F, 0F, 0F); + Shape19 = new ModelRenderer(this, 36, 0); + Shape19.addBox(0F, 0F, 0F, 2, 1, 1); + Shape19.setRotationPoint(3.5F, 1.8F, -2F); + Shape19.setTextureSize(64, 32); + Shape19.mirror = true; + setRotation(Shape19, 0F, 0F, 0F); + Shape20 = new ModelRenderer(this, 16, 9); + Shape20.addBox(0F, 0F, 0F, 6, 1, 4); + Shape20.setRotationPoint(7F, 4F, -2F); + Shape20.setTextureSize(64, 32); + Shape20.mirror = true; + setRotation(Shape20, 0F, 0F, 0F); + Shape21 = new ModelRenderer(this, 8, 12); + Shape21.addBox(0F, 0F, 0F, 2, 1, 1); + Shape21.setRotationPoint(11F, 0F, 0F); + Shape21.setTextureSize(64, 32); + Shape21.mirror = true; + setRotation(Shape21, 0F, 0F, 0F); + Shape22 = new ModelRenderer(this, 8, 14); + Shape22.addBox(0F, 0F, 0F, 2, 1, 2); + Shape22.setRotationPoint(11F, -1F, 0F); + Shape22.setTextureSize(64, 32); + Shape22.mirror = true; + setRotation(Shape22, -0.3490659F, 0F, 0F); + } + + 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); + Shape8.render(f5); + Shape9.render(f5); + Shape10.render(f5); + Shape11.render(f5); + Shape12.render(f5); + Shape13.render(f5); + Shape14.render(f5); + Shape15.render(f5); + Shape16.render(f5); + Shape17.render(f5); + Shape18.render(f5); + Shape19.render(f5); + Shape20.render(f5); + Shape21.render(f5); + Shape22.render(f5); + } + + public void renderAll(float f5) { + Shape8.render(f5); + Shape9.render(f5); + Shape10.render(f5); + Shape11.render(f5); + Shape12.render(f5); + Shape13.render(f5); + Shape14.render(f5); + Shape15.render(f5); + Shape16.render(f5); + Shape17.render(f5); + Shape18.render(f5); + Shape19.render(f5); + Shape20.render(f5); + Shape21.render(f5); + Shape22.render(f5); + } + + private void setRotation(ModelRenderer model, float x, float y, float z) { + model.rotateAngleX = x; + model.rotateAngleY = y; + model.rotateAngleZ = z; + } + + 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/com/hbm/render/tileentity/RendererObjTester.java b/com/hbm/render/tileentity/RendererObjTester.java index 5b1055275..ca682d118 100644 --- a/com/hbm/render/tileentity/RendererObjTester.java +++ b/com/hbm/render/tileentity/RendererObjTester.java @@ -6,6 +6,9 @@ import org.lwjgl.opengl.GL11; import com.hbm.lib.RefStrings; import com.hbm.main.ResourceManager; +import com.hbm.render.model.ModelCalBarrel; +import com.hbm.render.model.ModelCalDualStock; +import com.hbm.render.model.ModelCalStock; import net.minecraft.client.renderer.OpenGlHelper; import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; @@ -32,8 +35,8 @@ public class RendererObjTester extends TileEntitySpecialRenderer { public void renderTileEntityAt(TileEntity tileEntity, double x, double y, double z, float f) { GL11.glPushMatrix(); - GL11.glTranslated(x + 0.5D, y, z + 0.5D); - //GL11.glRotatef(180, 0F, 0F, 1F); + GL11.glTranslated(x + 0.5D, y + 1, z + 0.5D); + GL11.glRotatef(180, 0F, 0F, 1F); /*switch(tileEntity.getBlockMetadata()) { case 5: @@ -48,9 +51,10 @@ public class RendererObjTester extends TileEntitySpecialRenderer { /*bindTexture(objTesterTexture); objTesterModel.renderAll();*/ - - GL11.glEnable(GL11.GL_LIGHTING); + //GL11.glScaled(5, 5, 5); + + /*GL11.glEnable(GL11.GL_LIGHTING); GL11.glEnable(GL11.GL_CULL_FACE); bindTexture(ResourceManager.sat_foeq_burning_tex); ResourceManager.sat_foeq_burning.renderAll(); @@ -88,7 +92,23 @@ public class RendererObjTester extends TileEntitySpecialRenderer { } GL11.glDisable(GL11.GL_BLEND); - GL11.glEnable(GL11.GL_TEXTURE_2D); + GL11.glEnable(GL11.GL_TEXTURE_2D);*/ + + ModelCalBarrel barrel = new ModelCalBarrel(); + ModelCalStock stock = new ModelCalStock(); + ModelCalDualStock saddle = new ModelCalDualStock(); + + bindTexture(new ResourceLocation(RefStrings.MODID, "textures/models/ModelCalDualStock.png")); + saddle.renderAll(1F/16F); + + bindTexture(new ResourceLocation(RefStrings.MODID, "textures/models/ModelCalBarrel.png")); + GL11.glTranslated(0, 0, -0.25); + barrel.renderAll(1F/16F); + GL11.glTranslated(0, 0, 0.5); + barrel.renderAll(1F/16F); + + bindTexture(new ResourceLocation(RefStrings.MODID, "textures/models/ModelCalStock.png")); + //stock.renderAll(1F/16F); GL11.glPopMatrix(); }