diff --git a/scripts/zm/_zm_reimagined.gsc b/scripts/zm/_zm_reimagined.gsc index 25b63952..1b15f804 100644 --- a/scripts/zm/_zm_reimagined.gsc +++ b/scripts/zm/_zm_reimagined.gsc @@ -98,13 +98,12 @@ onplayerspawned() { self.initial_spawn = false; + self.solo_lives_given = 0; self.screecher_seen_hint = 1; self bank_clear_account_value(); self weapon_locker_clear_stored_weapondata(); - self thread give_solo_lives(); - self thread health_bar_hud(); self thread bleedout_bar_hud(); self thread zone_hud(); @@ -139,7 +138,7 @@ onplayerspawned() //self thread test(); - //self.score = 1000000; + self.score = 1000000; //maps/mp/zombies/_zm_perks::give_perk( "specialty_armorvest", 0 ); //self GiveWeapon("dsr50_zm"); //self GiveMaxAmmo("dsr50_zm"); @@ -261,16 +260,6 @@ set_perks() self setperk( "specialty_fastmantle" ); } -give_solo_lives() -{ - flag_wait( "initial_players_connected" ); - - if(flag("solo_game")) - { - self.lives = 3; - } -} - health_bar_hud() { self endon("disconnect"); diff --git a/scripts/zm/replaced/_zm.gsc b/scripts/zm/replaced/_zm.gsc index 4594a95a..176d8377 100644 --- a/scripts/zm/replaced/_zm.gsc +++ b/scripts/zm/replaced/_zm.gsc @@ -610,7 +610,7 @@ player_damage_override( einflictor, eattacker, idamage, idflags, smeansofdeath, } if ( count < players.size || isDefined( level._game_module_game_end_check ) && ![[ level._game_module_game_end_check ]]() ) { - if ( isDefined( self.lives ) && self.lives > 0 && is_true( level.force_solo_quick_revive ) && self hasperk( "specialty_quickrevive" ) ) + if ( isDefined( self.solo_lives_given ) && self.solo_lives_given < 3 && is_true( level.force_solo_quick_revive ) && self hasperk( "specialty_quickrevive" ) ) { self thread maps/mp/zombies/_zm::wait_and_revive(); } @@ -679,7 +679,7 @@ is_solo_death( self, players ) { if ( players.size == 1 && flag( "solo_game" ) ) { - if(self.lives == 0) + if(self.solo_lives_given >= 3) { return 1; } @@ -737,7 +737,7 @@ player_laststand( einflictor, attacker, idamage, smeansofdeath, sweapon, vdir, s players = get_players(); if ( players.size == 1 && flag( "solo_game" ) ) { - if ( self.lives > 0 ) + if ( self.solo_lives_given < 3 ) { active_perks = 0; if(isDefined(self.perks_active)) @@ -862,7 +862,7 @@ wait_and_revive() } flag_clear( "wait_and_revive" ); self maps/mp/zombies/_zm_laststand::auto_revive( self ); - self.lives--; + self.solo_lives_given++; self.waiting_to_revive = 0; if ( is_true( self.pers_upgrades_awarded[ "perk_lose" ] ) ) diff --git a/scripts/zm/replaced/_zm_chugabud.gsc b/scripts/zm/replaced/_zm_chugabud.gsc index ee23b7fe..246d9152 100644 --- a/scripts/zm/replaced/_zm_chugabud.gsc +++ b/scripts/zm/replaced/_zm_chugabud.gsc @@ -19,9 +19,9 @@ chugabud_bleed_timeout( delay, corpse ) } } - if ( flag( "solo_game" ) && self.lives > 0 && isDefined( self.loadout.perks ) && self.loadout.perks.size > 0 ) + if ( flag( "solo_game" ) && self.solo_lives_given < 3 ) { - self.lives--; + self.solo_lives_given++; corpse notify( "player_revived" ); return; } diff --git a/scripts/zm/replaced/zm_highrise_classic.gsc b/scripts/zm/replaced/zm_highrise_classic.gsc index 9f6c8703..5c1a7be3 100644 --- a/scripts/zm/replaced/zm_highrise_classic.gsc +++ b/scripts/zm/replaced/zm_highrise_classic.gsc @@ -53,7 +53,7 @@ insta_kill_player( perks_can_respawn_player, kill_if_falling ) self thread blood_splat(); if ( getnumconnectedplayers() == 1 ) { - if ( isDefined( self.lives ) && self.lives > 0 ) + if ( isDefined( self.solo_lives_given ) && self.solo_lives_given < 3 ) { self.waiting_to_revive = 1; points = getstruct( "zone_green_start", "script_noteworthy" );