Skip to content

Commit

Permalink
Fix Arc Cannon not dealing damage when used by NPCs (#666)
Browse files Browse the repository at this point in the history
Fixes NPCs using mp_titanweapon_arc_cannon not dealing damage to other entities

(cherry picked from commit 18298d2)
  • Loading branch information
ASpoonPlaysGames authored and GeckoEidechse committed Jul 25, 2023
1 parent 93a7b2d commit 5c087b0
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 4 deletions.
10 changes: 7 additions & 3 deletions Northstar.Custom/mod/scripts/vscripts/weapons/_arc_cannon.nut
Original file line number Diff line number Diff line change
Expand Up @@ -552,12 +552,16 @@ function ZapTarget( zapInfo, target, beamStartPos, beamEndPos, chainNum = 1 )
int damageNearValue = eWeaponVar.damage_near_value
int damageFarValueTitanArmor = eWeaponVar.damage_far_value_titanarmor
int damageNearValueTitanArmor = eWeaponVar.damage_near_value_titanarmor
int damageFarDistance = eWeaponVar.damage_far_distance
int damageNearDistance = eWeaponVar.damage_near_distance
if ( zapInfo.player.IsNPC() )
{
damageFarValue = eWeaponVar.npc_damage_far_value
damageNearValue = eWeaponVar.npc_damage_near_value
damageFarValueTitanArmor = eWeaponVar.npc_damage_far_value_titanarmor
damageNearValueTitanArmor = eWeaponVar.npc_damage_near_value_titanarmor
damageFarDistance = eWeaponVar.npc_damage_far_distance
damageNearDistance = eWeaponVar.npc_damage_near_distance
}

if ( IsValid( target ) && IsValid( zapInfo.player ) )
Expand Down Expand Up @@ -613,8 +617,8 @@ function ZapTarget( zapInfo, target, beamStartPos, beamEndPos, chainNum = 1 )
{
// use distance for damage if the weapon auto-fires
entity weapon = expect entity( zapInfo.weapon )
float nearDist = weapon.GetWeaponSettingFloat( eWeaponVar.damage_near_distance )
float farDist = weapon.GetWeaponSettingFloat( eWeaponVar.damage_far_distance )
float nearDist = weapon.GetWeaponSettingFloat( damageNearDistance )
float farDist = weapon.GetWeaponSettingFloat( damageFarDistance )

float dist = Distance( weapon.GetOrigin(), target.GetOrigin() )
damageAmount = GraphCapped( dist, farDist, nearDist, damageMin, damageMax )
Expand Down Expand Up @@ -1044,4 +1048,4 @@ function GetWeaponChargeFrac( weapon )
if ( weapon.IsChargeWeapon() )
return weapon.GetWeaponChargeFraction()
return 1.0
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,12 @@ WeaponData
"damage_far_value_titanarmor" "100"

// Damage - When Used by NPCs
"npc_damage_near_distance" "200"
"npc_damage_far_distance" "2500"
"npc_damage_near_value" "220"
"npc_damage_far_value" "170"
"npc_damage_near_value_titanarmor" "1800"
"npc_damage_far_value_titanarmor" "100"

"critical_hit" "0"
"critical_hit_damage_scale" "1.5"
Expand Down Expand Up @@ -340,4 +346,4 @@ WeaponData
}
}
}
}
}

0 comments on commit 5c087b0

Please sign in to comment.