diff --git a/assets/hbm/lang/de_DE.lang b/assets/hbm/lang/de_DE.lang index 0b43a10e9..c82af0b25 100644 --- a/assets/hbm/lang/de_DE.lang +++ b/assets/hbm/lang/de_DE.lang @@ -1085,6 +1085,7 @@ item.gun_rpg_ammo.name=Rakete item.gun_stinger.name=FIM-92 Stinger item.gun_skystinger.name=The One Sky Stinger item.gun_stinger_ammo.name=Stinger-Rakete +item.gun_hk69.name=Granatenpistole item.flame_pony.name=Bild eines Cartoon Ponys item.flame_conspiracy.name=Verschwörungstheorie @@ -1402,6 +1403,7 @@ item.folly_bullet_nuclear.name=12,8cm Atomares Geschoss item.folly_bullet_du.name=12,8cm DU-Geschoss item.cordite.name=Kordit +item.plate_kevlar.name=Kevlar-Keramik-Verbund item.weaponized_starblaster_cell.name=§cManipulierte Sternenblaster-Energiezelle§r @@ -1701,6 +1703,10 @@ item.cmb_helmet.name=CMB-Stahlhelm item.cmb_plate.name=CMB-Stahlbrustpanzer item.cmb_legs.name=CMB-Stahlbeinschutz item.cmb_boots.name=CMB-Stahlstiefel +item.security_helmet.name=Sicherheitshelm +item.security_plate.name=Sicherheitsbrustpanzer +item.security_legs.name=Sicherheitsbeinschutz +item.security_boots.name=Sicherheitsstiefel item.steel_sword.name=Stahlschwert item.steel_pickaxe.name=Stahlspitzhacke diff --git a/assets/hbm/lang/en_US.lang b/assets/hbm/lang/en_US.lang index abe0f6fa2..497350a12 100644 --- a/assets/hbm/lang/en_US.lang +++ b/assets/hbm/lang/en_US.lang @@ -1085,6 +1085,7 @@ item.gun_rpg_ammo.name=Rocket item.gun_stinger.name=FIM-92 Stinger item.gun_skystinger.name=The One Sky Stinger item.gun_stinger_ammo.name=Stinger Rocket +item.gun_hk69.name=Grenade Pistol item.flame_pony.name=Painting of a Cartoon Pony item.flame_conspiracy.name=Conspiracy Theory @@ -1402,6 +1403,7 @@ item.folly_bullet_nuclear.name=12.8cm Nuclear Shell item.folly_bullet_du.name=12.8cm DU-Shell item.cordite.name=Cordite +item.plate_kevlar.name=Kevlar-Ceramic Compound item.weaponized_starblaster_cell.name=§cRigged Star Blaster Energy Cell§r @@ -1701,6 +1703,10 @@ item.cmb_helmet.name=CMB Steel Helmet item.cmb_plate.name=CMB Steel Chestplate item.cmb_legs.name=CMB Steel Leggings item.cmb_boots.name=CMB Steel Boots +item.security_helmet.name=Security Helmet +item.security_plate.name=Security Chestplate +item.security_legs.name=Security Leggings +item.security_boots.name=Security Boots item.steel_sword.name=Steel Sword item.steel_pickaxe.name=Steel Pickaxe diff --git a/assets/hbm/sounds.json b/assets/hbm/sounds.json index ca134c1eb..cf64c2666 100644 --- a/assets/hbm/sounds.json +++ b/assets/hbm/sounds.json @@ -100,6 +100,10 @@ "weapon.follyAquired": {"category": "player", "sounds": [{"name": "weapon/follyAquiredAlt", "stream": false}]}, "weapon.follyFire": {"category": "player", "sounds": [{"name": "weapon/follyFire", "stream": false}]}, "weapon.ricochet": {"category": "player", "sounds": ["weapon/ric1", "weapon/ric2", "weapon/ric3", "weapon/ric4", "weapon/ric5"]}, + "weapon.revolverReload": {"category": "player", "sounds": [{"name": "weapon/revolverReload", "stream": false}]}, + "weapon.shotgunReload": {"category": "player", "sounds": ["weapon/shotgunReload1", "weapon/shotgunReload2", "weapon/shotgunReload3"]}, + "weapon.magReload": {"category": "player", "sounds": [{"name": "weapon/magReload", "stream": false}]}, + "weapon.rpgReload": {"category": "player", "sounds": [{"name": "weapon/rpgReload", "stream": false}]}, "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/magReload.ogg b/assets/hbm/sounds/weapon/magReload.ogg new file mode 100644 index 000000000..de3d7984a Binary files /dev/null and b/assets/hbm/sounds/weapon/magReload.ogg differ diff --git a/assets/hbm/sounds/weapon/revolverReload.ogg b/assets/hbm/sounds/weapon/revolverReload.ogg new file mode 100644 index 000000000..2e0455a01 Binary files /dev/null and b/assets/hbm/sounds/weapon/revolverReload.ogg differ diff --git a/assets/hbm/sounds/weapon/rpgReload.ogg b/assets/hbm/sounds/weapon/rpgReload.ogg new file mode 100644 index 000000000..a6e043f53 Binary files /dev/null and b/assets/hbm/sounds/weapon/rpgReload.ogg differ diff --git a/assets/hbm/sounds/weapon/rpgShoot.ogg b/assets/hbm/sounds/weapon/rpgShoot.ogg index 59d02ce8c..41ba50585 100644 Binary files a/assets/hbm/sounds/weapon/rpgShoot.ogg and b/assets/hbm/sounds/weapon/rpgShoot.ogg differ diff --git a/assets/hbm/sounds/weapon/shotgunReload1.ogg b/assets/hbm/sounds/weapon/shotgunReload1.ogg new file mode 100644 index 000000000..7ab6c8105 Binary files /dev/null and b/assets/hbm/sounds/weapon/shotgunReload1.ogg differ diff --git a/assets/hbm/sounds/weapon/shotgunReload2.ogg b/assets/hbm/sounds/weapon/shotgunReload2.ogg new file mode 100644 index 000000000..43e966250 Binary files /dev/null and b/assets/hbm/sounds/weapon/shotgunReload2.ogg differ diff --git a/assets/hbm/sounds/weapon/shotgunReload3.ogg b/assets/hbm/sounds/weapon/shotgunReload3.ogg new file mode 100644 index 000000000..512c6ea81 Binary files /dev/null and b/assets/hbm/sounds/weapon/shotgunReload3.ogg differ diff --git a/assets/hbm/textures/armor/security_1.png b/assets/hbm/textures/armor/security_1.png new file mode 100644 index 000000000..f3d9d2080 Binary files /dev/null and b/assets/hbm/textures/armor/security_1.png differ diff --git a/assets/hbm/textures/armor/security_2.png b/assets/hbm/textures/armor/security_2.png new file mode 100644 index 000000000..8cc086f9b Binary files /dev/null and b/assets/hbm/textures/armor/security_2.png differ diff --git a/assets/hbm/textures/items/chem_icon_kevlar.png b/assets/hbm/textures/items/chem_icon_kevlar.png new file mode 100644 index 000000000..091ff9b2f Binary files /dev/null and b/assets/hbm/textures/items/chem_icon_kevlar.png differ diff --git a/assets/hbm/textures/items/fragment_actinium.png b/assets/hbm/textures/items/fragment_actinium.png index 24808309d..61159362e 100644 Binary files a/assets/hbm/textures/items/fragment_actinium.png and b/assets/hbm/textures/items/fragment_actinium.png differ diff --git a/assets/hbm/textures/items/fragment_cerium.png b/assets/hbm/textures/items/fragment_cerium.png index abee3a38e..fef9ab7c9 100644 Binary files a/assets/hbm/textures/items/fragment_cerium.png and b/assets/hbm/textures/items/fragment_cerium.png differ diff --git a/assets/hbm/textures/items/fragment_cobalt.png b/assets/hbm/textures/items/fragment_cobalt.png index b844b3222..55306026e 100644 Binary files a/assets/hbm/textures/items/fragment_cobalt.png and b/assets/hbm/textures/items/fragment_cobalt.png differ diff --git a/assets/hbm/textures/items/fragment_lanthanium.png b/assets/hbm/textures/items/fragment_lanthanium.png index 552b1c41b..c4cb89b85 100644 Binary files a/assets/hbm/textures/items/fragment_lanthanium.png and b/assets/hbm/textures/items/fragment_lanthanium.png differ diff --git a/assets/hbm/textures/items/fragment_meteorite.png b/assets/hbm/textures/items/fragment_meteorite.png index 74dd58c7f..c61ffbce8 100644 Binary files a/assets/hbm/textures/items/fragment_meteorite.png and b/assets/hbm/textures/items/fragment_meteorite.png differ diff --git a/assets/hbm/textures/items/fragment_neodymium.png b/assets/hbm/textures/items/fragment_neodymium.png index e8ea7cf4f..a1543ae14 100644 Binary files a/assets/hbm/textures/items/fragment_neodymium.png and b/assets/hbm/textures/items/fragment_neodymium.png differ diff --git a/assets/hbm/textures/items/fragment_niobium.png b/assets/hbm/textures/items/fragment_niobium.png index 25782d270..6614aba6f 100644 Binary files a/assets/hbm/textures/items/fragment_niobium.png and b/assets/hbm/textures/items/fragment_niobium.png differ diff --git a/assets/hbm/textures/items/plate_kevlar.png b/assets/hbm/textures/items/plate_kevlar.png new file mode 100644 index 000000000..7c2c41326 Binary files /dev/null and b/assets/hbm/textures/items/plate_kevlar.png differ diff --git a/assets/hbm/textures/items/security_boots.png b/assets/hbm/textures/items/security_boots.png new file mode 100644 index 000000000..55bbb7734 Binary files /dev/null and b/assets/hbm/textures/items/security_boots.png differ diff --git a/assets/hbm/textures/items/security_helmet.png b/assets/hbm/textures/items/security_helmet.png new file mode 100644 index 000000000..62e1a16ce Binary files /dev/null and b/assets/hbm/textures/items/security_helmet.png differ diff --git a/assets/hbm/textures/items/security_legs.png b/assets/hbm/textures/items/security_legs.png new file mode 100644 index 000000000..6e1f2bf0e Binary files /dev/null and b/assets/hbm/textures/items/security_legs.png differ diff --git a/assets/hbm/textures/items/security_plate.png b/assets/hbm/textures/items/security_plate.png new file mode 100644 index 000000000..080cf94ce Binary files /dev/null and b/assets/hbm/textures/items/security_plate.png differ diff --git a/com/hbm/entity/projectile/EntityBulletBase.java b/com/hbm/entity/projectile/EntityBulletBase.java index ba6e1c154..89b15fbe2 100644 --- a/com/hbm/entity/projectile/EntityBulletBase.java +++ b/com/hbm/entity/projectile/EntityBulletBase.java @@ -15,6 +15,7 @@ import com.hbm.explosion.ExplosionLarge; import com.hbm.explosion.ExplosionNukeGeneric; import com.hbm.handler.BulletConfigSyncingUtil; import com.hbm.handler.BulletConfiguration; +import com.hbm.lib.Library; import com.hbm.lib.ModDamageSource; import com.hbm.main.MainRegistry; import com.hbm.potion.HbmPotion; @@ -26,6 +27,7 @@ import net.minecraft.block.material.Material; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.IProjectile; +import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.Blocks; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.potion.PotionEffect; @@ -208,6 +210,13 @@ public class EntityBulletBase extends Entity implements IProjectile { } else { damagesource = ModDamageSource.causeBulletDamage(this, shooter); } + + if(!worldObj.isRemote) { + if(!config.doesPenetrate) + onEntityImpact(victim); + else + onEntityHurt(victim); + } float damage = rand.nextFloat() * (config.dmgMax - config.dmgMin) + config.dmgMin; @@ -221,13 +230,6 @@ public class EntityBulletBase extends Entity implements IProjectile { victim.attackEntityFrom(damagesource, dmg); } catch (Exception x) { } } - - if(!worldObj.isRemote) { - if(!config.doesPenetrate) - onEntityImpact(victim); - else - onEntityHurt(victim); - } //handle block collision } else if(worldObj.getBlock(movement.blockX, movement.blockY, movement.blockZ).getMaterial() != Material.air) { @@ -428,8 +430,8 @@ public class EntityBulletBase extends Entity implements IProjectile { //for when a bullet dies by hitting an entity private void onEntityImpact(Entity e) { - onBlockImpact(-1, -1, -1); onEntityHurt(e); + onBlockImpact(-1, -1, -1); if(config.boxcar && !worldObj.isRemote) { EntityBoxcar pippo = new EntityBoxcar(worldObj); @@ -461,21 +463,31 @@ public class EntityBulletBase extends Entity implements IProjectile { //for when a bullet hurts an entity, not necessarily dying private void onEntityHurt(Entity e) { - if(config.incendiary > 0 && !worldObj.isRemote) + if(config.incendiary > 0 && !worldObj.isRemote) { e.setFire(config.incendiary); + } - if(config.leadChance > 0 && !worldObj.isRemote && worldObj.rand.nextInt(100) < config.leadChance && e instanceof EntityLivingBase) + if(config.leadChance > 0 && !worldObj.isRemote && worldObj.rand.nextInt(100) < config.leadChance && e instanceof EntityLivingBase) { ((EntityLivingBase)e).addPotionEffect(new PotionEffect(HbmPotion.lead.id, 10 * 20, 0)); + } if(e instanceof EntityLivingBase && config.effects != null && !config.effects.isEmpty() && !worldObj.isRemote) { - for(PotionEffect effect : config.effects) + for(PotionEffect effect : config.effects) { ((EntityLivingBase)e).addPotionEffect(effect); + } } if(config.instakill && e instanceof EntityLivingBase && !worldObj.isRemote) { ((EntityLivingBase)e).setHealth(0.0F); } + + if(config.caustic > 0 && e instanceof EntityPlayer){ + Library.damageSuit((EntityPlayer)e, 0, config.caustic); + Library.damageSuit((EntityPlayer)e, 1, config.caustic); + Library.damageSuit((EntityPlayer)e, 2, config.caustic); + Library.damageSuit((EntityPlayer)e, 3, config.caustic); + } } @Override diff --git a/com/hbm/handler/BulletConfigSyncingUtil.java b/com/hbm/handler/BulletConfigSyncingUtil.java index 1a7d51b63..a344fa066 100644 --- a/com/hbm/handler/BulletConfigSyncingUtil.java +++ b/com/hbm/handler/BulletConfigSyncingUtil.java @@ -42,6 +42,9 @@ public class BulletConfigSyncingUtil { public static final int G20_FLECHETTE = 0x12; public static final int G20_FIRE = 0x13; public static final int G20_EXPLOSIVE = 0x14; + public static final int G20_CAUSTIC = 0x15; + public static final int G20_SHOCK = 0x16; + public static final int G20_WITHER = 0x17; public static final int ROCKET_NORMAL = 0x20; public static final int ROCKET_HE = 0x21; @@ -62,6 +65,8 @@ public class BulletConfigSyncingUtil { public static final int LR22_NORMAL = 0x50; public static final int LR22_AP = 0x51; + public static final int LR22_NORMAL_FIRE = 0x52; + public static final int LR22_AP_FIRE = 0x53; public static final int M44_NORMAL = 0x60; public static final int M44_AP = 0x61; @@ -104,6 +109,9 @@ public class BulletConfigSyncingUtil { configSet.add(new ConfigKeyPair(Gun20GaugeFactory.get20GaugeFlechetteConfig(), G20_FLECHETTE)); configSet.add(new ConfigKeyPair(Gun20GaugeFactory.get20GaugeFireConfig(), G20_FIRE)); configSet.add(new ConfigKeyPair(Gun20GaugeFactory.get20GaugeExplosiveConfig(), G20_EXPLOSIVE)); + configSet.add(new ConfigKeyPair(Gun20GaugeFactory.get20GaugeCausticConfig(), G20_CAUSTIC)); + configSet.add(new ConfigKeyPair(Gun20GaugeFactory.get20GaugeShockConfig(), G20_SHOCK)); + configSet.add(new ConfigKeyPair(Gun20GaugeFactory.get20GaugeWitherConfig(), G20_WITHER)); configSet.add(new ConfigKeyPair(GunRocketFactory.getRocketConfig(), ROCKET_NORMAL)); configSet.add(new ConfigKeyPair(GunRocketFactory.getRocketHEConfig(), ROCKET_HE)); @@ -124,6 +132,8 @@ public class BulletConfigSyncingUtil { configSet.add(new ConfigKeyPair(Gun22LRFactory.get22LRConfig(), LR22_NORMAL)); configSet.add(new ConfigKeyPair(Gun22LRFactory.get22LRAPConfig(), LR22_AP)); + configSet.add(new ConfigKeyPair(Gun22LRFactory.get22LRConfig().setToFire(3), LR22_NORMAL_FIRE)); + configSet.add(new ConfigKeyPair(Gun22LRFactory.get22LRAPConfig().setToFire(3), LR22_AP_FIRE)); configSet.add(new ConfigKeyPair(Gun44MagnumFactory.getNoPipConfig(), M44_NORMAL)); configSet.add(new ConfigKeyPair(Gun44MagnumFactory.getNoPipAPConfig(), M44_AP)); diff --git a/com/hbm/handler/BulletConfiguration.java b/com/hbm/handler/BulletConfiguration.java index 3070ede15..cef9793f7 100644 --- a/com/hbm/handler/BulletConfiguration.java +++ b/com/hbm/handler/BulletConfiguration.java @@ -58,6 +58,7 @@ public class BulletConfiguration { public int shrapnel; public int chlorine; public int leadChance; + public int caustic; public boolean boxcar; public boolean boat; public boolean destroysBlocks; diff --git a/com/hbm/handler/GunConfiguration.java b/com/hbm/handler/GunConfiguration.java index 18c7f5219..00f461009 100644 --- a/com/hbm/handler/GunConfiguration.java +++ b/com/hbm/handler/GunConfiguration.java @@ -40,9 +40,10 @@ public class GunConfiguration { //duration of every animation cycle public int firingDuration; //sound path to the reload sound - public String reloadSound; + public String reloadSound = ""; //sound path to the shooting sound - public String firingSound; + public String firingSound = ""; + public float firingPitch = 1.0F; //how much ammo the clip can hold, 0 if drawn from inventory public int ammoCap; @@ -51,8 +52,8 @@ public class GunConfiguration { //whether or not the infinity enchantment should work public boolean allowsInfinity; - public String name; - public String manufacturer; + public String name = ""; + public String manufacturer = ""; //bullet configs for main and alt fire public List config; @@ -71,8 +72,15 @@ public class GunConfiguration { public static final int RELOAD_FULL = 1; public static final int RELOAD_SINGLE = 2; - public static final String RSOUND_REVOLVER = ""; + public static final String RSOUND_REVOLVER = "hbm:weapon.revolverReload"; public static final String RSOUND_RIFLE = ""; - public static final String RSOUND_SHOTGUN = ""; + public static final String RSOUND_MAG = "hbm:weapon.magReload"; + public static final String RSOUND_SHOTGUN = "hbm:weapon.shotgunReload"; + public static final String RSOUND_LAUNCHER = "hbm:weapon.rpgReload"; + + public GunConfiguration silenced() { + this.firingSound = "hbm:weapon.silencerShoot"; + return this; + } } diff --git a/com/hbm/handler/guncfg/Gun12GaugeFactory.java b/com/hbm/handler/guncfg/Gun12GaugeFactory.java index 54429cc03..dad2e36e5 100644 --- a/com/hbm/handler/guncfg/Gun12GaugeFactory.java +++ b/com/hbm/handler/guncfg/Gun12GaugeFactory.java @@ -1,10 +1,47 @@ package com.hbm.handler.guncfg; +import java.util.ArrayList; + +import com.hbm.handler.BulletConfigSyncingUtil; import com.hbm.handler.BulletConfiguration; +import com.hbm.handler.GunConfiguration; import com.hbm.items.ModItems; +import com.hbm.render.misc.RenderScreenOverlay.Crosshair; public class Gun12GaugeFactory { + public static GunConfiguration getUboinikConfig() { + + GunConfiguration config = new GunConfiguration(); + + config.rateOfFire = 8; + config.roundsPerCycle = 1; + config.gunMode = GunConfiguration.MODE_NORMAL; + config.firingMode = GunConfiguration.FIRE_MANUAL; + config.hasReloadAnim = false; + config.hasFiringAnim = false; + config.hasSpinup = false; + config.hasSpindown = false; + config.reloadDuration = 10; + config.firingDuration = 0; + config.ammoCap = 6; + config.durability = 2000; + config.reloadType = GunConfiguration.RELOAD_SINGLE; + config.allowsInfinity = true; + config.crosshair = Crosshair.L_CIRCLE; + config.reloadSound = GunConfiguration.RSOUND_REVOLVER; + config.firingSound = "hbm:weapon.shotgunShoot"; + + config.name = "Uboinik Revolving Shotgun"; + config.manufacturer = "Metro Gunsmiths"; + + config.config = new ArrayList(); + config.config.add(BulletConfigSyncingUtil.G12_NORMAL); + config.config.add(BulletConfigSyncingUtil.G12_INCENDIARY); + + return config; + } + public static BulletConfiguration get12GaugeConfig() { BulletConfiguration bullet = BulletConfigFactory.standardBuckshotConfig(); diff --git a/com/hbm/handler/guncfg/Gun20GaugeFactory.java b/com/hbm/handler/guncfg/Gun20GaugeFactory.java index a0d42a415..96e1bd1db 100644 --- a/com/hbm/handler/guncfg/Gun20GaugeFactory.java +++ b/com/hbm/handler/guncfg/Gun20GaugeFactory.java @@ -6,11 +6,15 @@ import com.hbm.handler.BulletConfigSyncingUtil; import com.hbm.handler.BulletConfiguration; import com.hbm.handler.GunConfiguration; import com.hbm.items.ModItems; +import com.hbm.potion.HbmPotion; import com.hbm.render.misc.RenderScreenOverlay.Crosshair; +import net.minecraft.potion.Potion; +import net.minecraft.potion.PotionEffect; + public class Gun20GaugeFactory { - public static GunConfiguration getMareConfig() { + public static GunConfiguration getShotgunConfig() { GunConfiguration config = new GunConfiguration(); @@ -28,7 +32,29 @@ public class Gun20GaugeFactory { config.reloadType = GunConfiguration.RELOAD_SINGLE; config.allowsInfinity = true; config.crosshair = Crosshair.L_CIRCLE; - config.durability = 350; + config.reloadSound = GunConfiguration.RSOUND_SHOTGUN; + + config.config = new ArrayList(); + config.config.add(BulletConfigSyncingUtil.G20_NORMAL); + config.config.add(BulletConfigSyncingUtil.G20_SLUG); + config.config.add(BulletConfigSyncingUtil.G20_FLECHETTE); + config.config.add(BulletConfigSyncingUtil.G20_FIRE); + config.config.add(BulletConfigSyncingUtil.G20_EXPLOSIVE); + config.config.add(BulletConfigSyncingUtil.G20_CAUSTIC); + config.config.add(BulletConfigSyncingUtil.G20_SHOCK); + config.config.add(BulletConfigSyncingUtil.G20_WITHER); + + return config; + } + + public static GunConfiguration getMareConfig() { + + GunConfiguration config = getShotgunConfig(); + + config.durability = 3500; + config.reloadSound = GunConfiguration.RSOUND_SHOTGUN; + config.firingSound = "hbm:weapon.revolverShootAlt"; + config.firingPitch = 0.75F; config.name = "Winchester Model 1887"; config.manufacturer = "Winchester Repeating Arms Company"; @@ -39,6 +65,86 @@ public class Gun20GaugeFactory { config.config.add(BulletConfigSyncingUtil.G20_FLECHETTE); config.config.add(BulletConfigSyncingUtil.G20_FIRE); config.config.add(BulletConfigSyncingUtil.G20_EXPLOSIVE); + config.config.add(BulletConfigSyncingUtil.G20_CAUSTIC); + config.config.add(BulletConfigSyncingUtil.G20_SHOCK); + config.config.add(BulletConfigSyncingUtil.G20_WITHER); + + return config; + } + + public static GunConfiguration getMareDarkConfig() { + + GunConfiguration config = getShotgunConfig(); + + config.durability = 4000; + config.reloadSound = GunConfiguration.RSOUND_SHOTGUN; + config.firingSound = "hbm:weapon.revolverShootAlt"; + config.firingPitch = 0.75F; + + config.name = "Winchester Model 1887 Inox"; + config.manufacturer = "Winchester Repeating Arms Company"; + + config.config = new ArrayList(); + config.config.add(BulletConfigSyncingUtil.G20_NORMAL); + config.config.add(BulletConfigSyncingUtil.G20_SLUG); + config.config.add(BulletConfigSyncingUtil.G20_FLECHETTE); + config.config.add(BulletConfigSyncingUtil.G20_FIRE); + config.config.add(BulletConfigSyncingUtil.G20_EXPLOSIVE); + config.config.add(BulletConfigSyncingUtil.G20_CAUSTIC); + config.config.add(BulletConfigSyncingUtil.G20_SHOCK); + config.config.add(BulletConfigSyncingUtil.G20_WITHER); + + return config; + } + + public static GunConfiguration getBoltConfig() { + + GunConfiguration config = getShotgunConfig(); + + config.ammoCap = 1; + config.durability = 4000; + config.reloadSound = GunConfiguration.RSOUND_SHOTGUN; + config.firingSound = "hbm:weapon.revolverShoot"; + config.firingPitch = 0.75F; + + config.name = "Winchester Model 20 Inox"; + config.manufacturer = "Winchester Repeating Arms Company"; + + config.config = new ArrayList(); + config.config.add(BulletConfigSyncingUtil.G20_SLUG); + config.config.add(BulletConfigSyncingUtil.G20_NORMAL); + config.config.add(BulletConfigSyncingUtil.G20_FLECHETTE); + config.config.add(BulletConfigSyncingUtil.G20_FIRE); + config.config.add(BulletConfigSyncingUtil.G20_EXPLOSIVE); + config.config.add(BulletConfigSyncingUtil.G20_CAUSTIC); + config.config.add(BulletConfigSyncingUtil.G20_SHOCK); + config.config.add(BulletConfigSyncingUtil.G20_WITHER); + + return config; + } + + public static GunConfiguration getBoltGreenConfig() { + + GunConfiguration config = getShotgunConfig(); + + config.ammoCap = 1; + config.durability = 3500; + config.reloadSound = GunConfiguration.RSOUND_SHOTGUN; + config.firingSound = "hbm:weapon.revolverShoot"; + config.firingPitch = 0.75F; + + config.name = "Winchester Model 20 Polymer"; + config.manufacturer = "Winchester Repeating Arms Company"; + + config.config = new ArrayList(); + config.config.add(BulletConfigSyncingUtil.G20_SLUG); + config.config.add(BulletConfigSyncingUtil.G20_NORMAL); + config.config.add(BulletConfigSyncingUtil.G20_FLECHETTE); + config.config.add(BulletConfigSyncingUtil.G20_FIRE); + config.config.add(BulletConfigSyncingUtil.G20_EXPLOSIVE); + config.config.add(BulletConfigSyncingUtil.G20_CAUSTIC); + config.config.add(BulletConfigSyncingUtil.G20_SHOCK); + config.config.add(BulletConfigSyncingUtil.G20_WITHER); return config; } @@ -100,12 +206,65 @@ public class Gun20GaugeFactory { BulletConfiguration bullet = BulletConfigFactory.standardBuckshotConfig(); bullet.ammo = ModItems.ammo_20gauge_explosive; - bullet.dmgMin = 2; - bullet.dmgMax = 6; + bullet.dmgMin = 6; + bullet.dmgMax = 8; bullet.wear = 25; bullet.explosive = 0.5F; return bullet; } + + public static BulletConfiguration get20GaugeCausticConfig() { + + BulletConfiguration bullet = BulletConfigFactory.standardBuckshotConfig(); + + bullet.ammo = ModItems.ammo_20gauge_caustic; + bullet.dmgMin = 2; + bullet.dmgMax = 6; + bullet.wear = 25; + bullet.caustic = 5; + bullet.doesRicochet = false; + bullet.HBRC = 0; + bullet.LBRC = 0; + + bullet.effects = new ArrayList(); + bullet.effects.add(new PotionEffect(Potion.poison.id, 10 * 20, 1)); + + return bullet; + } + + public static BulletConfiguration get20GaugeShockConfig() { + + BulletConfiguration bullet = BulletConfigFactory.standardBuckshotConfig(); + + bullet.ammo = ModItems.ammo_20gauge_shock; + bullet.dmgMin = 4; + bullet.dmgMax = 8; + bullet.wear = 25; + bullet.emp = 2; + bullet.doesRicochet = false; + bullet.HBRC = 0; + bullet.LBRC = 0; + + bullet.effects = new ArrayList(); + bullet.effects.add(new PotionEffect(Potion.moveSlowdown.id, 10 * 20, 1)); + bullet.effects.add(new PotionEffect(Potion.weakness.id, 10 * 20, 4)); + + return bullet; + } + + public static BulletConfiguration get20GaugeWitherConfig() { + + BulletConfiguration bullet = BulletConfigFactory.standardBuckshotConfig(); + + bullet.ammo = ModItems.ammo_20gauge_wither; + bullet.dmgMin = 4; + bullet.dmgMax = 8; + + bullet.effects = new ArrayList(); + bullet.effects.add(new PotionEffect(Potion.wither.id, 10 * 20, 2)); + + return bullet; + } } diff --git a/com/hbm/handler/guncfg/Gun22LRFactory.java b/com/hbm/handler/guncfg/Gun22LRFactory.java index 9df6e3f5f..81d67517a 100644 --- a/com/hbm/handler/guncfg/Gun22LRFactory.java +++ b/com/hbm/handler/guncfg/Gun22LRFactory.java @@ -1,9 +1,62 @@ package com.hbm.handler.guncfg; +import java.util.ArrayList; + +import com.hbm.handler.BulletConfigSyncingUtil; import com.hbm.handler.BulletConfiguration; +import com.hbm.handler.GunConfiguration; import com.hbm.items.ModItems; +import com.hbm.render.misc.RenderScreenOverlay.Crosshair; public class Gun22LRFactory { + + public static GunConfiguration getUziConfig() { + + GunConfiguration config = new GunConfiguration(); + + config.rateOfFire = 1; + config.roundsPerCycle = 1; + config.gunMode = GunConfiguration.MODE_NORMAL; + config.firingMode = GunConfiguration.FIRE_AUTO; + config.hasReloadAnim = false; + config.hasFiringAnim = false; + config.hasSpinup = false; + config.hasSpindown = false; + config.reloadDuration = 20; + config.firingDuration = 0; + config.ammoCap = 32; + config.reloadType = GunConfiguration.RELOAD_FULL; + config.allowsInfinity = true; + config.crosshair = Crosshair.L_CROSS; + config.durability = 2000; + config.reloadSound = GunConfiguration.RSOUND_MAG; + config.firingSound = "hbm:weapon.uziShoot"; + + config.name = "IMI Uzi"; + config.manufacturer = "Israel Military Industries"; + + config.config = new ArrayList(); + config.config.add(BulletConfigSyncingUtil.LR22_NORMAL); + config.config.add(BulletConfigSyncingUtil.LR22_AP); + + return config; + } + + public static GunConfiguration getSaturniteConfig() { + + GunConfiguration config = getUziConfig(); + + config.durability = 3500; + + config.name = "IMI Uzi D-25A"; + config.manufacturer = "IMI / Big MT"; + + config.config = new ArrayList(); + config.config.add(BulletConfigSyncingUtil.LR22_NORMAL_FIRE); + config.config.add(BulletConfigSyncingUtil.LR22_AP_FIRE); + + return config; + } static float inaccuracy = 5; public static BulletConfiguration get22LRConfig() { diff --git a/com/hbm/handler/guncfg/Gun357MagnumFactory.java b/com/hbm/handler/guncfg/Gun357MagnumFactory.java index 3fd129442..9ae78271a 100644 --- a/com/hbm/handler/guncfg/Gun357MagnumFactory.java +++ b/com/hbm/handler/guncfg/Gun357MagnumFactory.java @@ -31,6 +31,8 @@ public class Gun357MagnumFactory { config.reloadType = GunConfiguration.RELOAD_FULL; config.allowsInfinity = true; config.crosshair = Crosshair.L_CLASSIC; + config.reloadSound = GunConfiguration.RSOUND_REVOLVER; + config.firingSound = "hbm:weapon.revolverShoot"; return config; } @@ -117,6 +119,7 @@ public class Gun357MagnumFactory { config.rateOfFire = 7; config.ammoCap = 17; config.durability = 5000; + config.firingSound = "hbm:weapon.heavyShoot"; config.name = "Britannia Standard Issue Motorized Handgun"; config.manufacturer = "BAE Systems plc"; @@ -132,6 +135,7 @@ public class Gun357MagnumFactory { GunConfiguration config = getBaseConfig(); config.durability = 7500; + config.firingSound = "hbm:weapon.schrabidiumShoot"; config.name = "FFI Viper Ultra"; config.manufacturer = "FlimFlam Industries"; @@ -147,6 +151,7 @@ public class Gun357MagnumFactory { GunConfiguration config = getBaseConfig(); config.durability = 4000; + config.firingSound = "hbm:weapon.schrabidiumShoot"; config.name = "FFI Viper N1"; config.manufacturer = "FlimFlam Industries"; @@ -162,6 +167,7 @@ public class Gun357MagnumFactory { GunConfiguration config = getBaseConfig(); config.durability = 4000; + config.firingSound = "hbm:weapon.schrabidiumShoot"; config.name = "FFI Viper N2"; config.manufacturer = "FlimFlam Industries"; diff --git a/com/hbm/handler/guncfg/Gun44MagnumFactory.java b/com/hbm/handler/guncfg/Gun44MagnumFactory.java index 4ce357d9b..684416015 100644 --- a/com/hbm/handler/guncfg/Gun44MagnumFactory.java +++ b/com/hbm/handler/guncfg/Gun44MagnumFactory.java @@ -1,10 +1,113 @@ package com.hbm.handler.guncfg; +import java.util.ArrayList; + +import com.hbm.handler.BulletConfigSyncingUtil; import com.hbm.handler.BulletConfiguration; +import com.hbm.handler.GunConfiguration; import com.hbm.items.ModItems; +import com.hbm.render.misc.RenderScreenOverlay.Crosshair; public class Gun44MagnumFactory { + public static GunConfiguration getBaseConfig() { + + GunConfiguration config = new GunConfiguration(); + + config.rateOfFire = 10; + config.roundsPerCycle = 1; + config.gunMode = GunConfiguration.MODE_NORMAL; + config.firingMode = GunConfiguration.FIRE_MANUAL; + config.hasReloadAnim = false; + config.hasFiringAnim = false; + config.hasSpinup = false; + config.hasSpindown = false; + config.reloadDuration = 10; + config.firingDuration = 0; + config.ammoCap = 6; + config.reloadType = GunConfiguration.RELOAD_FULL; + config.allowsInfinity = true; + config.crosshair = Crosshair.L_CLASSIC; + config.reloadSound = GunConfiguration.RSOUND_REVOLVER; + config.firingSound = "hbm:weapon.revolverShootAlt"; + + return config; + } + + public static GunConfiguration getNovacConfig() { + + GunConfiguration config = getBaseConfig(); + + config.durability = 2500; + + config.name = "IF-18 Horseshoe"; + config.manufacturer = "Ironshod Firearms"; + + config.config = new ArrayList(); + config.config.add(BulletConfigSyncingUtil.M44_NORMAL); + config.config.add(BulletConfigSyncingUtil.M44_AP); + config.config.add(BulletConfigSyncingUtil.M44_DU); + + return config; + } + + public static GunConfiguration getMacintoshConfig() { + + GunConfiguration config = getBaseConfig(); + + config.durability = 4000; + + config.name = "IF-18 Horseshoe Scoped"; + config.manufacturer = "Ironshod Firearms"; + + config.config = new ArrayList(); + config.config.add(BulletConfigSyncingUtil.M44_PIP); + config.config.add(BulletConfigSyncingUtil.M44_NORMAL); + config.config.add(BulletConfigSyncingUtil.M44_AP); + config.config.add(BulletConfigSyncingUtil.M44_DU); + + return config; + } + + public static GunConfiguration getBlackjackConfig() { + + GunConfiguration config = getBaseConfig(); + + config.durability = 4000; + config.ammoCap = 5; + + config.name = "IF-18 Horseshoe Vanity"; + config.manufacturer = "Ironshod Firearms"; + + config.config = new ArrayList(); + config.config.add(BulletConfigSyncingUtil.M44_BJ); + config.config.add(BulletConfigSyncingUtil.M44_NORMAL); + config.config.add(BulletConfigSyncingUtil.M44_AP); + config.config.add(BulletConfigSyncingUtil.M44_DU); + + return config; + } + + public static GunConfiguration getRedConfig() { + + GunConfiguration config = getBaseConfig(); + + config.durability = 4000; + config.ammoCap = 64; + + config.name = "IF-18 Horseshoe Bottomless Pit"; + config.manufacturer = "Ironshod Firearms R&D"; + + config.config = new ArrayList(); + config.config.add(BulletConfigSyncingUtil.M44_NORMAL); + config.config.add(BulletConfigSyncingUtil.M44_AP); + config.config.add(BulletConfigSyncingUtil.M44_DU); + config.config.add(BulletConfigSyncingUtil.M44_PIP); + config.config.add(BulletConfigSyncingUtil.M44_BJ); + + return config; + } + public static BulletConfiguration getNoPipConfig() { BulletConfiguration bullet = BulletConfigFactory.standardBulletConfig(); diff --git a/com/hbm/handler/guncfg/Gun50BMGFactory.java b/com/hbm/handler/guncfg/Gun50BMGFactory.java index cf1cd6cc0..53f1a56be 100644 --- a/com/hbm/handler/guncfg/Gun50BMGFactory.java +++ b/com/hbm/handler/guncfg/Gun50BMGFactory.java @@ -1,9 +1,82 @@ package com.hbm.handler.guncfg; +import java.util.ArrayList; + +import com.hbm.handler.BulletConfigSyncingUtil; import com.hbm.handler.BulletConfiguration; +import com.hbm.handler.GunConfiguration; import com.hbm.items.ModItems; +import com.hbm.render.misc.RenderScreenOverlay.Crosshair; public class Gun50BMGFactory { + + public static GunConfiguration getCalamityConfig() { + + GunConfiguration config = new GunConfiguration(); + + config.rateOfFire = 6; + config.roundsPerCycle = 1; + config.gunMode = GunConfiguration.MODE_NORMAL; + config.firingMode = GunConfiguration.FIRE_AUTO; + config.hasReloadAnim = false; + config.hasFiringAnim = false; + config.hasSpinup = false; + config.hasSpindown = false; + config.reloadDuration = 20; + config.firingDuration = 0; + config.ammoCap = 50; + config.reloadType = GunConfiguration.RELOAD_FULL; + config.allowsInfinity = true; + config.crosshair = Crosshair.L_BOX; + config.durability = 2000; + config.reloadSound = GunConfiguration.RSOUND_MAG; + config.firingSound = "hbm:weapon.calShoot"; + + config.name = "Maxim gun"; + config.manufacturer = "Hiram Maxim"; + + config.config = new ArrayList(); + config.config.add(BulletConfigSyncingUtil.BMG50_NORMAL); + config.config.add(BulletConfigSyncingUtil.BMG50_INCENDIARY); + config.config.add(BulletConfigSyncingUtil.BMG50_EXPLOSIVE); + config.config.add(BulletConfigSyncingUtil.BMG50_DU); + + return config; + } + + public static GunConfiguration getSaddleConfig() { + + GunConfiguration config = new GunConfiguration(); + + config.rateOfFire = 3; + config.roundsPerCycle = 1; + config.gunMode = GunConfiguration.MODE_NORMAL; + config.firingMode = GunConfiguration.FIRE_AUTO; + config.hasReloadAnim = false; + config.hasFiringAnim = false; + config.hasSpinup = false; + config.hasSpindown = false; + config.reloadDuration = 30; + config.firingDuration = 0; + config.ammoCap = 100; + config.reloadType = GunConfiguration.RELOAD_FULL; + config.allowsInfinity = true; + config.crosshair = Crosshair.L_BOX; + config.durability = 3500; + config.reloadSound = GunConfiguration.RSOUND_MAG; + config.firingSound = "hbm:weapon.calShoot"; + + config.name = "Double Maxim gun"; + config.manufacturer = "???"; + + config.config = new ArrayList(); + config.config.add(BulletConfigSyncingUtil.BMG50_NORMAL); + config.config.add(BulletConfigSyncingUtil.BMG50_INCENDIARY); + config.config.add(BulletConfigSyncingUtil.BMG50_EXPLOSIVE); + config.config.add(BulletConfigSyncingUtil.BMG50_DU); + + return config; + } static float inaccuracy = 2.5F; public static BulletConfiguration get50BMGConfig() { diff --git a/com/hbm/handler/guncfg/Gun5mmFactory.java b/com/hbm/handler/guncfg/Gun5mmFactory.java index c0e431fe8..eb1777801 100644 --- a/com/hbm/handler/guncfg/Gun5mmFactory.java +++ b/com/hbm/handler/guncfg/Gun5mmFactory.java @@ -1,10 +1,81 @@ package com.hbm.handler.guncfg; +import java.util.ArrayList; + +import com.hbm.handler.BulletConfigSyncingUtil; import com.hbm.handler.BulletConfiguration; +import com.hbm.handler.GunConfiguration; import com.hbm.items.ModItems; +import com.hbm.render.misc.RenderScreenOverlay.Crosshair; public class Gun5mmFactory { + public static GunConfiguration getMinigunConfig() { + + GunConfiguration config = new GunConfiguration(); + + config.rateOfFire = 1; + config.roundsPerCycle = 5; + config.gunMode = GunConfiguration.MODE_NORMAL; + config.firingMode = GunConfiguration.FIRE_AUTO; + config.hasReloadAnim = false; + config.hasFiringAnim = false; + config.hasSpinup = false; + config.hasSpindown = false; + config.reloadDuration = 20; + config.firingDuration = 0; + config.ammoCap = 0; + config.reloadType = GunConfiguration.RELOAD_NONE; + config.allowsInfinity = true; + config.crosshair = Crosshair.L_CIRCLE; + config.durability = 5000; + config.firingSound = "hbm:weapon.lacunaeShoot"; + + config.config = new ArrayList(); + config.config.add(BulletConfigSyncingUtil.R5_NORMAL); + config.config.add(BulletConfigSyncingUtil.R5_EXPLOSIVE); + config.config.add(BulletConfigSyncingUtil.R5_DU); + + return config; + } + + public static GunConfiguration get53Config() { + + GunConfiguration config = getMinigunConfig(); + + config.name = "CZ53 Personal Minigun"; + config.manufacturer = "Rockwell International Corporation"; + + return config; + } + + public static GunConfiguration get57Config() { + + GunConfiguration config = getMinigunConfig(); + + config.durability = 6500; + config.name = "CZ57 Avenger Minigun"; + config.manufacturer = "Rockwell International Corporation"; + + return config; + } + + public static GunConfiguration getLacunaeConfig() { + + GunConfiguration config = getMinigunConfig(); + + config.durability = 10000; + config.name = "Auntie Lacunae"; + config.manufacturer = "Rockwell International Corporation?"; + + config.config = new ArrayList(); + config.config.add(BulletConfigSyncingUtil.R5_NORMAL_BOLT); + config.config.add(BulletConfigSyncingUtil.R5_EXPLOSIVE_BOLT); + config.config.add(BulletConfigSyncingUtil.R5_DU_BOLT); + + return config; + } + static float inaccuracy = 10; public static BulletConfiguration get5mmConfig() { diff --git a/com/hbm/handler/guncfg/Gun9mmFactory.java b/com/hbm/handler/guncfg/Gun9mmFactory.java index 8a7dff74e..ed1b68ded 100644 --- a/com/hbm/handler/guncfg/Gun9mmFactory.java +++ b/com/hbm/handler/guncfg/Gun9mmFactory.java @@ -1,9 +1,47 @@ package com.hbm.handler.guncfg; +import java.util.ArrayList; + +import com.hbm.handler.BulletConfigSyncingUtil; import com.hbm.handler.BulletConfiguration; +import com.hbm.handler.GunConfiguration; import com.hbm.items.ModItems; +import com.hbm.render.misc.RenderScreenOverlay.Crosshair; public class Gun9mmFactory { + + public static GunConfiguration getMP40Config() { + + GunConfiguration config = new GunConfiguration(); + + config.rateOfFire = 2; + config.roundsPerCycle = 1; + config.gunMode = GunConfiguration.MODE_NORMAL; + config.firingMode = GunConfiguration.FIRE_AUTO; + config.hasReloadAnim = false; + config.hasFiringAnim = false; + config.hasSpinup = false; + config.hasSpindown = false; + config.reloadDuration = 20; + config.firingDuration = 0; + config.ammoCap = 32; + config.reloadType = GunConfiguration.RELOAD_FULL; + config.allowsInfinity = true; + config.crosshair = Crosshair.L_SPLIT; + config.durability = 2500; + config.reloadSound = GunConfiguration.RSOUND_MAG; + config.firingSound = "hbm:weapon.rifleShoot"; + + config.name = "Maschinenpistole 40"; + config.manufacturer = "Erfurter Maschinenfabrik Geipel"; + + config.config = new ArrayList(); + config.config.add(BulletConfigSyncingUtil.P9_NORMAL); + config.config.add(BulletConfigSyncingUtil.P9_AP); + config.config.add(BulletConfigSyncingUtil.P9_DU); + + return config; + } static float inaccuracy = 5; public static BulletConfiguration get9mmConfig() { diff --git a/com/hbm/handler/guncfg/GunRocketFactory.java b/com/hbm/handler/guncfg/GunRocketFactory.java index 00d58f521..4d5dc8a55 100644 --- a/com/hbm/handler/guncfg/GunRocketFactory.java +++ b/com/hbm/handler/guncfg/GunRocketFactory.java @@ -22,12 +22,14 @@ public class GunRocketFactory { config.hasFiringAnim = false; config.hasSpinup = false; config.hasSpindown = false; - config.reloadDuration = 60; + config.reloadDuration = 30; config.firingDuration = 0; config.ammoCap = 1; config.reloadType = GunConfiguration.RELOAD_SINGLE; config.allowsInfinity = true; config.crosshair = Crosshair.L_CIRCUMFLEX; + config.firingSound = "hbm:weapon.rpgShoot"; + config.reloadSound = GunConfiguration.RSOUND_LAUNCHER; config.name = "Carl Gustav Recoilless Rifle M1"; config.manufacturer = "Saab Bofors Dynamics"; diff --git a/com/hbm/handler/nei/PressRecipeHandler.java b/com/hbm/handler/nei/PressRecipeHandler.java index 0053e426a..8a7bf1e22 100644 --- a/com/hbm/handler/nei/PressRecipeHandler.java +++ b/com/hbm/handler/nei/PressRecipeHandler.java @@ -77,7 +77,7 @@ public class PressRecipeHandler extends TemplateRecipeHandler { @Override public String getRecipeName() { - return "Burner Press"; + return "Press"; } @Override diff --git a/com/hbm/inventory/MachineRecipes.java b/com/hbm/inventory/MachineRecipes.java index 75fc22f1a..0fdc84aad 100644 --- a/com/hbm/inventory/MachineRecipes.java +++ b/com/hbm/inventory/MachineRecipes.java @@ -3085,6 +3085,16 @@ public class MachineRecipes { list.add(new ItemStack(ModItems.circuit_red_copper, 4)); list.add(new ItemStack(ModItems.plate_polymer, 8)); break; + case EPRESS: + list.add(new ItemStack(ModItems.plate_steel, 8)); + list.add(new ItemStack(ModItems.plate_polymer, 4)); + list.add(new ItemStack(ModItems.pipes_steel, 1)); + list.add(new ItemStack(ModItems.bolt_tungsten, 4)); + list.add(new ItemStack(ModItems.coil_copper, 2)); + list.add(new ItemStack(ModItems.motor, 1)); + list.add(new ItemStack(ModItems.circuit_copper, 1)); + list.add(new ItemStack(ModItems.canister_canola, 1)); + break; case CHEMPLANT: list.add(new ItemStack(ModItems.ingot_steel, 8)); list.add(new ItemStack(ModItems.plate_copper, 6)); @@ -4369,6 +4379,9 @@ public class MachineRecipes { case REFINERY: output = new ItemStack(ModBlocks.machine_refinery, 1); break; + case EPRESS: + output = new ItemStack(ModBlocks.machine_epress, 1); + break; case CHEMPLANT: output = new ItemStack(ModBlocks.machine_chemplant, 1); break; @@ -4955,6 +4968,11 @@ public class MachineRecipes { list.add(new ItemStack(Blocks.planks, 1)); list.add(new ItemStack(Items.sugar, 1)); break; + case KEVLAR: + list.add(new ItemStack(ModItems.niter, 2)); + list.add(new ItemStack(Items.brick, 1)); + list.add(new ItemStack(Items.coal, 1)); + break; default: break; } @@ -5131,7 +5149,10 @@ public class MachineRecipes { input[0] = new FluidStack(400, FluidType.BITUMEN); break; case CORDITE: - input[0] = new FluidStack(250, FluidType.HEATINGOIL); + input[0] = new FluidStack(200, FluidType.HEATINGOIL); + break; + case KEVLAR: + input[0] = new FluidStack(100, FluidType.PETROLEUM); break; default: break; @@ -5241,6 +5262,9 @@ public class MachineRecipes { case CORDITE: output[0] = new ItemStack(ModItems.cordite, 4); break; + case KEVLAR: + output[0] = new ItemStack(ModItems.plate_kevlar, 4); + break; default: break; } diff --git a/com/hbm/items/ModItems.java b/com/hbm/items/ModItems.java index 7cb399619..72c651d42 100644 --- a/com/hbm/items/ModItems.java +++ b/com/hbm/items/ModItems.java @@ -2,8 +2,13 @@ package com.hbm.items; import com.hbm.blocks.ModBlocks; import com.hbm.handler.BucketHandler; +import com.hbm.handler.guncfg.Gun12GaugeFactory; import com.hbm.handler.guncfg.Gun20GaugeFactory; +import com.hbm.handler.guncfg.Gun22LRFactory; import com.hbm.handler.guncfg.Gun357MagnumFactory; +import com.hbm.handler.guncfg.Gun44MagnumFactory; +import com.hbm.handler.guncfg.Gun50BMGFactory; +import com.hbm.handler.guncfg.Gun9mmFactory; import com.hbm.handler.guncfg.GunGrenadeFactory; import com.hbm.handler.guncfg.GunRocketFactory; import com.hbm.items.bomb.*; @@ -155,6 +160,7 @@ public class ModItems { public static Item bolt_tungsten; public static Item bolt_compound; public static Item plate_polymer; + public static Item plate_kevlar; public static Item plate_dineutronium; public static Item plate_desh; public static Item photo_panel; @@ -1190,6 +1196,10 @@ public class ModItems { public static Item asbestos_plate; public static Item asbestos_legs; public static Item asbestos_boots; + public static Item security_helmet; + public static Item security_plate; + public static Item security_legs; + public static Item security_boots; public static Item australium_iii; public static Item australium_iv; @@ -1608,6 +1618,7 @@ public class ModItems { bolt_tungsten = new Item().setUnlocalizedName("bolt_tungsten").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":bolt_tungsten"); bolt_compound = new Item().setUnlocalizedName("bolt_compound").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":bolt_compound"); plate_polymer = new Item().setUnlocalizedName("plate_polymer").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_polymer"); + plate_kevlar = new Item().setUnlocalizedName("plate_kevlar").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_kevlar"); plate_dineutronium = new Item().setUnlocalizedName("plate_dineutronium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_dineutronium"); plate_desh = new Item().setUnlocalizedName("plate_desh").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_desh"); ingot_solinium = new ItemRadioactive().setUnlocalizedName("ingot_solinium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_solinium"); @@ -2325,14 +2336,14 @@ public class ModItems { gun_revolver_nightmare2_ammo = new ItemCustomLore().setUnlocalizedName("gun_revolver_nightmare2_ammo").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_revolver_nightmare2_ammo"); gun_revolver_nightmare2 = new ItemGunBase(Gun357MagnumFactory.getRevolverNightmare2Config()).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(null).setTextureName(RefStrings.MODID + ":gun_revolver_pip_ammo"); - gun_revolver_pip = new GunRevolver(ammo_44_pip, 25, 35, false, false).setMaxDamage(1000).setUnlocalizedName("gun_revolver_pip").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_revolver_pip"); + gun_revolver_pip = new ItemGunBase(Gun44MagnumFactory.getMacintoshConfig()).setMaxDamage(1000).setUnlocalizedName("gun_revolver_pip").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_revolver_pip"); gun_revolver_nopip_ammo = new Item().setUnlocalizedName("gun_revolver_nopip_ammo").setCreativeTab(null).setTextureName(RefStrings.MODID + ":gun_revolver_nopip_ammo"); - gun_revolver_nopip = new GunRevolver(ammo_44, 25, 35, false, false).setMaxDamage(1000).setUnlocalizedName("gun_revolver_nopip").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_revolver_nopip"); - gun_revolver_blackjack = new GunRevolver(ammo_44_bj, 35, 45, false, false).setMaxDamage(1000).setUnlocalizedName("gun_revolver_blackjack").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_revolver_blackjack"); - gun_revolver_red = new GunRevolver(ammo_44, 100, 105, false, false).setMaxDamage(1000).setUnlocalizedName("gun_revolver_red").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_revolver_red"); + gun_revolver_nopip = new ItemGunBase(Gun44MagnumFactory.getNovacConfig()).setMaxDamage(1000).setUnlocalizedName("gun_revolver_nopip").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_revolver_nopip"); + gun_revolver_blackjack = new ItemGunBase(Gun44MagnumFactory.getBlackjackConfig()).setMaxDamage(1000).setUnlocalizedName("gun_revolver_blackjack").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_revolver_blackjack"); + gun_revolver_red = new ItemGunBase(Gun44MagnumFactory.getRedConfig()).setMaxDamage(1000).setUnlocalizedName("gun_revolver_red").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_revolver_red"); gun_calamity_ammo = new ItemCustomLore().setUnlocalizedName("gun_calamity_ammo").setCreativeTab(null).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_calamity = new ItemGunBase(Gun50BMGFactory.getCalamityConfig()).setUnlocalizedName("gun_calamity").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_calamity"); + gun_calamity_dual = new ItemGunBase(Gun50BMGFactory.getSaddleConfig()).setUnlocalizedName("gun_calamity_dual").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_calamity_dual"); gun_lacunae_ammo = new ItemCustomLore().setUnlocalizedName("gun_lacunae_ammo").setCreativeTab(null).setTextureName(RefStrings.MODID + ":gun_lacunae_ammo"); gun_minigun = new GunLacunae().setUnlocalizedName("gun_minigun").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_minigun"); gun_avenger = new GunLacunae().setUnlocalizedName("gun_avenger").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_avenger"); @@ -2346,21 +2357,21 @@ public class ModItems { gun_bf_ammo = new Item().setUnlocalizedName("gun_bf_ammo").setCreativeTab(null).setTextureName(RefStrings.MODID + ":gun_bf_ammo"); gun_bf = new GunBaleFlare().setMaxDamage(2500).setUnlocalizedName("gun_bf").setCreativeTab(null).setTextureName(RefStrings.MODID + ":gun_bf"); gun_mp40_ammo = new Item().setUnlocalizedName("gun_mp40_ammo").setCreativeTab(null).setTextureName(RefStrings.MODID + ":gun_mp40_ammo"); - gun_mp40 = new GunSMG().setUnlocalizedName("gun_mp40").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_mp40"); + gun_mp40 = new ItemGunBase(Gun9mmFactory.getMP40Config()).setUnlocalizedName("gun_mp40").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_mp40"); gun_uzi_ammo = new Item().setUnlocalizedName("gun_uzi_ammo").setCreativeTab(null).setTextureName(RefStrings.MODID + ":gun_uzi_ammo"); - gun_uzi = new GunUZI().setUnlocalizedName("gun_uzi").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_uzi"); - gun_uzi_silencer = new GunUZI().setUnlocalizedName("gun_uzi_silencer").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_uzi_silencer"); - gun_uzi_saturnite = new GunUZI().setUnlocalizedName("gun_uzi_saturnite").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_uzi_saturnite"); - gun_uzi_saturnite_silencer = new GunUZI().setUnlocalizedName("gun_uzi_saturnite_silencer").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_uzi_saturnite_silencer"); + gun_uzi = new ItemGunBase(Gun22LRFactory.getUziConfig()).setUnlocalizedName("gun_uzi").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_uzi"); + gun_uzi_silencer = new ItemGunBase(Gun22LRFactory.getUziConfig().silenced()).setUnlocalizedName("gun_uzi_silencer").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_uzi_silencer"); + gun_uzi_saturnite = new ItemGunBase(Gun22LRFactory.getSaturniteConfig()).setUnlocalizedName("gun_uzi_saturnite").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_uzi_saturnite"); + gun_uzi_saturnite_silencer = new ItemGunBase(Gun22LRFactory.getSaturniteConfig().silenced()).setUnlocalizedName("gun_uzi_saturnite_silencer").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_uzi_saturnite_silencer"); gun_uboinik_ammo = new Item().setUnlocalizedName("gun_uboinik_ammo").setCreativeTab(null).setTextureName(RefStrings.MODID + ":gun_uboinik_ammo"); - gun_uboinik = new GunShotgun().setUnlocalizedName("gun_uboinik").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_uboinik"); + gun_uboinik = new ItemGunBase(Gun12GaugeFactory.getUboinikConfig()).setUnlocalizedName("gun_uboinik").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_uboinik"); gun_lever_action_ammo = new Item().setUnlocalizedName("gun_lever_action_ammo").setCreativeTab(null).setTextureName(RefStrings.MODID + ":gun_lever_action_ammo"); gun_lever_action = new ItemGunBase(Gun20GaugeFactory.getMareConfig()).setUnlocalizedName("gun_lever_action").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_lever_action"); - gun_lever_action_dark = new GunLeverAction().setUnlocalizedName("gun_lever_action_dark").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_lever_action_dark"); + gun_lever_action_dark = new ItemGunBase(Gun20GaugeFactory.getMareDarkConfig()).setUnlocalizedName("gun_lever_action_dark").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_lever_action_dark"); gun_lever_action_sonata = new GunLeverActionS().setUnlocalizedName("gun_lever_action_sonata").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_lever_action_sonata"); gun_bolt_action_ammo = new Item().setUnlocalizedName("gun_bolt_action_ammo").setCreativeTab(null).setTextureName(RefStrings.MODID + ":gun_bolt_action_ammo"); - gun_bolt_action = new GunBoltAction().setUnlocalizedName("gun_bolt_action").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_bolt_action"); - gun_bolt_action_green = new GunBoltAction().setUnlocalizedName("gun_bolt_action_green").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_bolt_action_green"); + gun_bolt_action = new ItemGunBase(Gun20GaugeFactory.getBoltConfig()).setUnlocalizedName("gun_bolt_action").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_bolt_action"); + gun_bolt_action_green = new ItemGunBase(Gun20GaugeFactory.getBoltGreenConfig()).setUnlocalizedName("gun_bolt_action_green").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_bolt_action_green"); gun_bolt_action_saturnite = new GunBoltAction().setUnlocalizedName("gun_bolt_action_saturnite").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_bolt_action_saturnite"); gun_b92_ammo = new GunB92Cell().setUnlocalizedName("gun_b92_ammo").setMaxStackSize(1).setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_b92_ammo_alt"); gun_b92 = new GunB92().setUnlocalizedName("gun_b92").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_b92"); @@ -2757,6 +2768,10 @@ public class ModItems { asbestos_plate = new ArmorAsbestos(MainRegistry.enumArmorMaterialSteel, 7, 1).setUnlocalizedName("asbestos_plate").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":asbestos_plate"); asbestos_legs = new ArmorAsbestos(MainRegistry.enumArmorMaterialSteel, 7, 2).setUnlocalizedName("asbestos_legs").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":asbestos_legs"); asbestos_boots = new ArmorAsbestos(MainRegistry.enumArmorMaterialSteel, 7, 3).setUnlocalizedName("asbestos_boots").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":asbestos_boots"); + security_helmet = new ModArmor(MainRegistry.enumArmorMaterialSecurity, 7, 0).setUnlocalizedName("security_helmet").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":security_helmet"); + security_plate = new ModArmor(MainRegistry.enumArmorMaterialSecurity, 7, 1).setUnlocalizedName("security_plate").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":security_plate"); + security_legs = new ModArmor(MainRegistry.enumArmorMaterialSecurity, 7, 2).setUnlocalizedName("security_legs").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":security_legs"); + security_boots = new ModArmor(MainRegistry.enumArmorMaterialSecurity, 7, 3).setUnlocalizedName("security_boots").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":security_boots"); jackt = new ModArmor(MainRegistry.enumArmorMaterialSteel, 7, 1).setUnlocalizedName("jackt").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":jackt"); jackt2 = new ModArmor(MainRegistry.enumArmorMaterialSteel, 7, 1).setUnlocalizedName("jackt2").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":jackt2"); @@ -3212,6 +3227,7 @@ public class ModItems { GameRegistry.registerItem(plate_saturnite, plate_saturnite.getUnlocalizedName()); GameRegistry.registerItem(plate_paa, plate_paa.getUnlocalizedName()); GameRegistry.registerItem(plate_polymer, plate_polymer.getUnlocalizedName()); + GameRegistry.registerItem(plate_kevlar, plate_kevlar.getUnlocalizedName()); GameRegistry.registerItem(plate_dalekanium, plate_dalekanium.getUnlocalizedName()); GameRegistry.registerItem(plate_desh, plate_desh.getUnlocalizedName()); GameRegistry.registerItem(plate_euphemium, plate_euphemium.getUnlocalizedName()); @@ -4396,6 +4412,10 @@ public class ModItems { GameRegistry.registerItem(asbestos_plate, asbestos_plate.getUnlocalizedName()); GameRegistry.registerItem(asbestos_legs, asbestos_legs.getUnlocalizedName()); GameRegistry.registerItem(asbestos_boots, asbestos_boots.getUnlocalizedName()); + GameRegistry.registerItem(security_helmet, security_helmet.getUnlocalizedName()); + GameRegistry.registerItem(security_plate, security_plate.getUnlocalizedName()); + GameRegistry.registerItem(security_legs, security_legs.getUnlocalizedName()); + GameRegistry.registerItem(security_boots, security_boots.getUnlocalizedName()); GameRegistry.registerItem(schrabidium_helmet, schrabidium_helmet.getUnlocalizedName()); GameRegistry.registerItem(schrabidium_plate, schrabidium_plate.getUnlocalizedName()); GameRegistry.registerItem(schrabidium_legs, schrabidium_legs.getUnlocalizedName()); diff --git a/com/hbm/items/gear/ModArmor.java b/com/hbm/items/gear/ModArmor.java index 420843814..e5c12be66 100644 --- a/com/hbm/items/gear/ModArmor.java +++ b/com/hbm/items/gear/ModArmor.java @@ -62,6 +62,12 @@ public class ModArmor extends ItemArmor { if(stack.getItem().equals(ModItems.jackt2)) { return (RefStrings.MODID + ":textures/armor/jackt2.png"); } + if(stack.getItem().equals(ModItems.security_helmet) || stack.getItem().equals(ModItems.security_plate) || stack.getItem().equals(ModItems.security_boots)) { + return (RefStrings.MODID + ":textures/armor/security_1.png"); + } + if(stack.getItem().equals(ModItems.security_legs)) { + return (RefStrings.MODID + ":textures/armor/security_2.png"); + } else return null; } diff --git a/com/hbm/items/tool/ItemAssemblyTemplate.java b/com/hbm/items/tool/ItemAssemblyTemplate.java index 324c02d21..1e14e646e 100644 --- a/com/hbm/items/tool/ItemAssemblyTemplate.java +++ b/com/hbm/items/tool/ItemAssemblyTemplate.java @@ -177,6 +177,7 @@ public class ItemAssemblyTemplate extends Item { PUMPJACK, FLARE_STACK, REFINERY, + EPRESS, CHEMPLANT, TANK, MINER, @@ -658,6 +659,8 @@ public class ItemAssemblyTemplate extends Item { return 200; case REFINERY: return 350; + case EPRESS: + return 160; case CHEMPLANT: return 200; case TANK: diff --git a/com/hbm/items/tool/ItemChemistryTemplate.java b/com/hbm/items/tool/ItemChemistryTemplate.java index 9a4834aa7..7d85160c5 100644 --- a/com/hbm/items/tool/ItemChemistryTemplate.java +++ b/com/hbm/items/tool/ItemChemistryTemplate.java @@ -77,7 +77,8 @@ public class ItemChemistryTemplate extends Item { DYN_SCHRAB, DYN_EUPH, DYN_DNT, - CORDITE; + CORDITE, + KEVLAR; public static EnumChemistryTemplate getEnum(int i) { if(i < EnumChemistryTemplate.values().length) @@ -235,6 +236,8 @@ public class ItemChemistryTemplate extends Item { return 5*60*20; case CORDITE: return 40; + case KEVLAR: + return 40; default: return 100; } diff --git a/com/hbm/items/weapon/ItemAmmo.java b/com/hbm/items/weapon/ItemAmmo.java index 5d959dc63..95c4e5474 100644 --- a/com/hbm/items/weapon/ItemAmmo.java +++ b/com/hbm/items/weapon/ItemAmmo.java @@ -43,8 +43,9 @@ public class ItemAmmo extends Item { } if(this == ModItems.ammo_20gauge_caustic) { list.add(EnumChatFormatting.BLUE + "+ Toxic"); + list.add(EnumChatFormatting.BLUE + "+ Caustic"); list.add(EnumChatFormatting.YELLOW + "* Not bouncy"); - list.add(EnumChatFormatting.RED + "- Increased wear"); + list.add(EnumChatFormatting.RED + "- Highly increased wear"); } if(this == ModItems.ammo_20gauge_shock) { list.add(EnumChatFormatting.BLUE + "+ Increased damage"); diff --git a/com/hbm/items/weapon/ItemGunBase.java b/com/hbm/items/weapon/ItemGunBase.java index d6780daab..a40a05a5a 100644 --- a/com/hbm/items/weapon/ItemGunBase.java +++ b/com/hbm/items/weapon/ItemGunBase.java @@ -163,6 +163,7 @@ public class ItemGunBase extends Item implements IHoldableWeapon { } setItemWear(stack, getItemWear(stack) + config.wear); + world.playSoundAtEntity(player, mainConfig.firingSound, 1.0F, mainConfig.firingPitch); //player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_revolver_gold_ammo)); } @@ -206,6 +207,7 @@ public class ItemGunBase extends Item implements IHoldableWeapon { if(player.inventory.hasItem(ammo)) { player.inventory.consumeInventoryItem(ammo); setMag(stack, getMag(stack) + 1); + world.playSoundAtEntity(player, mainConfig.reloadSound, 1.0F, 1.0F); } else { setIsReloading(stack, false); break; @@ -254,6 +256,7 @@ public class ItemGunBase extends Item implements IHoldableWeapon { if(player.inventory.hasItem(ammo)) { player.inventory.consumeInventoryItem(ammo); setMag(stack, getMag(stack) + 1); + world.playSoundAtEntity(player, mainConfig.reloadSound, 1.0F, 1.0F); } else { setIsReloading(stack, false); break; @@ -272,6 +275,11 @@ public class ItemGunBase extends Item implements IHoldableWeapon { } else { setReloadCycle(stack, getReloadCycle(stack) - 1); } + + if(stack != player.getHeldItem()) { + setReloadCycle(stack, 0); + setIsReloading(stack, false); + } } //item mouseover text diff --git a/com/hbm/main/CraftingManager.java b/com/hbm/main/CraftingManager.java index 9a70b03ec..c971d05cf 100644 --- a/com/hbm/main/CraftingManager.java +++ b/com/hbm/main/CraftingManager.java @@ -749,8 +749,9 @@ public class CraftingManager { } public static void reg2() { - + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_rpg, 1), new Object[] { "SSW", " MW", 'S', ModItems.hull_small_steel, 'W', "plateIron", 'M', ModItems.mechanism_launcher_1 })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_hk69, 1), new Object[] { "SSI", " MB", 'S', ModItems.hull_small_steel, 'I', "ingotIron", 'M', ModItems.mechanism_launcher_1, 'B', ModItems.bolt_tungsten })); //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_rpg_ammo, 8), new Object[] { "SI ", "ITI", " I ", 'S', "plateSteel", 'T', Item.getItemFromBlock(Blocks.tnt), 'I', "plateIron", 'M', ModItems.mechanism_launcher_2 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_stinger, 1), new Object[] { "SSW", "CMW", 'S', "plateSteel", 'W', "plateTitanium", 'C', ModItems.circuit_red_copper, 'M', ModItems.mechanism_launcher_2 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_stinger_ammo, 4), new Object[] { "SS ", "STI", " IR", 'S', "plateSteel", 'T', Item.getItemFromBlock(Blocks.tnt), 'I', "plateAluminum", 'R', "dustRedstone" })); @@ -1212,6 +1213,10 @@ public class CraftingManager { GameRegistry.addRecipe(new ItemStack(ModItems.desh_axe, 1), new Object[] { "II", "IS", " S", 'I', ModItems.ingot_desh, 'S', Items.stick }); GameRegistry.addRecipe(new ItemStack(ModItems.desh_shovel, 1), new Object[] { "I", "S", "S", 'I', ModItems.ingot_desh, 'S', Items.stick }); GameRegistry.addRecipe(new ItemStack(ModItems.desh_hoe, 1), new Object[] { "II", " S", " S", 'I', ModItems.ingot_desh, 'S', Items.stick }); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.security_helmet, 1), new Object[] { "SSS", "IGI", 'S', "plateSteel", 'I', ModItems.plate_polymer, 'G', "paneGlass" })); + GameRegistry.addRecipe(new ItemStack(ModItems.security_plate, 1), new Object[] { "KWK", "IKI", "WKW", 'K', ModItems.plate_kevlar, 'I', ModItems.ingot_polymer, 'W', new ItemStack(Blocks.wool, 1, OreDictionary.WILDCARD_VALUE) }); + GameRegistry.addRecipe(new ItemStack(ModItems.security_legs, 1), new Object[] { "IWI", "K K", "W W", 'K', ModItems.plate_kevlar, 'I', ModItems.ingot_polymer, 'W', new ItemStack(Blocks.wool, 1, OreDictionary.WILDCARD_VALUE) }); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.security_boots, 1), new Object[] { "P P", "I I", 'P', "plateSteel", 'I', ModItems.plate_polymer })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.jetpack_boost, 1), new Object[] { "PTP", "SLS", "W W", 'P', "plateSteel", 'T', ModItems.tank_steel, 'S', ModItems.pipes_steel, 'L', Items.leather, 'W', ModItems.thruster_small })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.jetpack_fly, 1), new Object[] { "PTP", "SLS", "W W", 'P', "plateSteel", 'T', ModItems.cap_aluminium, 'S', ModItems.pipes_steel, 'L', ModItems.jetpack_boost, 'W', ModItems.thruster_small })); diff --git a/com/hbm/main/MainRegistry.java b/com/hbm/main/MainRegistry.java index 7f0aefd0e..99bbbe9a7 100644 --- a/com/hbm/main/MainRegistry.java +++ b/com/hbm/main/MainRegistry.java @@ -402,6 +402,7 @@ public class MainRegistry public static ArmorMaterial enumArmorMaterialAusIII = EnumHelper.addArmorMaterial("AUSIII", 375, new int[] {2, 6, 5, 2}, 0); public static ArmorMaterial enumArmorMaterialAusIV = EnumHelper.addArmorMaterial("AUSIV", 375, new int[] {2, 6, 5, 2}, 0); public static ArmorMaterial enumArmorMaterialAusV = EnumHelper.addArmorMaterial("AUSV", 375, new int[] {2, 6, 5, 2}, 0); + public static ArmorMaterial enumArmorMaterialSecurity = EnumHelper.addArmorMaterial("SECURITY", 100, new int[] {3, 8, 6, 3}, 15); //Creative Tabs //ingots, nuggets, wires, machine parts @@ -625,6 +626,7 @@ public class MainRegistry enumArmorMaterialAusIII.customCraftingMaterial = ModItems.ingot_australium; enumArmorMaterialAusIV.customCraftingMaterial = ModItems.rod_australium; enumArmorMaterialAusV.customCraftingMaterial = ModItems.nugget_australium; + enumArmorMaterialSecurity.customCraftingMaterial = ModItems.plate_kevlar; enumToolMaterialSchrabidium.setRepairItem(new ItemStack(ModItems.ingot_schrabidium)); enumToolMaterialHammer.setRepairItem(new ItemStack(Item.getItemFromBlock(ModBlocks.block_schrabidium))); enumToolMaterialChainsaw.setRepairItem(new ItemStack(ModItems.ingot_steel));