1
0
mirror of https://github.com/JezuzLizard/BO2-Reimagined.git synced 2025-06-09 23:02:53 -05:00

EMP Grenade: fix not taking away Stamin-Up when downed

This commit is contained in:
Jbleezy
2023-05-05 22:40:10 -07:00
parent 36657a0048
commit f6819bb904
3 changed files with 50 additions and 22 deletions

View File

@ -103,6 +103,7 @@ main()
replaceFunc(maps\mp\zombies\_zm_perks::turn_tombstone_on, scripts\zm\replaced\_zm_perks::turn_tombstone_on);
replaceFunc(maps\mp\zombies\_zm_perks::wait_for_player_to_take, scripts\zm\replaced\_zm_perks::wait_for_player_to_take);
replaceFunc(maps\mp\zombies\_zm_perks::check_player_has_perk, scripts\zm\replaced\_zm_perks::check_player_has_perk);
replaceFunc(maps\mp\zombies\_zm_perks::set_perk_clientfield, scripts\zm\replaced\_zm_perks::set_perk_clientfield);
replaceFunc(maps\mp\zombies\_zm_perks::perk_pause, scripts\zm\replaced\_zm_perks::perk_pause);
replaceFunc(maps\mp\zombies\_zm_perks::perk_unpause, scripts\zm\replaced\_zm_perks::perk_unpause);
replaceFunc(maps\mp\zombies\_zm_buildables::player_progress_bar_update, scripts\zm\replaced\_zm_buildables::player_progress_bar_update);

View File

@ -832,6 +832,10 @@ perk_think( perk )
{
arrayremovevalue( self.perks_active, perk, 0 );
}
if ( isDefined( self.disabled_perks ) && isDefined( self.disabled_perks[perk] ) )
{
self.disabled_perks[perk] = undefined;
}
self notify( "perk_lost" );
}
@ -911,6 +915,48 @@ perk_set_max_health_if_jugg( perk, set_premaxhealth, clamp_health_to_max_health
}
}
set_perk_clientfield( perk, state )
{
switch ( perk )
{
case "specialty_additionalprimaryweapon":
self setclientfieldtoplayer( "perk_additional_primary_weapon", state );
break;
case "specialty_deadshot":
self setclientfieldtoplayer( "perk_dead_shot", state );
break;
case "specialty_flakjacket":
self setclientfieldtoplayer( "perk_dive_to_nuke", state );
break;
case "specialty_rof":
self setclientfieldtoplayer( "perk_double_tap", state );
break;
case "specialty_armorvest":
self setclientfieldtoplayer( "perk_juggernaut", state );
break;
case "specialty_movefaster":
self setclientfieldtoplayer( "perk_marathon", state );
break;
case "specialty_quickrevive":
self setclientfieldtoplayer( "perk_quick_revive", state );
break;
case "specialty_fastreload":
self setclientfieldtoplayer( "perk_sleight_of_hand", state );
break;
case "specialty_scavenger":
self setclientfieldtoplayer( "perk_tombstone", state );
break;
case "specialty_finalstand":
self setclientfieldtoplayer( "perk_chugabud", state );
break;
default:
break;
}
if ( isdefined( level._custom_perks[perk] ) && isdefined( level._custom_perks[perk].clientfield_set ) )
self [[ level._custom_perks[perk].clientfield_set ]]( state );
}
initialize_custom_perk_arrays()
{
if(!isDefined(level._custom_perks))
@ -924,8 +970,6 @@ initialize_custom_perk_arrays()
level._custom_perks["specialty_movefaster"].hint_string = &"ZOMBIE_PERK_MARATHON";
level._custom_perks["specialty_movefaster"].perk_bottle = "zombie_perk_bottle_marathon";
level._custom_perks["specialty_movefaster"].perk_machine_thread = ::turn_movefaster_on;
level._custom_perks["specialty_movefaster"].player_thread_give = ::give_movefaster;
level._custom_perks["specialty_movefaster"].player_thread_take = ::take_movefaster;
struct = spawnStruct();
struct.script_noteworthy = "specialty_longersprint";
@ -1195,23 +1239,6 @@ turn_tombstone_on()
}
}
give_movefaster()
{
self set_perk_clientfield("specialty_longersprint", 1);
}
take_movefaster()
{
if (IsDefined(self.disabled_perks) && IsDefined(self.disabled_perks["specialty_movefaster"]) && self.disabled_perks["specialty_movefaster"])
{
self set_perk_clientfield("specialty_longersprint", 2);
}
else
{
self set_perk_clientfield( "specialty_longersprint", 0 );
}
}
wait_for_player_to_take( player, weapon, packa_timer, upgrade_as_attachment )
{
current_weapon = self.current_weapon;

View File

@ -238,9 +238,9 @@ player_perk_pause( perk )
{
self.disabled_perks = [];
}
if ( !is_true( self.disabled_perks[ perk ] ) )
if ( !is_true( self.disabled_perks[ perk ] ) && self hasperk( perk ) )
{
self.disabled_perks[ perk ] = self hasperk( perk );
self.disabled_perks[ perk ] = 1;
}
if ( self.disabled_perks[ perk ] )
{
@ -285,7 +285,7 @@ player_perk_unpause( perk )
if ( isDefined( self.disabled_perks ) && is_true( self.disabled_perks[ perk ] ) )
{
self.disabled_perks[ perk ] = 0;
self.disabled_perks[ perk ] = undefined;
self maps\mp\zombies\_zm_perks::set_perk_clientfield( perk, 1 );
self setperk( perk );
if ( issubstr( perk, "specialty_scavenger" ) )