fixes, tweaks, quesadillas

This commit is contained in:
Bob 2023-02-05 18:40:25 +01:00
parent 68eef7bc08
commit 6305395aaa
31 changed files with 294 additions and 74 deletions

View File

@ -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() });

View File

@ -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 });

View File

@ -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<EntityPlayer, Vec3> process(ExplosionVNT explosion, World world, double x, double y, double z, float size) {
HashMap<EntityPlayer, Vec3> 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;
}
}

View File

@ -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());

View File

@ -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<Integer>();
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;
}
//// // // // // ////// ////// //////
// // // // // // // // //
//// // // // // //// // //////

View File

@ -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<Integer>();
config.config.add(BulletConfigSyncingUtil.M44_PIP);

View File

@ -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;
}

View File

@ -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;
}

View File

@ -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();
}

View File

@ -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<AmmoItemTrait> traits;
private final String unloc;

View File

@ -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());

View File

@ -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.");
}
}

View File

@ -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();

View File

@ -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();

View File

@ -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());

View File

@ -41,14 +41,14 @@ public class HbmCollection {
/** 9MM Parabellum **/
public static final List<Integer> 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<Integer> fourtyFiveACP = ImmutableList.of(BulletConfigSyncingUtil.ACP_45);
public static final List<Integer> fourtyFiveACP = ImmutableList.of(BulletConfigSyncingUtil.ACP_45, BulletConfigSyncingUtil.ACP_45_AP, BulletConfigSyncingUtil.ACP_45_DU);
// RIFLE CALIBER
/** .50 BROWNING MACHINE GUN **/
public static final List<Integer> 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<Integer> fiftyBMGFlechette = ImmutableList.of(BulletConfigSyncingUtil.BMG50_FLECHETTE_AM, BulletConfigSyncingUtil.BMG50_FLECHETTE_NORMAL, BulletConfigSyncingUtil.BMG50_FLECHETTE_PO);
/** 5.56MMx45 NATO (BASIC) **/
public static final List<Integer> 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<Integer> 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<Integer> 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 **/

View File

@ -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);

View File

@ -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;

View File

@ -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;

View File

@ -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() {

View File

@ -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

View File

@ -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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 337 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 343 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 355 B

View File

Before

Width:  |  Height:  |  Size: 302 B

After

Width:  |  Height:  |  Size: 302 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 363 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 332 B

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB