1
0
mirror of https://github.com/JezuzLizard/BO2-Reimagined.git synced 2025-06-10 23:27:57 -05:00

Melee weapons: fix missing checks for held weapon

This commit is contained in:
Jbleezy
2023-12-22 15:41:48 -08:00
parent 48a2f54898
commit 66f68fabc9
5 changed files with 76 additions and 2 deletions

View File

@ -1310,7 +1310,7 @@ actor_damage_override(inflictor, attacker, damage, flags, meansofdeath, weapon,
return damage;
}
if (weapon == "tazer_knuckles_zm" || weapon == "jetgun_zm")
if (issubstr(weapon, "tazer_knuckles_zm") || weapon == "jetgun_zm")
{
self.knuckles_extinguish_flames = 1;
}

View File

@ -193,4 +193,61 @@ cloud_update_fx()
wait 0.1;
}
}
avogadro_damage_func( einflictor, eattacker, idamage, idflags, smeansofdeath, sweapon, vpoint, vdir, shitloc, psoffsettime, boneindex )
{
if ( self.state == "exiting" || self.state == "phasing" )
{
return false;
}
if ( smeansofdeath == "MOD_MELEE" )
{
if ( isplayer( einflictor ) )
{
if ( self.shield )
{
einflictor.avogadro_melee_time = gettime();
maps\mp\_visionset_mgr::vsmgr_activate( "overlay", "zm_ai_avogadro_electrified", einflictor, 0.25, 1 );
einflictor shellshock( "electrocution", 0.25 );
einflictor notify( "avogadro_damage_taken" );
}
if ( sweapon == "riotshield_zm" )
{
shield_damage = level.zombie_vars["riotshield_fling_damage_shield"];
einflictor maps\mp\zombies\_zm_weap_riotshield::player_damage_shield( shield_damage, 0 );
}
}
if ( !self.shield )
{
self.shield = 1;
self notify( "melee_pain" );
if ( issubstr( sweapon, "tazer_knuckles_zm" ) )
{
self.hit_by_melee += 2;
}
else
{
self.hit_by_melee++;
}
self thread avogadro_pain( einflictor );
if ( isplayer( einflictor ) )
{
einflictor thread do_player_general_vox( "general", "avogadro_wound", 30, 35 );
level notify( "avogadro_stabbed", self );
}
}
}
else
{
self update_damage_absorbed( idamage );
}
return false;
}

View File

@ -41,4 +41,20 @@ ts_sign_check_all_activated(e_attacker, m_last_touched)
level.e_sq_sign_attacker = e_attacker;
level notify("sq_sign_damaged");
}
}
ts_is_bowie_knife( str_weapon )
{
if ( str_weapon == "knife_ballistic_bowie_zm" || str_weapon == "knife_ballistic_bowie_upgraded_zm" || issubstr( str_weapon, "bowie_knife_zm" ) )
return true;
return false;
}
ts_is_galvaknuckles( str_weapon )
{
if ( issubstr( str_weapon, "tazer_knuckles_zm" ) )
return true;
return false;
}

View File

@ -136,7 +136,7 @@ tower_punch_watch_leg(a_leg_trigs)
{
self waittill("trigger", who);
if (!isinarray(level.legs_hit, self.script_noteworthy) && isplayer(who) && (who.current_melee_weapon == "tazer_knuckles_zm" || who.current_melee_weapon == "tazer_knuckles_upgraded_zm"))
if (!isinarray(level.legs_hit, self.script_noteworthy) && isplayer(who) && (issubstr(who.current_melee_weapon, "tazer_knuckles_zm") || issubstr(who.current_melee_weapon, "tazer_knuckles_upgraded_zm")))
{
level.legs_hit[level.legs_hit.size] = self.script_noteworthy;
self playsound("zmb_sq_leg_powerup_" + level.legs_hit.size);