mirror of
https://github.com/JezuzLizard/BO2-Reimagined.git
synced 2025-06-10 07:08:06 -05:00
Containment: restore weapons correctly
This commit is contained in:
@ -105,6 +105,72 @@ onspawnplayer( predictedspawn )
|
||||
pixendevent();
|
||||
}
|
||||
|
||||
onplayerspawned()
|
||||
{
|
||||
level endon( "end_game" );
|
||||
self endon( "disconnect" );
|
||||
for ( ;; )
|
||||
{
|
||||
self waittill_either( "spawned_player", "fake_spawned_player" );
|
||||
if ( isDefined( level.match_is_ending ) && level.match_is_ending )
|
||||
{
|
||||
return;
|
||||
}
|
||||
if ( self maps/mp/zombies/_zm_laststand::player_is_in_laststand() )
|
||||
{
|
||||
self thread maps/mp/zombies/_zm_laststand::auto_revive( self );
|
||||
}
|
||||
if ( isDefined( level.custom_player_fake_death_cleanup ) )
|
||||
{
|
||||
self [[ level.custom_player_fake_death_cleanup ]]();
|
||||
}
|
||||
self setstance( "stand" );
|
||||
self.zmbdialogqueue = [];
|
||||
self.zmbdialogactive = 0;
|
||||
self.zmbdialoggroups = [];
|
||||
self.zmbdialoggroup = "";
|
||||
if ( is_encounter() )
|
||||
{
|
||||
if ( self.team == "axis" )
|
||||
{
|
||||
self.characterindex = 0;
|
||||
self._encounters_team = "A";
|
||||
self._team_name = &"ZOMBIE_RACE_TEAM_1";
|
||||
}
|
||||
else
|
||||
{
|
||||
self.characterindex = 1;
|
||||
self._encounters_team = "B";
|
||||
self._team_name = &"ZOMBIE_RACE_TEAM_2";
|
||||
}
|
||||
}
|
||||
self takeallweapons();
|
||||
if ( isDefined( level.givecustomcharacters ) )
|
||||
{
|
||||
self [[ level.givecustomcharacters ]]();
|
||||
}
|
||||
self giveweapon( "knife_zm" );
|
||||
if ( isDefined( level.onplayerspawned_restore_previous_weapons ) )
|
||||
{
|
||||
weapons_restored = self [[ level.onplayerspawned_restore_previous_weapons ]]();
|
||||
}
|
||||
if ( isDefined( weapons_restored ) && !weapons_restored || !isDefined( weapons_restored ) )
|
||||
{
|
||||
self give_start_weapon( 1 );
|
||||
}
|
||||
weapons_restored = 0;
|
||||
if ( isDefined( level._team_loadout ) )
|
||||
{
|
||||
self giveweapon( level._team_loadout );
|
||||
self switchtoweapon( level._team_loadout );
|
||||
}
|
||||
if ( isDefined( level.gamemode_post_spawn_logic ) )
|
||||
{
|
||||
self [[ level.gamemode_post_spawn_logic ]]();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
hide_gump_loading_for_hotjoiners()
|
||||
{
|
||||
if(isDefined(level.scr_zm_ui_gametype_obj) && level.scr_zm_ui_gametype_obj != "zgrief")
|
||||
|
@ -21,6 +21,7 @@ main()
|
||||
|
||||
replaceFunc(maps/mp/zombies/_zm::getfreespawnpoint, scripts/zm/replaced/_zm::getfreespawnpoint);
|
||||
replaceFunc(maps/mp/gametypes_zm/_zm_gametype::onspawnplayer, scripts/zm/replaced/_zm_gametype::onspawnplayer);
|
||||
replaceFunc(maps/mp/gametypes_zm/_zm_gametype::onplayerspawned, scripts/zm/replaced/_zm_gametype::onplayerspawned);
|
||||
replaceFunc(maps/mp/gametypes_zm/_zm_gametype::hide_gump_loading_for_hotjoiners, scripts/zm/replaced/_zm_gametype::hide_gump_loading_for_hotjoiners);
|
||||
replaceFunc(maps/mp/zombies/_zm_audio_announcer::playleaderdialogonplayer, scripts/zm/replaced/_zm_audio_announcer::playleaderdialogonplayer);
|
||||
replaceFunc(maps/mp/zombies/_zm_game_module::wait_for_team_death_and_round_end, scripts/zm/replaced/_zm_game_module::wait_for_team_death_and_round_end);
|
||||
@ -713,10 +714,6 @@ on_player_spawned()
|
||||
self freezeControls(1);
|
||||
self enableInvulnerability();
|
||||
}
|
||||
else
|
||||
{
|
||||
self thread wait_and_restore_weapons();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -844,13 +841,6 @@ add_grief_bleedout_score()
|
||||
}
|
||||
}
|
||||
|
||||
wait_and_restore_weapons()
|
||||
{
|
||||
wait 0.05;
|
||||
|
||||
self [[level.onplayerspawned_restore_previous_weapons]]();
|
||||
}
|
||||
|
||||
headstomp_watcher()
|
||||
{
|
||||
level endon("end_game");
|
||||
|
Reference in New Issue
Block a user