1
0
mirror of https://github.com/JezuzLizard/BO2-Reimagined.git synced 2025-06-07 21:59:49 -05:00

Blundergat and Acid Gat changes

This commit is contained in:
Jbleezy 2023-12-17 22:51:09 -08:00
parent 1dd3311f87
commit 3e9c36b967
9 changed files with 93 additions and 52 deletions

View File

@ -290,15 +290,19 @@
* Decreased max player fly height * Decreased max player fly height
### Blundergat ### Blundergat
* Kills on any round * Kills on any round in 1-2 shots
* Increased pellet count from 7 to 8
* Increased pellet size
### Acid Gat ### Acid Gat
* Kills on any round in 1-2 bursts * Kills on any round in 1-2 bursts
* Increased player damage from 10 to 25 * Changed fire type from 3 round burst to 4 round burst
* Vastly improved accuracy * Increased player damage from 10 to 15
* Aiming and Deadshot improve accuracy * Projectiles fire in a straight line
* Deadshot improves accuracy
* Projectile no longer seeks toward zombies * Projectile no longer seeks toward zombies
* Stuck zombie counts as a kill * Stuck zombie counts as a kill
* Upgraded: fixed fire sound
### Staffs ### Staffs
* Upgrade only requires collecting souls in The Crazy Place * Upgrade only requires collecting souls in The Crazy Place

View File

