mirror of
https://github.com/JezuzLizard/BO2-Reimagined.git
synced 2025-06-10 15:17:57 -05:00
Encounter: fix weapon restore
This commit is contained in:
@ -51,6 +51,7 @@ main()
|
||||
replaceFunc(maps\mp\zombies\_zm_audio_announcer::playleaderdialogonplayer, scripts\zm\replaced\_zm_audio_announcer::playleaderdialogonplayer);
|
||||
replaceFunc(maps\mp\zombies\_zm_stats::set_global_stat, scripts\zm\replaced\_zm_stats::set_global_stat);
|
||||
replaceFunc(maps\mp\zombies\_zm_playerhealth::playerhealthregen, scripts\zm\replaced\_zm_playerhealth::playerhealthregen);
|
||||
replaceFunc(maps\mp\zombies\_zm_utility::init_player_offhand_weapons, scripts\zm\replaced\_zm_utility::init_player_offhand_weapons);
|
||||
replaceFunc(maps\mp\zombies\_zm_utility::is_headshot, scripts\zm\replaced\_zm_utility::is_headshot);
|
||||
replaceFunc(maps\mp\zombies\_zm_utility::shock_onpain, scripts\zm\replaced\_zm_utility::shock_onpain);
|
||||
replaceFunc(maps\mp\zombies\_zm_utility::create_zombie_point_of_interest_attractor_positions, scripts\zm\replaced\_zm_utility::create_zombie_point_of_interest_attractor_positions);
|
||||
|
@ -2,6 +2,23 @@
|
||||
#include common_scripts\utility;
|
||||
#include maps\mp\zombies\_zm_utility;
|
||||
|
||||
init_player_offhand_weapons()
|
||||
{
|
||||
if ( !is_true( self.init_player_offhand_weapons_override ) )
|
||||
{
|
||||
if ( is_gametype_active( "zgrief" ) && is_true( self.player_initialized ) )
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
init_player_lethal_grenade();
|
||||
init_player_tactical_grenade();
|
||||
init_player_placeable_mine();
|
||||
init_player_melee_weapon();
|
||||
init_player_equipment();
|
||||
}
|
||||
|
||||
is_headshot( sweapon, shitloc, smeansofdeath )
|
||||
{
|
||||
if ( smeansofdeath == "MOD_MELEE" || smeansofdeath == "MOD_BAYONET" || smeansofdeath == "MOD_IMPACT" || smeansofdeath == "MOD_UNKNOWN" || smeansofdeath == "MOD_IMPACT" )
|
||||
@ -241,7 +258,12 @@ get_current_zone( return_zone )
|
||||
|
||||
is_temporary_zombie_weapon( str_weapon )
|
||||
{
|
||||
return is_zombie_perk_bottle( str_weapon ) || str_weapon == level.revive_tool || str_weapon == "zombie_builder_zm" || str_weapon == "chalk_draw_zm" || str_weapon == "no_hands_zm" || str_weapon == level.machine_assets["packapunch"].weapon || issubstr( str_weapon, "_flourish" );
|
||||
if ( isdefined( level.machine_assets["packapunch"] ) && isdefined( level.machine_assets["packapunch"].weapon ) && str_weapon == level.machine_assets["packapunch"].weapon )
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
return is_zombie_perk_bottle( str_weapon ) || str_weapon == level.revive_tool || str_weapon == "zombie_builder_zm" || str_weapon == "chalk_draw_zm" || str_weapon == "no_hands_zm" || issubstr( str_weapon, "_flourish" );
|
||||
}
|
||||
|
||||
wait_network_frame()
|
||||
|
@ -878,6 +878,9 @@ on_player_bleedout()
|
||||
if(level.scr_zm_ui_gametype_obj == "zsnr")
|
||||
{
|
||||
self.grief_savedweapon_weapons = undefined;
|
||||
self.init_player_offhand_weapons_override = 1;
|
||||
self init_player_offhand_weapons();
|
||||
self.init_player_offhand_weapons_override = undefined;
|
||||
self bleedout_feed();
|
||||
self add_grief_bleedout_score();
|
||||
level thread update_players_on_bleedout( self );
|
||||
@ -2213,17 +2216,6 @@ grief_laststand_weapons_return()
|
||||
continue;
|
||||
}
|
||||
|
||||
if ( isweaponprimary( self.grief_savedweapon_weapons[ i ] ) )
|
||||
{
|
||||
if ( primary_weapons_returned >= get_player_weapon_limit( self ) )
|
||||
{
|
||||
i++;
|
||||
continue;
|
||||
}
|
||||
|
||||
primary_weapons_returned++;
|
||||
}
|
||||
|
||||
if ( is_temporary_zombie_weapon( self.grief_savedweapon_weapons[ i ] ) )
|
||||
{
|
||||
i++;
|
||||
@ -2236,6 +2228,17 @@ grief_laststand_weapons_return()
|
||||
continue;
|
||||
}
|
||||
|
||||
if ( isweaponprimary( self.grief_savedweapon_weapons[ i ] ) )
|
||||
{
|
||||
if ( primary_weapons_returned >= get_player_weapon_limit( self ) )
|
||||
{
|
||||
i++;
|
||||
continue;
|
||||
}
|
||||
|
||||
primary_weapons_returned++;
|
||||
}
|
||||
|
||||
if (isDefined(self.stored_weapon_info[self.grief_savedweapon_weapons[i]]) && isDefined(self.stored_weapon_info[self.grief_savedweapon_weapons[i]].total_used_amt))
|
||||
{
|
||||
used_amt = self.stored_weapon_info[self.grief_savedweapon_weapons[i]].total_used_amt;
|
||||
@ -2301,52 +2304,6 @@ grief_laststand_weapons_return()
|
||||
i++;
|
||||
}
|
||||
|
||||
self thread grief_laststand_items_return();
|
||||
|
||||
self.grief_savedweapon_weapons = undefined;
|
||||
|
||||
if ( isDefined( self.pre_temp_weapon ) && self hasWeapon( self.pre_temp_weapon ) )
|
||||
{
|
||||
self switchtoweapon( self.pre_temp_weapon );
|
||||
self.pre_temp_weapon = undefined;
|
||||
return 1;
|
||||
}
|
||||
|
||||
if ( isDefined( self.pre_meat_weapon ) && self hasWeapon( self.pre_meat_weapon ) )
|
||||
{
|
||||
self switchtoweapon( self.pre_meat_weapon );
|
||||
self.pre_meat_weapon = undefined;
|
||||
return 1;
|
||||
}
|
||||
|
||||
if ( isDefined( self.grief_savedweapon_currentweapon ) && self hasWeapon( self.grief_savedweapon_currentweapon ) )
|
||||
{
|
||||
self switchtoweapon( self.grief_savedweapon_currentweapon );
|
||||
self.grief_savedweapon_currentweapon = undefined;
|
||||
return 1;
|
||||
}
|
||||
|
||||
primaries = self getweaponslistprimaries();
|
||||
if ( primaries.size > 0 )
|
||||
{
|
||||
self switchtoweapon( primaries[ 0 ] );
|
||||
return 1;
|
||||
}
|
||||
|
||||
self maps\mp\zombies\_zm_weapons::give_fallback_weapon();
|
||||
return 1;
|
||||
}
|
||||
|
||||
grief_laststand_items_return()
|
||||
{
|
||||
self endon("disconnect");
|
||||
|
||||
if(is_respawn_gamemode())
|
||||
{
|
||||
// needs a wait or some items aren't given back on respawn
|
||||
wait 0.05;
|
||||
}
|
||||
|
||||
if ( isDefined( self.grief_savedweapon_melee ) )
|
||||
{
|
||||
self set_player_melee_weapon( self.grief_savedweapon_melee );
|
||||
@ -2421,6 +2378,39 @@ grief_laststand_items_return()
|
||||
self [[ self.player_shield_reset_health ]]();
|
||||
}
|
||||
}
|
||||
|
||||
self.grief_savedweapon_weapons = undefined;
|
||||
|
||||
if ( isDefined( self.pre_temp_weapon ) && self hasWeapon( self.pre_temp_weapon ) )
|
||||
{
|
||||
self switchtoweapon( self.pre_temp_weapon );
|
||||
self.pre_temp_weapon = undefined;
|
||||
return 1;
|
||||
}
|
||||
|
||||
if ( isDefined( self.pre_meat_weapon ) && self hasWeapon( self.pre_meat_weapon ) )
|
||||
{
|
||||
self switchtoweapon( self.pre_meat_weapon );
|
||||
self.pre_meat_weapon = undefined;
|
||||
return 1;
|
||||
}
|
||||
|
||||
if ( isDefined( self.grief_savedweapon_currentweapon ) && self hasWeapon( self.grief_savedweapon_currentweapon ) )
|
||||
{
|
||||
self switchtoweapon( self.grief_savedweapon_currentweapon );
|
||||
self.grief_savedweapon_currentweapon = undefined;
|
||||
return 1;
|
||||
}
|
||||
|
||||
primaries = self getweaponslistprimaries();
|
||||
if ( primaries.size > 0 )
|
||||
{
|
||||
self switchtoweapon( primaries[ 0 ] );
|
||||
return 1;
|
||||
}
|
||||
|
||||
self maps\mp\zombies\_zm_weapons::give_fallback_weapon();
|
||||
return 1;
|
||||
}
|
||||
|
||||
sudden_death()
|
||||
|
Reference in New Issue
Block a user