diff --git a/src/main/java/com/hbm/crafting/ConsumableRecipes.java b/src/main/java/com/hbm/crafting/ConsumableRecipes.java index 46109d04e..466a04d52 100644 --- a/src/main/java/com/hbm/crafting/ConsumableRecipes.java +++ b/src/main/java/com/hbm/crafting/ConsumableRecipes.java @@ -59,6 +59,7 @@ public class ConsumableRecipes { CraftingManager.addShapelessAuto(new ItemStack(ModItems.coffee_radium), new Object[] { ModItems.coffee, RA226.nugget() }); CraftingManager.addShapelessAuto(new ItemStack(ModItems.ingot_smore), new Object[] { Items.wheat, new ItemStack(ModItems.marshmallow, 1, 1), new ItemStack(Items.dye, 1, 3) }); CraftingManager.addShapelessAuto(new ItemStack(ModItems.marshmallow), new Object[] { Items.stick, Items.sugar, Items.wheat_seeds }); + CraftingManager.addShapelessAuto(new ItemStack(ModItems.quesadilla, 3), new Object[] { ModItems.cheese, ModItems.cheese, Items.bread }); //Peas CraftingManager.addRecipeAuto(new ItemStack(ModItems.peas), new Object[] { " S ", "SNS", " S ", 'S', Items.wheat_seeds, 'N', GOLD.nugget() }); diff --git a/src/main/java/com/hbm/crafting/WeaponRecipes.java b/src/main/java/com/hbm/crafting/WeaponRecipes.java index 5ca759935..df4a1b0ea 100644 --- a/src/main/java/com/hbm/crafting/WeaponRecipes.java +++ b/src/main/java/com/hbm/crafting/WeaponRecipes.java @@ -207,7 +207,7 @@ public class WeaponRecipes { CraftingManager.addRecipeAuto(ModItems.ammo_dart.stackFromEnum(16, AmmoDart.NERF), new Object[] { "I", "I", 'I', ModItems.plate_polymer }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.assembly_45, 32), " I", "GC", " P", 'I', CU.ingot(), 'G', ANY_SMOKELESS.dust(), 'C', ModItems.casing_44, 'P', ModItems.primer_44); CraftingManager.addRecipeAuto(new ItemStack(ModItems.assembly_762, 32), " I", "GC", " P", 'I', CU.ingot(), 'G', ANY_SMOKELESS.dust(), 'C', ModItems.casing_50, 'P', ModItems.primer_9); - CraftingManager.addRecipeAuto(new ItemStack(ModItems.assembly_luna, 4), new Object[] { " B ", "GCG", "GPG", 'B', ModItems.billet_u238, 'G', ModItems.powder_nitan_mix, 'C', ModItems.casing_50, 'P', ModItems.powder_power}); + CraftingManager.addRecipeAuto(new ItemStack(ModItems.assembly_luna, 4), new Object[] { " B ", "GCG", "GPG", 'B', FERRO.ingot(), 'G', ModItems.powder_nitan_mix, 'C', ModItems.casing_50, 'P', ModItems.powder_power}); //Folly shells CraftingManager.addRecipeAuto(new ItemStack(ModItems.folly_bullet, 1), new Object[] { " S ", "STS", "SMS", 'S', STAR.ingot(), 'T', ModItems.powder_magic, 'M', ModBlocks.block_meteor }); diff --git a/src/main/java/com/hbm/explosion/vanillant/standard/EntityProcessorCross.java b/src/main/java/com/hbm/explosion/vanillant/standard/EntityProcessorCross.java new file mode 100644 index 000000000..64c4de445 --- /dev/null +++ b/src/main/java/com/hbm/explosion/vanillant/standard/EntityProcessorCross.java @@ -0,0 +1,125 @@ +package com.hbm.explosion.vanillant.standard; + +import java.util.HashMap; +import java.util.List; + +import com.hbm.explosion.vanillant.ExplosionVNT; +import com.hbm.explosion.vanillant.interfaces.ICustomDamageHandler; +import com.hbm.explosion.vanillant.interfaces.IEntityProcessor; +import com.hbm.explosion.vanillant.interfaces.IEntityRangeMutator; + +import net.minecraft.enchantment.EnchantmentProtection; +import net.minecraft.entity.Entity; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.util.AxisAlignedBB; +import net.minecraft.util.DamageSource; +import net.minecraft.util.Vec3; +import net.minecraft.world.World; +import net.minecraftforge.common.util.ForgeDirection; +import net.minecraftforge.event.ForgeEventFactory; + +/** The amount of good decisions in NTM is few and far between, but the VNT explosion surely is one of them. */ +public class EntityProcessorCross implements IEntityProcessor { + + protected double nodeDist = 2D; + protected IEntityRangeMutator range; + protected ICustomDamageHandler damage; + + public EntityProcessorCross(double nodeDist) { + this.nodeDist = nodeDist; + } + + @Override + public HashMap process(ExplosionVNT explosion, World world, double x, double y, double z, float size) { + + HashMap affectedPlayers = new HashMap(); + + size *= 2.0F; + + if(range != null) { + size = range.mutateRange(explosion, size); + } + + double minX = x - (double) size - 1.0D; + double maxX = x + (double) size + 1.0D; + double minY = y - (double) size - 1.0D; + double maxY = y + (double) size + 1.0D; + double minZ = z - (double) size - 1.0D; + double maxZ = z + (double) size + 1.0D; + + List list = world.getEntitiesWithinAABBExcludingEntity(explosion.exploder, AxisAlignedBB.getBoundingBox(minX, minY, minZ, maxX, maxY, maxZ)); + + ForgeEventFactory.onExplosionDetonate(world, explosion.compat, list, size); + + Vec3[] nodes = new Vec3[7]; + + for(int i = 0; i < 7; i++) { + ForgeDirection dir = ForgeDirection.getOrientation(i); + nodes[i] = Vec3.createVectorHelper(x + dir.offsetX * nodeDist, y + dir.offsetY * nodeDist, z + dir.offsetZ * nodeDist); + } + + for(int index = 0; index < list.size(); ++index) { + + Entity entity = (Entity) list.get(index); + double distanceScaled = entity.getDistance(x, y, z) / size; + + if(distanceScaled <= 1.0D) { + + double deltaX = entity.posX - x; + double deltaY = entity.posY + entity.getEyeHeight() - y; + double deltaZ = entity.posZ - z; + double distance = Math.sqrt(deltaX * deltaX + deltaY * deltaY + deltaZ * deltaZ); + + if(distance != 0.0D) { + + deltaX /= distance; + deltaY /= distance; + deltaZ /= distance; + + double density = 0; + + for(Vec3 vec : nodes) { + double d = world.getBlockDensity(vec, entity.boundingBox); + if(d > density) { + density = d; + } + } + + double knockback = (1.0D - distanceScaled) * density; + + entity.attackEntityFrom(DamageSource.setExplosionSource(explosion.compat), (float) ((int) ((knockback * knockback + knockback) / 2.0D * 8.0D * size + 1.0D))); + double enchKnockback = EnchantmentProtection.func_92092_a(entity, knockback); + + entity.motionX += deltaX * enchKnockback; + entity.motionY += deltaY * enchKnockback; + entity.motionZ += deltaZ * enchKnockback; + + if(entity instanceof EntityPlayer) { + affectedPlayers.put((EntityPlayer) entity, Vec3.createVectorHelper(deltaX * knockback, deltaY * knockback, deltaZ * knockback)); + } + + if(damage != null) { + damage.handleAttack(explosion, entity, distanceScaled); + } + } + } + } + + return affectedPlayers; + } + + public EntityProcessorCross withRangeMod(float mod) { + range = new IEntityRangeMutator() { + @Override + public float mutateRange(ExplosionVNT explosion, float range) { + return range * mod; + } + }; + return this; + } + + public EntityProcessorCross withDamageMod(ICustomDamageHandler damage) { + this.damage = damage; + return this; + } +} diff --git a/src/main/java/com/hbm/handler/BulletConfigSyncingUtil.java b/src/main/java/com/hbm/handler/BulletConfigSyncingUtil.java index 7f79d825e..89860b309 100644 --- a/src/main/java/com/hbm/handler/BulletConfigSyncingUtil.java +++ b/src/main/java/com/hbm/handler/BulletConfigSyncingUtil.java @@ -95,8 +95,10 @@ public class BulletConfigSyncingUtil { public static int P9_AP = i++; public static int P9_DU = i++; public static int P9_ROCKET = i++; - + public static int ACP_45 = i++; + public static int ACP_45_AP = i++; + public static int ACP_45_DU = i++; public static int BMG50_NORMAL = i++; public static int BMG50_INCENDIARY = i++; @@ -372,6 +374,8 @@ public class BulletConfigSyncingUtil { configSet.put(P9_ROCKET, Gun9mmFactory.get9mmRocketConfig()); configSet.put(ACP_45, Gun45ACPFactory.get45AutoConfig()); + configSet.put(ACP_45_AP, Gun45ACPFactory.get45AutoAPConfig()); + configSet.put(ACP_45_DU, Gun45ACPFactory.get45AutoDUConfig()); configSet.put(BMG50_NORMAL, Gun50BMGFactory.get50BMGConfig()); configSet.put(BMG50_INCENDIARY, Gun50BMGFactory.get50BMGFireConfig()); diff --git a/src/main/java/com/hbm/handler/guncfg/Gun357MagnumFactory.java b/src/main/java/com/hbm/handler/guncfg/Gun357MagnumFactory.java index 5e774758b..1a16da32a 100644 --- a/src/main/java/com/hbm/handler/guncfg/Gun357MagnumFactory.java +++ b/src/main/java/com/hbm/handler/guncfg/Gun357MagnumFactory.java @@ -204,27 +204,6 @@ public class Gun357MagnumFactory { return config; } - public static GunConfiguration getRevolverBioConfig() { - - GunConfiguration config = getBaseConfig(); - - config.durability = 100000; - config.firingSound = "hbm:weapon.deagleShoot"; - config.reloadDuration = 53; - config.crosshair = Crosshair.CIRCLE; - - config.name = "bio"; - config.manufacturer = EnumGunManufacturer.RYAN; - - config.config = new ArrayList(); - config.config.add(BulletConfigSyncingUtil.IRON_HS); - config.config.add(BulletConfigSyncingUtil.STEEL_HS); - config.config.add(BulletConfigSyncingUtil.GOLD_HS); - config.config.add(BulletConfigSyncingUtil.DESH_HS); - - return config; - } - //// // // // // ////// ////// ////// // // // // // // // // // //// // // // // //// // ////// diff --git a/src/main/java/com/hbm/handler/guncfg/Gun44MagnumFactory.java b/src/main/java/com/hbm/handler/guncfg/Gun44MagnumFactory.java index efdc4c796..7520b5c0a 100644 --- a/src/main/java/com/hbm/handler/guncfg/Gun44MagnumFactory.java +++ b/src/main/java/com/hbm/handler/guncfg/Gun44MagnumFactory.java @@ -81,7 +81,7 @@ public class Gun44MagnumFactory { return config; } - public static final ResourceLocation pips_amazing_scope_wow = new ResourceLocation(RefStrings.MODID, "textures/misc/scope_basic.png"); + public static final ResourceLocation scope_lilmac = new ResourceLocation(RefStrings.MODID, "textures/misc/scope_44.png"); public static GunConfiguration getMacintoshConfig() { @@ -96,7 +96,7 @@ public class Gun44MagnumFactory { config.hasSights = true; config.absoluteFOV = true; config.zoomFOV = 0.25F; - config.scopeTexture = pips_amazing_scope_wow; + config.scopeTexture = scope_lilmac; config.config = new ArrayList(); config.config.add(BulletConfigSyncingUtil.M44_PIP); diff --git a/src/main/java/com/hbm/handler/guncfg/Gun45ACPFactory.java b/src/main/java/com/hbm/handler/guncfg/Gun45ACPFactory.java index 5444c3b35..70891310b 100644 --- a/src/main/java/com/hbm/handler/guncfg/Gun45ACPFactory.java +++ b/src/main/java/com/hbm/handler/guncfg/Gun45ACPFactory.java @@ -2,20 +2,57 @@ package com.hbm.handler.guncfg; import java.util.ArrayList; +import com.hbm.handler.BulletConfigSyncingUtil; import com.hbm.handler.BulletConfiguration; +import com.hbm.handler.CasingEjector; import com.hbm.handler.GunConfiguration; import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.items.ModItems; import com.hbm.items.ItemAmmoEnums.Ammo45ACP; import com.hbm.lib.HbmCollection; import com.hbm.lib.HbmCollection.EnumGunManufacturer; +import com.hbm.particle.SpentCasing; +import com.hbm.particle.SpentCasing.CasingType; import com.hbm.render.anim.BusAnimation; import com.hbm.render.anim.BusAnimationKeyframe; import com.hbm.render.anim.BusAnimationSequence; import com.hbm.render.anim.HbmAnimations.AnimType; import com.hbm.render.util.RenderScreenOverlay.Crosshair; +import net.minecraft.util.Vec3; + public class Gun45ACPFactory { + + private static final CasingEjector EJECTOR_REVOLVER; + private static final SpentCasing CASING45; + + static { + EJECTOR_REVOLVER = new CasingEjector().setMotion(Vec3.createVectorHelper(0, 0, -0.03)).setOffset(Vec3.createVectorHelper(0, -0.15, 0)).setAngleRange(0.01F, 0.05F).setAfterReload().setAmount(6); + CASING45 = new SpentCasing(CasingType.STRAIGHT).setBounceMotion(0.01F, 0.05F).setScale(1.25F, 1.25F, 1F).setColor(SpentCasing.COLOR_CASE_BRASS).register("45ACP"); + } + + 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.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.revolverShoot"; + config.reloadSoundEnd = false; + + config.ejector = EJECTOR_REVOLVER; + + return config; + } public static GunConfiguration getThompsonConfig() { @@ -44,6 +81,23 @@ public class Gun45ACPFactory { return config; } + + public static GunConfiguration getRevolverBioConfig() { + + GunConfiguration config = getBaseConfig(); + + config.durability = 100000; + config.firingSound = "hbm:weapon.deagleShoot"; + config.reloadDuration = 53; + config.crosshair = Crosshair.CIRCLE; + + config.name = "bio"; + config.manufacturer = EnumGunManufacturer.RYAN; + + config.config = HbmCollection.fourtyFiveACP; + + return config; + } public static GunConfiguration getUACPistolConfig() { GunConfiguration config = new GunConfiguration(); @@ -115,28 +169,38 @@ public class Gun45ACPFactory { bullet.ammo = new ComparableStack(ModItems.ammo_45.stackFromEnum(Ammo45ACP.STOCK)); bullet.spread *= inaccuracy; - bullet.dmgMax = 30; - bullet.dmgMin = 27; + bullet.dmgMax = 12; + bullet.dmgMin = 16; + + bullet.spentCasing = CASING45; return bullet; } public static BulletConfiguration get45AutoAPConfig() { - BulletConfiguration bullet = get45AutoConfig().clone(); + BulletConfiguration bullet = get45AutoConfig(); bullet.ammo = new ComparableStack(ModItems.ammo_45.stackFromEnum(Ammo45ACP.AP)); - bullet.dmgMax *= 1.5; - bullet.dmgMin *= 1.5; + bullet.dmgMax = 18; + bullet.dmgMin = 26; + bullet.wear = 15; + bullet.leadChance = 10; + + bullet.spentCasing = CASING45; return bullet; } public static BulletConfiguration get45AutoDUConfig() { - BulletConfiguration bullet = get45AutoAPConfig().clone(); + BulletConfiguration bullet = get45AutoConfig(); bullet.ammo = new ComparableStack(ModItems.ammo_45.stackFromEnum(Ammo45ACP.DU)); - bullet.dmgMax *= 1.5; - bullet.dmgMin *= 1.5; + bullet.dmgMax = 30; + bullet.dmgMin = 44; + bullet.wear = 25; + bullet.leadChance = 50; + + bullet.spentCasing = CASING45; return bullet; } diff --git a/src/main/java/com/hbm/handler/guncfg/Gun556mmFactory.java b/src/main/java/com/hbm/handler/guncfg/Gun556mmFactory.java index d0bc11109..dfb332281 100644 --- a/src/main/java/com/hbm/handler/guncfg/Gun556mmFactory.java +++ b/src/main/java/com/hbm/handler/guncfg/Gun556mmFactory.java @@ -67,8 +67,10 @@ public class Gun556mmFactory { config.comment.add("Why is this gun so sticky?"); - config.config = new ArrayList(); - config.config.add(BulletConfigSyncingUtil.R556_GOLD); + //config.config = new ArrayList(); + //config.config.add(BulletConfigSyncingUtil.R556_GOLD); + + config.config = HbmCollection.NATO; return config; } diff --git a/src/main/java/com/hbm/handler/guncfg/GunRocketHomingFactory.java b/src/main/java/com/hbm/handler/guncfg/GunRocketHomingFactory.java index 919797412..9ace3b45f 100644 --- a/src/main/java/com/hbm/handler/guncfg/GunRocketHomingFactory.java +++ b/src/main/java/com/hbm/handler/guncfg/GunRocketHomingFactory.java @@ -216,18 +216,21 @@ GunConfiguration config = new GunConfiguration(); if(!bullet.worldObj.isRemote) { - EntityPlayer player = bullet.worldObj.getClosestPlayerToEntity(bullet, -1.0D); - EntityRocketHoming rocket = new EntityRocketHoming(bullet.worldObj, player, 1.0F, 5.0F, 4); - if(player.getHeldItem().getItem() == ModItems.gun_skystinger && !player.isSneaking()) { - EntityRocketHoming rocket2 = new EntityRocketHoming(bullet.worldObj, player, 1.5F, 15.0F, 4); - rocket = new EntityRocketHoming(bullet.worldObj, player, 1.5F, 15.0F, 4); - rocket.setIsCritical(true); - rocket2.setIsCritical(true); - bullet.worldObj.spawnEntityInWorld(rocket2); + EntityPlayer player = bullet.worldObj.getClosestPlayerToEntity(bullet, -1.0D); + + if(player.getDistanceToEntity(bullet) < 16) { + EntityRocketHoming rocket = new EntityRocketHoming(bullet.worldObj, player, 1.0F, 5.0F, 4); + if(player.getHeldItem() != null && player.getHeldItem().getItem() == ModItems.gun_skystinger && !player.isSneaking()) { + EntityRocketHoming rocket2 = new EntityRocketHoming(bullet.worldObj, player, 1.5F, 15.0F, 4); + rocket = new EntityRocketHoming(bullet.worldObj, player, 1.5F, 15.0F, 4); + rocket.setIsCritical(true); + rocket2.setIsCritical(true); + bullet.worldObj.spawnEntityInWorld(rocket2); + } + rocket.homingMod = 5; + rocket.homingRadius = 25; + bullet.worldObj.spawnEntityInWorld(rocket); } - rocket.homingMod = 5; - rocket.homingRadius = 25; - bullet.worldObj.spawnEntityInWorld(rocket); bullet.setDead(); } @@ -252,18 +255,21 @@ GunConfiguration config = new GunConfiguration(); if(!bullet.worldObj.isRemote) { - EntityPlayer player = bullet.worldObj.getClosestPlayerToEntity(bullet, -1.0D); - EntityRocketHoming rocket = new EntityRocketHoming(bullet.worldObj, player, 1.0F, 5.0F, 42); - if(player.getHeldItem().getItem() == ModItems.gun_skystinger && !player.isSneaking()) { - EntityRocketHoming rocket2 = new EntityRocketHoming(bullet.worldObj, player, 1.5F, 15.0F, 42); - rocket = new EntityRocketHoming(bullet.worldObj, player, 1.5F, 15.0F, 42); - rocket.setIsCritical(true); - rocket2.setIsCritical(true); - bullet.worldObj.spawnEntityInWorld(rocket2); + EntityPlayer player = bullet.worldObj.getClosestPlayerToEntity(bullet, -1.0D); + + if(player.getDistanceToEntity(bullet) < 16) { + EntityRocketHoming rocket = new EntityRocketHoming(bullet.worldObj, player, 1.0F, 5.0F, 42); + if(player.getHeldItem() != null && player.getHeldItem().getItem() == ModItems.gun_skystinger && !player.isSneaking()) { + EntityRocketHoming rocket2 = new EntityRocketHoming(bullet.worldObj, player, 1.5F, 15.0F, 42); + rocket = new EntityRocketHoming(bullet.worldObj, player, 1.5F, 15.0F, 42); + rocket.setIsCritical(true); + rocket2.setIsCritical(true); + bullet.worldObj.spawnEntityInWorld(rocket2); + } + rocket.homingMod = 5; + rocket.homingRadius = 25; + bullet.worldObj.spawnEntityInWorld(rocket); } - rocket.homingMod = 5; - rocket.homingRadius = 25; - bullet.worldObj.spawnEntityInWorld(rocket); bullet.setDead(); } diff --git a/src/main/java/com/hbm/items/ItemAmmoEnums.java b/src/main/java/com/hbm/items/ItemAmmoEnums.java index da40e8af4..d42eb4015 100644 --- a/src/main/java/com/hbm/items/ItemAmmoEnums.java +++ b/src/main/java/com/hbm/items/ItemAmmoEnums.java @@ -328,7 +328,7 @@ public class ItemAmmoEnums { DU("ammo_762_du", HbmCollection.DUType), TRACER("ammo_762_tracer", AmmoItemTrait.NEU_TRACER), PHOSPHORUS("ammo_762_phosphorus", HbmCollection.PhosphorusType), - BLANK("ammo_762_blank", AmmoItemTrait.NEU_BLANK); + BLANK("ammo_762_k", AmmoItemTrait.NEU_BLANK); private final Set traits; private final String unloc; diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index 8efed6b52..36f6a8ea1 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -1864,6 +1864,7 @@ public class ModItems { public static Item peas; public static Item marshmallow; public static Item cheese; + public static Item quesadilla; public static Item med_ipecac; public static Item med_ptsd; @@ -4305,7 +4306,7 @@ public class ModItems { ammo_cell = new ItemCustomLore().setCreativeTab(MainRegistry.weaponTab).setUnlocalizedName("ammo_cell").setMaxStackSize(16); ammo_dart = (ItemEnumMulti) new ItemAmmo(AmmoDart.class).setUnlocalizedName("ammo_dart").setMaxStackSize(16); ammo_stinger_rocket = new ItemAmmo(AmmoStinger.class).setUnlocalizedName("ammo_stinger_rocket"); - ammo_luna_sniper = new ItemAmmo(AmmoLunaticSniper.class, "desc.misc.luna").setUnlocalizedName("ammo_luna_sniper"); + ammo_luna_sniper = new ItemAmmo(AmmoLunaticSniper.class).setUnlocalizedName("ammo_luna_sniper"); ammo_misc = new ItemAmmo(AmmoMisc.class).setUnlocalizedName("ammo_misc"); /*ammo_12gauge = new ItemAmmo().setUnlocalizedName("ammo_12gauge"); @@ -4499,7 +4500,7 @@ public class ModItems { gun_revolver_silver = new ItemGunBase(Gun44MagnumFactory.getSilverConfig()).setUnlocalizedName("gun_revolver_silver").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_revolver_silver"); gun_revolver_red = new ItemGunBase(Gun44MagnumFactory.getRedConfig()).setUnlocalizedName("gun_revolver_red").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_revolver_red"); gun_deagle = new ItemGunBase(Gun50AEFactory.getDeagleConfig()).setUnlocalizedName("gun_deagle").setFull3D().setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_deagle"); - gun_bio_revolver = new ItemGunBio(Gun357MagnumFactory.getRevolverBioConfig()).setUnlocalizedName("gun_bio_revolver").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_bio_revolver"); + gun_bio_revolver = new ItemGunBio(Gun45ACPFactory.getRevolverBioConfig()).setUnlocalizedName("gun_bio_revolver").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_bio_revolver"); gun_flechette = new ItemGunBase(Gun556mmFactory.getSPIWConfig(), Gun556mmFactory.getGLauncherConfig()).setUnlocalizedName("gun_flechette").setFull3D().setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_flechette"); gun_ar15 = new ItemGunBase(Gun50BMGFactory.getAR15Config()).setUnlocalizedName("gun_ar15").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_ar15"); //gun_calamity_ammo = new ItemCustomLore().setUnlocalizedName("gun_calamity_ammo").setCreativeTab(null).setTextureName(RefStrings.MODID + ":gun_calamity_ammo"); @@ -4671,6 +4672,7 @@ public class ModItems { peas = new ItemPeas().setUnlocalizedName("peas").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":peas"); marshmallow = new ItemMarshmallow().setUnlocalizedName("marshmallow").setMaxStackSize(1).setFull3D().setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":marshmallow"); cheese = new ItemLemon(5, 10, false).setUnlocalizedName("cheese").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":cheese"); + quesadilla = new ItemLemon(8, 10, false).setUnlocalizedName("cheese_quesadilla").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":quesadilla"); mucho_mango = new ItemMuchoMango(10).setUnlocalizedName("mucho_mango").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":mucho_mango"); defuser = new ItemTooling(ToolType.DEFUSER, 100).setUnlocalizedName("defuser").setMaxStackSize(1).setFull3D().setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":defuser"); @@ -7862,6 +7864,7 @@ public class ModItems { GameRegistry.registerItem(peas, peas.getUnlocalizedName()); GameRegistry.registerItem(marshmallow, marshmallow.getUnlocalizedName()); GameRegistry.registerItem(cheese, cheese.getUnlocalizedName()); + GameRegistry.registerItem(quesadilla, quesadilla.getUnlocalizedName()); GameRegistry.registerItem(med_ipecac, med_ipecac.getUnlocalizedName()); GameRegistry.registerItem(med_ptsd, med_ptsd.getUnlocalizedName()); GameRegistry.registerItem(canteen_13, canteen_13.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/items/food/ItemLemon.java b/src/main/java/com/hbm/items/food/ItemLemon.java index 661661140..abfd05a2c 100644 --- a/src/main/java/com/hbm/items/food/ItemLemon.java +++ b/src/main/java/com/hbm/items/food/ItemLemon.java @@ -220,6 +220,10 @@ public class ItemLemon extends ItemFood { if(this == ModItems.peas) { list.add("He accepts your offering."); } + + if(this == ModItems.quesadilla) { + list.add("That's what a 50 year old yeast infection does to you."); + } } diff --git a/src/main/java/com/hbm/items/weapon/ItemAmmoArty.java b/src/main/java/com/hbm/items/weapon/ItemAmmoArty.java index 478e837ea..44a668afc 100644 --- a/src/main/java/com/hbm/items/weapon/ItemAmmoArty.java +++ b/src/main/java/com/hbm/items/weapon/ItemAmmoArty.java @@ -13,7 +13,7 @@ import com.hbm.explosion.ExplosionNukeSmall; import com.hbm.explosion.vanillant.ExplosionVNT; import com.hbm.explosion.vanillant.standard.BlockAllocatorStandard; import com.hbm.explosion.vanillant.standard.BlockProcessorStandard; -import com.hbm.explosion.vanillant.standard.EntityProcessorStandard; +import com.hbm.explosion.vanillant.standard.EntityProcessorCross; import com.hbm.explosion.vanillant.standard.ExplosionEffectStandard; import com.hbm.explosion.vanillant.standard.PlayerProcessorStandard; import com.hbm.lib.RefStrings; @@ -197,7 +197,7 @@ public class ItemAmmoArty extends Item { xnt.setBlockAllocator(new BlockAllocatorStandard(48)); xnt.setBlockProcessor(new BlockProcessorStandard().setNoDrop()); } - xnt.setEntityProcessor(new EntityProcessorStandard().withRangeMod(rangeMod)); + xnt.setEntityProcessor(new EntityProcessorCross(7.5D).withRangeMod(rangeMod)); xnt.setPlayerProcessor(new PlayerProcessorStandard()); xnt.setSFX(new ExplosionEffectStandard()); xnt.explode(); diff --git a/src/main/java/com/hbm/items/weapon/ItemAmmoHIMARS.java b/src/main/java/com/hbm/items/weapon/ItemAmmoHIMARS.java index 0a76f7cd9..1af138e0a 100644 --- a/src/main/java/com/hbm/items/weapon/ItemAmmoHIMARS.java +++ b/src/main/java/com/hbm/items/weapon/ItemAmmoHIMARS.java @@ -6,7 +6,7 @@ import com.hbm.entity.projectile.EntityArtilleryRocket; import com.hbm.explosion.vanillant.ExplosionVNT; import com.hbm.explosion.vanillant.standard.BlockAllocatorStandard; import com.hbm.explosion.vanillant.standard.BlockProcessorStandard; -import com.hbm.explosion.vanillant.standard.EntityProcessorStandard; +import com.hbm.explosion.vanillant.standard.EntityProcessorCross; import com.hbm.explosion.vanillant.standard.ExplosionEffectStandard; import com.hbm.explosion.vanillant.standard.PlayerProcessorStandard; import com.hbm.lib.RefStrings; @@ -74,7 +74,7 @@ public class ItemAmmoHIMARS extends Item { xnt.setBlockAllocator(new BlockAllocatorStandard(48)); xnt.setBlockProcessor(new BlockProcessorStandard().setNoDrop()); } - xnt.setEntityProcessor(new EntityProcessorStandard().withRangeMod(rangeMod)); + xnt.setEntityProcessor(new EntityProcessorCross(7.5).withRangeMod(rangeMod)); xnt.setPlayerProcessor(new PlayerProcessorStandard()); xnt.setSFX(new ExplosionEffectStandard()); xnt.explode(); diff --git a/src/main/java/com/hbm/items/weapon/ItemGunBase.java b/src/main/java/com/hbm/items/weapon/ItemGunBase.java index 54973c62f..b60ec1d14 100644 --- a/src/main/java/com/hbm/items/weapon/ItemGunBase.java +++ b/src/main/java/com/hbm/items/weapon/ItemGunBase.java @@ -16,12 +16,10 @@ import com.hbm.interfaces.IItemHUD; import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.items.IEquipReceiver; import com.hbm.lib.HbmCollection; -import com.hbm.main.MainRegistry; import com.hbm.packet.AuxParticlePacketNT; import com.hbm.packet.GunAnimationPacket; import com.hbm.packet.GunButtonPacket; import com.hbm.packet.PacketDispatcher; -import com.hbm.particle.SpentCasing; import com.hbm.render.anim.BusAnimation; import com.hbm.render.anim.HbmAnimations.AnimType; import com.hbm.render.util.RenderScreenOverlay; @@ -116,7 +114,7 @@ public class ItemGunBase extends Item implements IHoldableWeapon, IItemHUD, IEqu if(mainConfig.reloadType != mainConfig.RELOAD_NONE || (altConfig != null && altConfig.reloadType != 0)) { - if(GameSettings.isKeyDown(HbmKeybinds.reloadKey) && (getMag(stack) < mainConfig.ammoCap || hasInfinity(stack, mainConfig))) { + if(GameSettings.isKeyDown(HbmKeybinds.reloadKey) && Minecraft.getMinecraft().currentScreen == null && (getMag(stack) < mainConfig.ammoCap || hasInfinity(stack, mainConfig))) { PacketDispatcher.wrapper.sendToServer(new GunButtonPacket(true, (byte) 2)); setIsReloading(stack, true); resetReloadCycle(stack); @@ -762,7 +760,7 @@ public class ItemGunBase extends Item implements IHoldableWeapon, IItemHUD, IEqu NBTTagCompound data = new NBTTagCompound(); data.setString("type", "casing"); - data.setFloat("pitch", (float) Math.toRadians(entity.rotationPitch)); + data.setFloat("pitch", -(float) Math.toRadians(entity.rotationPitch)); data.setFloat("yaw", (float) Math.toRadians(entity.rotationYaw)); data.setBoolean("crouched", entity.isSneaking()); data.setString("name", bullet.spentCasing.getName()); diff --git a/src/main/java/com/hbm/lib/HbmCollection.java b/src/main/java/com/hbm/lib/HbmCollection.java index ef842740d..7fa984f47 100644 --- a/src/main/java/com/hbm/lib/HbmCollection.java +++ b/src/main/java/com/hbm/lib/HbmCollection.java @@ -41,14 +41,14 @@ public class HbmCollection { /** 9MM Parabellum **/ public static final List nineMM = ImmutableList.of(BulletConfigSyncingUtil.P9_NORMAL, BulletConfigSyncingUtil.P9_AP, BulletConfigSyncingUtil.P9_DU, BulletConfigSyncingUtil.CHL_P9, BulletConfigSyncingUtil.P9_ROCKET); /** .45 AUTOMATIC COLT PISTOL **/ - public static final List fourtyFiveACP = ImmutableList.of(BulletConfigSyncingUtil.ACP_45); + public static final List fourtyFiveACP = ImmutableList.of(BulletConfigSyncingUtil.ACP_45, BulletConfigSyncingUtil.ACP_45_AP, BulletConfigSyncingUtil.ACP_45_DU); // RIFLE CALIBER /** .50 BROWNING MACHINE GUN **/ public static final List fiftyBMG = ImmutableList.of(BulletConfigSyncingUtil.BMG50_NORMAL, BulletConfigSyncingUtil.BMG50_INCENDIARY, BulletConfigSyncingUtil.BMG50_PHOSPHORUS, BulletConfigSyncingUtil.BMG50_EXPLOSIVE, BulletConfigSyncingUtil.BMG50_AP, BulletConfigSyncingUtil.BMG50_DU, BulletConfigSyncingUtil.BMG50_STAR, BulletConfigSyncingUtil.CHL_BMG50, BulletConfigSyncingUtil.BMG50_SLEEK); /** .50 BROWNING MACHINE GUN (FLECHETTE) **/ public static final List fiftyBMGFlechette = ImmutableList.of(BulletConfigSyncingUtil.BMG50_FLECHETTE_AM, BulletConfigSyncingUtil.BMG50_FLECHETTE_NORMAL, BulletConfigSyncingUtil.BMG50_FLECHETTE_PO); /** 5.56MMx45 NATO (BASIC) **/ - public static final List NATO = ImmutableList.of(BulletConfigSyncingUtil.R556_NORMAL, BulletConfigSyncingUtil.R556_TRACER, BulletConfigSyncingUtil.R556_PHOSPHORUS, BulletConfigSyncingUtil.R556_AP, BulletConfigSyncingUtil.R556_DU, BulletConfigSyncingUtil.R556_STAR, BulletConfigSyncingUtil.CHL_R556, BulletConfigSyncingUtil.R556_SLEEK, BulletConfigSyncingUtil.R556_K); + public static final List NATO = ImmutableList.of(BulletConfigSyncingUtil.R556_NORMAL, BulletConfigSyncingUtil.R556_TRACER, BulletConfigSyncingUtil.R556_PHOSPHORUS, BulletConfigSyncingUtil.R556_AP, BulletConfigSyncingUtil.R556_DU, BulletConfigSyncingUtil.R556_STAR, BulletConfigSyncingUtil.CHL_R556, BulletConfigSyncingUtil.R556_SLEEK, BulletConfigSyncingUtil.R556_K, BulletConfigSyncingUtil.R556_GOLD); /** 5.56MMx45 NATO (FLECHETTE) **/ public static final List NATOFlechette = ImmutableList.of(BulletConfigSyncingUtil.R556_FLECHETTE, BulletConfigSyncingUtil.R556_FLECHETTE_INCENDIARY, BulletConfigSyncingUtil.R556_FLECHETTE_PHOSPHORUS, BulletConfigSyncingUtil.R556_FLECHETTE_DU, BulletConfigSyncingUtil.CHL_R556_FLECHETTE, BulletConfigSyncingUtil.R556_FLECHETTE_SLEEK, BulletConfigSyncingUtil.R556_K); /** 7.62x51mm NATO **/ diff --git a/src/main/java/com/hbm/particle/ParticleSpentCasing.java b/src/main/java/com/hbm/particle/ParticleSpentCasing.java index f448d4adf..59e6ae201 100644 --- a/src/main/java/com/hbm/particle/ParticleSpentCasing.java +++ b/src/main/java/com/hbm/particle/ParticleSpentCasing.java @@ -8,7 +8,6 @@ import java.util.Random; import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; -import com.hbm.main.MainRegistry; import com.hbm.main.ResourceManager; import com.hbm.util.Tuple.Pair; @@ -228,6 +227,7 @@ public class ParticleSpentCasing extends EntityFX { nodeAlpha *= timeAlpha; pastAlpha *= timeAlpha; + tessellator.setNormal(0F, 1F, 0F); tessellator.setColorRGBA_F(1F, 1F, 1F, nodeAlpha); tessellator.addVertex(nodeLoc.xCoord, nodeLoc.yCoord, nodeLoc.zCoord); tessellator.setColorRGBA_F(1F, 1F, 1F, 0F); diff --git a/src/main/java/com/hbm/tileentity/turret/TileEntityTurretArty.java b/src/main/java/com/hbm/tileentity/turret/TileEntityTurretArty.java index 1cb0c93c0..a32914fc3 100644 --- a/src/main/java/com/hbm/tileentity/turret/TileEntityTurretArty.java +++ b/src/main/java/com/hbm/tileentity/turret/TileEntityTurretArty.java @@ -404,7 +404,7 @@ public class TileEntityTurretArty extends TileEntityTurretBaseArtillery implemen } } - protected static CasingEjector ejector = new CasingEjector().setMotion(0, 0.4, -1.2).setAngleRange(0.1F, 0.1F); + protected static CasingEjector ejector = new CasingEjector().setMotion(0, 0.6, -1).setAngleRange(0.1F, 0.1F); @Override protected CasingEjector getEjector() { @@ -462,6 +462,7 @@ public class TileEntityTurretArty extends TileEntityTurretBaseArtillery implemen nbt.setShort("mode", this.mode); } + @Override protected void spawnCasing() { if(cachedCasingConfig == null) return; diff --git a/src/main/java/com/hbm/tileentity/turret/TileEntityTurretBaseNT.java b/src/main/java/com/hbm/tileentity/turret/TileEntityTurretBaseNT.java index 62ad67f84..6d54d6a3a 100644 --- a/src/main/java/com/hbm/tileentity/turret/TileEntityTurretBaseNT.java +++ b/src/main/java/com/hbm/tileentity/turret/TileEntityTurretBaseNT.java @@ -18,7 +18,6 @@ import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemTurretBiometry; import com.hbm.lib.Library; -import com.hbm.main.MainRegistry; import com.hbm.packet.AuxParticlePacketNT; import com.hbm.packet.PacketDispatcher; import com.hbm.particle.SpentCasing; diff --git a/src/main/java/com/hbm/tileentity/turret/TileEntityTurretJeremy.java b/src/main/java/com/hbm/tileentity/turret/TileEntityTurretJeremy.java index 3b142f53b..1e344c870 100644 --- a/src/main/java/com/hbm/tileentity/turret/TileEntityTurretJeremy.java +++ b/src/main/java/com/hbm/tileentity/turret/TileEntityTurretJeremy.java @@ -117,7 +117,7 @@ public class TileEntityTurretJeremy extends TileEntityTurretBaseNT { return Vec3.createVectorHelper(pos.xCoord + vec.xCoord, pos.yCoord + vec.yCoord, pos.zCoord + vec.zCoord); } - protected static CasingEjector ejector = new CasingEjector().setAngleRange(0.01F, 0.01F).setMotion(0, 0, -0.1); + protected static CasingEjector ejector = new CasingEjector().setAngleRange(0.01F, 0.01F).setMotion(0, 0, -0.2); @Override protected CasingEjector getEjector() { diff --git a/src/main/resources/assets/hbm/lang/de_DE.lang b/src/main/resources/assets/hbm/lang/de_DE.lang index 3ee5c30f2..659be366e 100644 --- a/src/main/resources/assets/hbm/lang/de_DE.lang +++ b/src/main/resources/assets/hbm/lang/de_DE.lang @@ -816,6 +816,9 @@ item.ammo_44_pip.name=.44 Magnum Patrone (Güterwagon) item.ammo_44_rocket.name=.44 Magnum Rakete item.ammo_44_silver.name=.44 Magnum Patrone (Gebäude) item.ammo_44_star.name=.44 Magnum Patrone (Sternenmetall) +item.ammo_45.name=.45 ACP Patrone +item.ammo_45_ap.name=.45 ACP Patrone (AP) +item.ammo_45_du.name=.45 ACP Patrone (DU) item.ammo_4gauge.name=Kaliber 20 Schrot item.ammo_4gauge_balefire.name=23mm Balefire-Granate item.ammo_4gauge_canister.name=23mm Rakete (Katusche) @@ -867,6 +870,12 @@ item.ammo_5mm_chlorophyte.name=5mm Patrone (Grünalgen) item.ammo_5mm_du.name=5mm Patrone (DU) item.ammo_5mm_explosive.name=5mm Patrone (Explosiv) item.ammo_5mm_star.name=5mm Patrone (Sternenmetall) +item.ammo_762.name=7.62mm Patrone +item.ammo_762_ap.name=7.62mm Patrone (AP) +item.ammo_762_du.name=7.62mm Patrone (DU) +item.ammo_762_k.name=7.62mm K-Patrone +item.ammo_762_phosphorus.name=7.62mm Patrone (WP) +item.ammo_762_tracer.name=7.62mm Patrone (Leuchtspur) item.ammo_75bolt.name=30er .75 Bolzenmagazin item.ammo_75bolt_incendiary.name=30er .75 Bolzenmagazin (Brand) item.ammo_75bolt_he.name=30er .75 Bolzenmagazin (Explosiv) @@ -914,6 +923,9 @@ item.ammo_grenade_toxic.name=40mm Granate (Chemisch) item.ammo_grenade_tracer.name=40mm Übungsgranate item.ammo_himars_standard.name=M28 gelenkte Artillerierakete item.ammo_himars_single.name=M39A1 gelenkte Artillerierakete +item.ammo_luna.name=Lunatic Sniper Sabot +item.ammo_luna_explosive.name=Lunatic Sniper Explosivgeschoss +item.ammo_luna_incendiary.name=Lunatic Sniper Brandgeschoss item.ammo_mirv.name=Mini-MIRV item.ammo_mirv_high.name=Mini-MIRV (Stark) item.ammo_mirv_low.name=Mini-MIRV (Schwach) @@ -990,7 +1002,9 @@ item.asbestos_helmet.name=Hitzeschutzhelm item.asbestos_legs.name=Hitzeschutzhose item.asbestos_plate.name=Hitzeschutzbrustplatte item.ashglasses.name=Aschegläser +item.assembly_45.name=.45 ACP Patronensatz item.assembly_556.name=5.56mm Patronensatz +item.assembly_762.name=7.62mm Patronensatz item.assembly_actionexpress.name=.50 AE Patronensatz item.assembly_calamity.name=.50 BMG Patronensatz item.assembly_desh.name=Desh-Patronensatz @@ -998,6 +1012,7 @@ item.assembly_gold.name=Goldpatronensatz item.assembly_iron.name=Eisenpatronensatz item.assembly_lacunae.name=5mm Patronensatz item.assembly_lead.name=Glaspatronensatz +item.assembly_luna.name=Lunatic Sniper Patronensatz item.assembly_nightmare.name=Nightmare-Patronensatz item.assembly_nopip.name=.44er Patronensatz item.assembly_nuke.name=Miniatombombengehäuse @@ -1284,6 +1299,7 @@ item.centrifuge_element.name=Zentrifugenelement item.centrifuge_tower.name=Zentrifugenturm item.chainsaw.name=Kettensäge item.cheese.name=Käse +item.cheese_quesadilla.name=Käse-Quesadilla item.chemistry_set.name=Laborgläser item.chemistry_set_boron.name=Laborgläser (Borglas) item.chemistry_template.name=Chemievorlage: @@ -2862,6 +2878,7 @@ item.shimmer_head.name=Schwerer Hammerkopf item.shimmer_sledge.name=Shimmer Sledge item.singularity.name=Singularität item.singularity_counter_resonant.name=Eingefasste nicht-resonante Singularität +item.singularity_micro.name=Mikrosingularität item.singularity_spark.name=Spark'sche Singularität item.singularity_super_heated.name=Supererhitzte resonante Singularität item.siox.name=SiOX-Krebsmedikament diff --git a/src/main/resources/assets/hbm/lang/en_US.lang b/src/main/resources/assets/hbm/lang/en_US.lang index 7fc06eb46..ae28468de 100644 --- a/src/main/resources/assets/hbm/lang/en_US.lang +++ b/src/main/resources/assets/hbm/lang/en_US.lang @@ -1418,6 +1418,9 @@ item.ammo_44_pip.name=.44 Magnum Bullet (Boxcar) item.ammo_44_rocket.name=.44 Magnum Rocket item.ammo_44_silver.name=.44 Magnum Bullet (Building) item.ammo_44_star.name=.44 Magnum Bullet (Starmetal) +item.ammo_45.name=.45 ACP Bullet +item.ammo_45_ap.name=.45 ACP Bullet (AP) +item.ammo_45_du.name=.45 ACP Bullet (DU) item.ammo_4gauge.name=4 Gauge Buckshot item.ammo_4gauge_balefire.name=23mm Balefire Grenade item.ammo_4gauge_canister.name=23mm Rocket (Canister Shot) @@ -1472,6 +1475,12 @@ item.ammo_5mm_star.name=5mm Round (Starmetal) item.ammo_75bolt.name=.75 Bolt Magazine (30rnd) item.ammo_75bolt_incendiary.name=.75 Incendiary Bolt Magazine (30rnd) item.ammo_75bolt_he.name=.75 Bolt High-Explosive Magazine (30rnd) +item.ammo_762.name=7.62mm Round +item.ammo_762_ap.name=7.62mm Round (AP) +item.ammo_762_du.name=7.62mm Round (DU) +item.ammo_762_k.name=7.62mm K-Round +item.ammo_762_phosphorus.name=7.62mm Round (WP) +item.ammo_762_tracer.name=7.62mm Round (Tracer) item.ammo_9mm.name=9mm Round item.ammo_9mm_ap.name=9mm Round (Armor Piercing) item.ammo_9mm_chlorophyte.name=9mm Round (Chlorophyte) @@ -1516,6 +1525,9 @@ item.ammo_grenade_toxic.name=40mm Grenade (Chemical) item.ammo_grenade_tracer.name=40mm Training Grenade item.ammo_himars_standard.name=M28 Guided Artillery Rocket Pod item.ammo_himars_single.name=M39A1 Guided Artillery Rocket Pod +item.ammo_luna.name=Lunatic Sniper Sabot Round +item.ammo_luna_explosive.name=Lunatic Sniper Explosive Round +item.ammo_luna_incendiary.name=Lunatic Sniper Incendiary Round item.ammo_mirv.name=Mini MIRV item.ammo_mirv_high.name=Mini MIRV (High Yield) item.ammo_mirv_low.name=Mini MIRV (Low Yield) @@ -1595,7 +1607,9 @@ item.asbestos_helmet.name=Fire Proximity Helmet item.asbestos_legs.name=Fire Proximity Leggings item.asbestos_plate.name=Fire Proximity Chestplate item.ashglasses.name=Ash Goggles +item.assembly_45.name=.45 ACP Assembly item.assembly_556.name=5.56mm Assembly +item.assembly_762.name=7.62mm Assembly item.assembly_actionexpress.name=.50 AE Assembly item.assembly_calamity.name=.50 BMG Assembly item.assembly_desh.name=Desh Bullet Assembly @@ -1603,6 +1617,7 @@ item.assembly_gold.name=Gold Bullet Assembly item.assembly_iron.name=Iron Bullet Assembly item.assembly_lacunae.name=.5mm Assembly item.assembly_lead.name=Glass Bullet Assembly +item.assembly_luna.name=Lunatic Sniper Bullet Assembly item.assembly_nightmare.name=Nightmare Bullet Assembly item.assembly_nopip.name=.44 Magnum Assembly item.assembly_nuke.name=Mini Nuke Shell @@ -1904,6 +1919,7 @@ item.centrifuge_element.name=Centrifuge Element item.centrifuge_tower.name=Centrifuge Tower item.chainsaw.name=Chainsaw item.cheese.name=Cheese +item.cheese_quesadilla.name=Cheese Quesadilla item.chemistry_set.name=Laboratory Glassware item.chemistry_set_boron.name=Laboratory Glassware (Boron Glass) item.chemistry_template.name=Chemistry Template: @@ -3653,6 +3669,7 @@ item.shimmer_head.name=Heavy Hammer Head item.shimmer_sledge.name=Shimmer Sledge item.singularity.name=Singularity item.singularity_counter_resonant.name=Contained Counter-Resonant Singularity +item.singularity_micro.name=Micro Singularity item.singularity_spark.name=Spark Singularity item.singularity_super_heated.name=Superheated Resonating Singularity item.siox.name=SiOX Cancer Medication diff --git a/src/main/resources/assets/hbm/textures/items/ammo_45.png b/src/main/resources/assets/hbm/textures/items/ammo_45.png index d7702dda6..cf405752f 100644 Binary files a/src/main/resources/assets/hbm/textures/items/ammo_45.png and b/src/main/resources/assets/hbm/textures/items/ammo_45.png differ diff --git a/src/main/resources/assets/hbm/textures/items/ammo_45_ap.png b/src/main/resources/assets/hbm/textures/items/ammo_45_ap.png index dc3ee358f..43cf97448 100644 Binary files a/src/main/resources/assets/hbm/textures/items/ammo_45_ap.png and b/src/main/resources/assets/hbm/textures/items/ammo_45_ap.png differ diff --git a/src/main/resources/assets/hbm/textures/items/ammo_45_du.png b/src/main/resources/assets/hbm/textures/items/ammo_45_du.png index a27125ce9..f46671ea3 100644 Binary files a/src/main/resources/assets/hbm/textures/items/ammo_45_du.png and b/src/main/resources/assets/hbm/textures/items/ammo_45_du.png differ diff --git a/src/main/resources/assets/hbm/textures/items/ammo_762_blank.png b/src/main/resources/assets/hbm/textures/items/ammo_762_k.png similarity index 100% rename from src/main/resources/assets/hbm/textures/items/ammo_762_blank.png rename to src/main/resources/assets/hbm/textures/items/ammo_762_k.png diff --git a/src/main/resources/assets/hbm/textures/items/assembly_45.png b/src/main/resources/assets/hbm/textures/items/assembly_45.png index 523e5c303..d64ceb33b 100644 Binary files a/src/main/resources/assets/hbm/textures/items/assembly_45.png and b/src/main/resources/assets/hbm/textures/items/assembly_45.png differ diff --git a/src/main/resources/assets/hbm/textures/items/quesadilla.png b/src/main/resources/assets/hbm/textures/items/quesadilla.png new file mode 100644 index 000000000..53413b4d0 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/quesadilla.png differ diff --git a/src/main/resources/assets/hbm/textures/misc/Thumbs.db b/src/main/resources/assets/hbm/textures/misc/Thumbs.db new file mode 100644 index 000000000..b1ea1a7fd Binary files /dev/null and b/src/main/resources/assets/hbm/textures/misc/Thumbs.db differ diff --git a/src/main/resources/assets/hbm/textures/misc/Thumbs.db:encryptable b/src/main/resources/assets/hbm/textures/misc/Thumbs.db:encryptable new file mode 100644 index 000000000..e69de29bb diff --git a/src/main/resources/assets/hbm/textures/misc/scope_44.png b/src/main/resources/assets/hbm/textures/misc/scope_44.png new file mode 100644 index 000000000..dc53998bb Binary files /dev/null and b/src/main/resources/assets/hbm/textures/misc/scope_44.png differ