@ -1354,13 +1354,7 @@ actor_damage_override(inflictor, attacker, damage, flags, meansofdeath, weapon,
{ {
if (!is_true(self.is_mechz)) if (!is_true(self.is_mechz))
{ {
damage_scalar = damage / 6000; final_damage = scale_damage(final_damage, 6000);
min_damage = int(damage_scalar * level.zombie_health) + 1;
if (damage < min_damage)
{
damage = min_damage;
}
} }
} }
@ -1376,13 +1370,7 @@ actor_damage_override(inflictor, attacker, damage, flags, meansofdeath, weapon,
{ {
if (!is_true(self.is_brutus)) if (!is_true(self.is_brutus))
{ {
damage_scalar = damage / 200; final_damage = scale_damage(final_damage, 200);
min_damage = int(damage_scalar * level.zombie_health) + 1;
if (damage < min_damage)
{
damage = min_damage;
}
} }
} }
@ -1439,17 +1427,19 @@ actor_damage_override(inflictor, attacker, damage, flags, meansofdeath, weapon,
final_damage = 2000; final_damage = 2000;
} }
if (weapon == "blundergat_zm" || weapon == "blundergat_upgraded_zm") if (weapon == "blundergat_zm")
{ {
if (!is_true(self.is_brutus)) if (!is_true(self.is_brutus))
{ {
damage_scalar = final_damage / 1000; final_damage = scale_damage(final_damage, 500);
min_damage = int(damage_scalar * level.zombie_health) + 1; }
}
if (final_damage < min_damage) if (weapon == "blundergat_upgraded_zm")
{ {
final_damage = min_damage; if (!is_true(self.is_brutus))
} {
final_damage = scale_damage(final_damage, 1000);
} }
} }
@ -1457,13 +1447,7 @@ actor_damage_override(inflictor, attacker, damage, flags, meansofdeath, weapon,
{ {
if (!is_true(self.is_brutus)) if (!is_true(self.is_brutus))
{ {
damage_scalar = final_damage / 3000; final_damage = scale_damage(final_damage, 4000);
min_damage = int(damage_scalar * level.zombie_health) + 1;
if (final_damage < min_damage)
{
final_damage = min_damage;
}
} }
} }
@ -1527,6 +1511,19 @@ actor_damage_override(inflictor, attacker, damage, flags, meansofdeath, weapon,
return int(final_damage); return int(final_damage);
} }
scale_damage(damage, damage_to_kill)
{
scalar = damage / damage_to_kill;
scaled_damage = int(scalar * level.zombie_health) + 1;
if (damage < scaled_damage)
{
return scaled_damage;
}
return damage;
}
callback_playerdamage(einflictor, eattacker, idamage, idflags, smeansofdeath, sweapon, vpoint, vdir, shitloc, psoffsettime, boneindex) callback_playerdamage(einflictor, eattacker, idamage, idflags, smeansofdeath, sweapon, vpoint, vdir, shitloc, psoffsettime, boneindex)
{ {
if (isDefined(eattacker) && isplayer(eattacker) && eattacker.sessionteam == self.sessionteam && !eattacker hasperk("specialty_noname") && isDefined(self.is_zombie) && !self.is_zombie) if (isDefined(eattacker) && isplayer(eattacker) && eattacker.sessionteam == self.sessionteam && !eattacker hasperk("specialty_noname") && isDefined(self.is_zombie) && !self.is_zombie)

View File

@ -574,7 +574,7 @@ afterlife_player_damage_callback(einflictor, eattacker, idamage, idflags, smeans
if (isalive(self) && !(isdefined(self.is_zombie) && self.is_zombie)) if (isalive(self) && !(isdefined(self.is_zombie) && self.is_zombie))
{ {
self.use_adjusted_grenade_damage = 1; self.use_adjusted_grenade_damage = 1;
idamage = 25; idamage = 15;
} }
} }
else else

View File

@ -19,12 +19,13 @@ wait_for_blundersplat_fired()
if (str_weapon == "blundersplat_zm") if (str_weapon == "blundersplat_zm")
{ {
_titus_locate_target(1, 0); fire_time = weaponfiretime(str_weapon);
wait_network_frame();
_titus_locate_target(1, 1); for (i = 0; i < weaponclipsize(str_weapon); i++)
wait_network_frame(); {
_titus_locate_target(1, 2); _titus_locate_target(1, i);
wait_network_frame(); wait fire_time;
}
} }
} }
} }
@ -41,12 +42,13 @@ wait_for_blundersplat_upgraded_fired()
if (str_weapon == "blundersplat_upgraded_zm") if (str_weapon == "blundersplat_upgraded_zm")
{ {
_titus_locate_target(0, 0); fire_time = weaponfiretime(str_weapon);
wait_network_frame();
_titus_locate_target(0, 1); for (i = 0; i < weaponclipsize(str_weapon); i++)
wait_network_frame(); {
_titus_locate_target(0, 2); _titus_locate_target(1, i);
wait_network_frame(); wait fire_time;
}
} }
} }
} }
@ -63,20 +65,24 @@ _titus_locate_target(is_not_upgraded = 1, count)
n_spread = 5; n_spread = 5;
if (isads(self)) if (self hasPerk("specialty_deadshot"))
{
n_spread *= 0.5;
}
else if (self hasPerk("specialty_deadshot"))
{ {
n_spread *= getdvarfloat("perk_weapSpreadMultiplier"); n_spread *= getdvarfloat("perk_weapSpreadMultiplier");
} }
if (count == 1) if (count == 2)
{ {
fire_angles += (0, n_spread, 0); fire_angles += (0, n_spread, 0);
} }
else if (count == 2) else if (count == 0)
{
fire_angles += (0, n_spread / 3, 0);
}
else if (count == 1)
{
fire_angles -= (0, n_spread / 3, 0);
}
else if (count == 3)
{ {
fire_angles -= (0, n_spread, 0); fire_angles -= (0, n_spread, 0);
} }

View File

@ -164,6 +164,7 @@ wait_for_player_to_take(player, str_valid_weapon)
{ {
player giveweapon(str_new_weapon); player giveweapon(str_new_weapon);
player switchtoweapon(str_new_weapon); player switchtoweapon(str_new_weapon);
player givestartammo(str_new_weapon);
} }
player thread do_player_general_vox("general", "player_recieves_blundersplat"); player thread do_player_general_vox("general", "player_recieves_blundersplat");

File diff suppressed because one or more lines are too long

8
weapons/zm/blundergat_zm Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long