diff --git a/scripts/zm/replaced/_zm_gametype.gsc b/scripts/zm/replaced/_zm_gametype.gsc index 2363dc67..9c96f2cb 100644 --- a/scripts/zm/replaced/_zm_gametype.gsc +++ b/scripts/zm/replaced/_zm_gametype.gsc @@ -149,11 +149,12 @@ onplayerspawned() { self [[ level.givecustomcharacters ]](); } + weapons_restored = 0; if ( isDefined( level.onplayerspawned_restore_previous_weapons ) ) { weapons_restored = self [[ level.onplayerspawned_restore_previous_weapons ]](); } - if ( isDefined( weapons_restored ) && !weapons_restored || !isDefined( weapons_restored ) ) + if ( !is_true( weapons_restored ) ) { self giveweapon( "knife_zm" ); self give_start_weapon( 1 ); diff --git a/scripts/zm/zgrief/zgrief_reimagined.gsc b/scripts/zm/zgrief/zgrief_reimagined.gsc index 1ea3adda..92ec8378 100644 --- a/scripts/zm/zgrief/zgrief_reimagined.gsc +++ b/scripts/zm/zgrief/zgrief_reimagined.gsc @@ -2188,6 +2188,18 @@ grief_laststand_weapons_return() return 0; } + if(is_true(self._retain_perks)) + { + if(isDefined(self.grief_savedperks)) + { + self.perks_active = []; + foreach(perk in self.grief_savedperks) + { + self maps\mp\zombies\_zm_perks::give_perk(perk); + } + } + } + primary_weapons_returned = 0; i = 0; while ( i < self.grief_savedweapon_weapons.size ) @@ -2200,7 +2212,7 @@ grief_laststand_weapons_return() if ( isweaponprimary( self.grief_savedweapon_weapons[ i ] ) ) { - if ( primary_weapons_returned >= 2 ) + if ( primary_weapons_returned >= get_player_weapon_limit( self ) ) { i++; continue; @@ -2282,18 +2294,6 @@ grief_laststand_weapons_return() self thread grief_laststand_items_return(); - if(is_true(self._retain_perks)) - { - if(isDefined(self.grief_savedperks)) - { - self.perks_active = []; - foreach(perk in self.grief_savedperks) - { - self maps\mp\zombies\_zm_perks::give_perk(perk); - } - } - } - self.grief_savedweapon_weapons = undefined; primaries = self getweaponslistprimaries();