diff --git a/README.md b/README.md index ae29f9c..707b0d1 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,15 @@ # WeaponFireCallbacks -Provides `AddCallback_OnWeaponFired` +Provides `WeaponFireCallbacks_AddCallbackOnWeaponFired`, `WeaponFireCallbacks_AddCallbackOnWeaponClassFired`, `WeaponFireCallbacks_RemoveCallbackOnWeaponClassFired`, `WeaponFireCallbacks_AddCallbackOnOwnerClassFired`, and `WeaponFireCallbacks_RemoveCallbackOnOwnerClassFired` ## Use ```cpp -AddCallback_OnWeaponFired(entity weapon, void functionref(WeaponPrimaryAttackParams attackParams) callback) +WeaponFireCallbacks_AddCallbackOnWeaponFired( entity weapon, void functionref( entity weapon, WeaponPrimaryAttackParams attackParams, var ammoUsed ) callback ) + +WeaponFireCallbacks_AddCallbackOnWeaponClassFired( string weaponClass, void functionref( entity weapon, WeaponPrimaryAttackParams attackParams, var ammoUsed ) callback ) +WeaponFireCallbacks_RemoveCallbackOnWeaponClassFired( string weaponClass, void functionref( entity weapon, WeaponPrimaryAttackParams attackParams, var ammoUsed ) callback ) + +WeaponFireCallbacks_AddCallbackOnOwnerClassFired( string ownerClass, void functionref( entity weapon, WeaponPrimaryAttackParams attackParams, var ammoUsed ) callback ) +WeaponFireCallbacks_RemoveCallbackOnOwnerClassFired( string ownerClass, void functionref( entity weapon, WeaponPrimaryAttackParams attackParams, var ammoUsed ) callback ) ``` diff --git a/keyvalues/scripts/weapons/mp_titanability_ammo_swap.txt b/keyvalues/scripts/weapons/mp_titanability_ammo_swap.txt new file mode 100644 index 0000000..d436220 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanability_ammo_swap.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_ammo_swap" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_ammo_swap" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanability_basic_block.txt b/keyvalues/scripts/weapons/mp_titanability_basic_block.txt new file mode 100644 index 0000000..0d1c08b --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanability_basic_block.txt @@ -0,0 +1,4 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanability_basic_block" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanability_electric_smoke.txt b/keyvalues/scripts/weapons/mp_titanability_electric_smoke.txt new file mode 100644 index 0000000..6e9f025 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanability_electric_smoke.txt @@ -0,0 +1,4 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanability_smoke" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanability_gun_shield.txt b/keyvalues/scripts/weapons/mp_titanability_gun_shield.txt new file mode 100644 index 0000000..e346f5c --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanability_gun_shield.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_gun_shield" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_gun_shield" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanability_hover.txt b/keyvalues/scripts/weapons/mp_titanability_hover.txt new file mode 100644 index 0000000..6992614 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanability_hover.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_TitanHover" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_NPC_OnWeaponPrimaryAttack_TitanHover" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanability_laser_trip.txt b/keyvalues/scripts/weapons/mp_titanability_laser_trip.txt new file mode 100644 index 0000000..3ca16c4 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanability_laser_trip.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_laser_trip" + "OnWeaponNPCPrimaryAttack" "WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_titanweapon_laser_trip" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanability_nuke_eject.txt b/keyvalues/scripts/weapons/mp_titanability_nuke_eject.txt new file mode 100644 index 0000000..e48690f --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanability_nuke_eject.txt @@ -0,0 +1,4 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_nuke_eject" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanability_particle_wall.txt b/keyvalues/scripts/weapons/mp_titanability_particle_wall.txt new file mode 100644 index 0000000..334d84b --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanability_particle_wall.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_particle_wall" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_particle_wall" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanability_phase_dash.txt b/keyvalues/scripts/weapons/mp_titanability_phase_dash.txt new file mode 100644 index 0000000..cde22fa --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanability_phase_dash.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanability_phase_dash" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_titanability_phase_dash" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanability_power_shot.txt b/keyvalues/scripts/weapons/mp_titanability_power_shot.txt new file mode 100644 index 0000000..2029692 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanability_power_shot.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_power_shot" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_power_shot" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanability_rearm.txt b/keyvalues/scripts/weapons/mp_titanability_rearm.txt new file mode 100644 index 0000000..fae016e --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanability_rearm.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanability_rearm" + "OnWeaponNPCPrimaryAttack" "WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_titanability_rearm" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanability_rocketeer_ammo_swap.txt b/keyvalues/scripts/weapons/mp_titanability_rocketeer_ammo_swap.txt new file mode 100644 index 0000000..d0b27af --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanability_rocketeer_ammo_swap.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_rocketeer_ammo_swap" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_rocketeer_ammo_swap" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanability_slow_trap.txt b/keyvalues/scripts/weapons/mp_titanability_slow_trap.txt new file mode 100644 index 0000000..932ca83 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanability_slow_trap.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_slow_trap" + "OnWeaponNPCPrimaryAttack" "WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_titanweapon_slow_trap" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanability_smoke.txt b/keyvalues/scripts/weapons/mp_titanability_smoke.txt new file mode 100644 index 0000000..0bff0d0 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanability_smoke.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanability_smoke" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanability_smoke" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanability_sonar_pulse.txt b/keyvalues/scripts/weapons/mp_titanability_sonar_pulse.txt new file mode 100644 index 0000000..ac0cb77 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanability_sonar_pulse.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanability_sonar_pulse" + "OnWeaponNPCPrimaryAttack" "WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_titanability_sonar_pulse" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanability_tether_trap.txt b/keyvalues/scripts/weapons/mp_titanability_tether_trap.txt new file mode 100644 index 0000000..d4ed7b7 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanability_tether_trap.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_tether_trap" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_tether_trap" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanability_timeshift.txt b/keyvalues/scripts/weapons/mp_titanability_timeshift.txt new file mode 100644 index 0000000..bca623b --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanability_timeshift.txt @@ -0,0 +1,4 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_TimeShift" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titancore_amp_core.txt b/keyvalues/scripts/weapons/mp_titancore_amp_core.txt new file mode 100644 index 0000000..95d1d90 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titancore_amp_core.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_AmpCore" + "OnWeaponNPCPrimaryAttack" "WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_AmpCore" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titancore_flame_wave.txt b/keyvalues/scripts/weapons/mp_titancore_flame_wave.txt new file mode 100644 index 0000000..af64293 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titancore_flame_wave.txt @@ -0,0 +1,4 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titancore_flame_wave" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titancore_salvo_core.txt b/keyvalues/scripts/weapons/mp_titancore_salvo_core.txt new file mode 100644 index 0000000..ce49326 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titancore_salvo_core.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_salvo_core" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_salvo_core" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_arc_wave.txt b/keyvalues/scripts/weapons/mp_titanweapon_arc_wave.txt new file mode 100644 index 0000000..bf5ba3d --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_arc_wave.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_arc_wave" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_arc_wave" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_dumbfire_rockets.txt b/keyvalues/scripts/weapons/mp_titanweapon_dumbfire_rockets.txt new file mode 100644 index 0000000..c1764e5 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_dumbfire_rockets.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_dumbfire_rockets" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_titanweapon_dumbfire_rockets" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_flame_wall.txt b/keyvalues/scripts/weapons/mp_titanweapon_flame_wall.txt new file mode 100644 index 0000000..9690d91 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_flame_wall.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_FlameWall" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_FlameWall" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_flightcore_rockets.txt b/keyvalues/scripts/weapons/mp_titanweapon_flightcore_rockets.txt new file mode 100644 index 0000000..615ce5e --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_flightcore_rockets.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_flightcore_rockets" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_flightcore_rockets" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_heat_shield.txt b/keyvalues/scripts/weapons/mp_titanweapon_heat_shield.txt new file mode 100644 index 0000000..2c8083c --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_heat_shield.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_heat_shield" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_heat_shield" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_homing_rockets.txt b/keyvalues/scripts/weapons/mp_titanweapon_homing_rockets.txt new file mode 100644 index 0000000..7352466 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_homing_rockets.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_homing_rockets" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_homing_rockets" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_laser_lite.txt b/keyvalues/scripts/weapons/mp_titanweapon_laser_lite.txt new file mode 100644 index 0000000..5f5dc92 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_laser_lite.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_laser_lite" + "OnWeaponNPCPrimaryAttack" "WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_titanweapon_laser_lite" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_leadwall.txt b/keyvalues/scripts/weapons/mp_titanweapon_leadwall.txt new file mode 100644 index 0000000..f3c69ea --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_leadwall.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_leadwall" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_leadwall" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_meteor.txt b/keyvalues/scripts/weapons/mp_titanweapon_meteor.txt new file mode 100644 index 0000000..3f818c0 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_meteor.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_Meteor" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_Meteor" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_orbital_strike.txt b/keyvalues/scripts/weapons/mp_titanweapon_orbital_strike.txt new file mode 100644 index 0000000..ccf4eed --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_orbital_strike.txt @@ -0,0 +1,4 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_salvo_rockets" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_particle_accelerator.txt b/keyvalues/scripts/weapons/mp_titanweapon_particle_accelerator.txt new file mode 100644 index 0000000..42bb245 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_particle_accelerator.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_particle_accelerator" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_particle_accelerator" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_predator_cannon.txt b/keyvalues/scripts/weapons/mp_titanweapon_predator_cannon.txt new file mode 100644 index 0000000..57371ac --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_predator_cannon.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_predator_cannon" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_predator_cannon" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_rocketeer_rocketstream.txt b/keyvalues/scripts/weapons/mp_titanweapon_rocketeer_rocketstream.txt new file mode 100644 index 0000000..d1f2f75 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_rocketeer_rocketstream.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_TitanWeapon_Rocketeer_RocketStream" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_TitanWeapon_Rocketeer_RocketStream" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_salvo_rockets.txt b/keyvalues/scripts/weapons/mp_titanweapon_salvo_rockets.txt new file mode 100644 index 0000000..32d3c1d --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_salvo_rockets.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_salvo_rockets" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_titanweapon_salvo_rockets" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_shoulder_rockets.txt b/keyvalues/scripts/weapons/mp_titanweapon_shoulder_rockets.txt new file mode 100644 index 0000000..5af3677 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_shoulder_rockets.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_shoulder_rockets" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_shoulder_rockets" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_sniper.txt b/keyvalues/scripts/weapons/mp_titanweapon_sniper.txt new file mode 100644 index 0000000..2415dea --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_sniper.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_sniper" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_sniper" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_sticky_40mm.txt b/keyvalues/scripts/weapons/mp_titanweapon_sticky_40mm.txt new file mode 100644 index 0000000..61f72d0 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_sticky_40mm.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_40mm" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_40mm" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_stun_laser.txt b/keyvalues/scripts/weapons/mp_titanweapon_stun_laser.txt new file mode 100644 index 0000000..2eaf2bc --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_stun_laser.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_stun_laser" + "OnWeaponNPCPrimaryAttack" "WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_titanweapon_stun_laser" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_tracker_rockets.txt b/keyvalues/scripts/weapons/mp_titanweapon_tracker_rockets.txt new file mode 100644 index 0000000..4efe536 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_tracker_rockets.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_tracker_rockets" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_titanweapon_tracker_rockets" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_vortex_shield.txt b/keyvalues/scripts/weapons/mp_titanweapon_vortex_shield.txt new file mode 100644 index 0000000..9b91291 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_vortex_shield.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_vortex_shield" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_vortex_shield" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_xo16.txt b/keyvalues/scripts/weapons/mp_titanweapon_xo16.txt new file mode 100644 index 0000000..28d3374 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_xo16.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_titanweapon_xo16_vanguard.txt b/keyvalues/scripts/weapons/mp_titanweapon_xo16_vanguard.txt new file mode 100644 index 0000000..28d3374 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_titanweapon_xo16_vanguard.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_turretweapon_blaster.txt b/keyvalues/scripts/weapons/mp_turretweapon_blaster.txt new file mode 100644 index 0000000..8dd5f35 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_turretweapon_blaster.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_smr" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_smr" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_turretweapon_plasma.txt b/keyvalues/scripts/weapons/mp_turretweapon_plasma.txt new file mode 100644 index 0000000..5f3c1e2 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_turretweapon_plasma.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_GenericBoltWithDrop_Player" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_GenericBoltWithDrop_NPC" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_turretweapon_sentry.txt b/keyvalues/scripts/weapons/mp_turretweapon_sentry.txt new file mode 100644 index 0000000..fa355f8 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_turretweapon_sentry.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_xo16" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_xo16" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_alternator_smg.txt b/keyvalues/scripts/weapons/mp_weapon_alternator_smg.txt index bba1047..14108e0 100644 --- a/keyvalues/scripts/weapons/mp_weapon_alternator_smg.txt +++ b/keyvalues/scripts/weapons/mp_weapon_alternator_smg.txt @@ -1,4 +1,5 @@ WeaponData { "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_alternator_smg" -} + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_alternator_smg" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_arc_launcher.txt b/keyvalues/scripts/weapons/mp_weapon_arc_launcher.txt new file mode 100644 index 0000000..7780af4 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_weapon_arc_launcher.txt @@ -0,0 +1,4 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_arc_launcher" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_arena1.txt b/keyvalues/scripts/weapons/mp_weapon_arena1.txt new file mode 100644 index 0000000..5f3c1e2 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_weapon_arena1.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_GenericBoltWithDrop_Player" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_GenericBoltWithDrop_NPC" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_arena2.txt b/keyvalues/scripts/weapons/mp_weapon_arena2.txt new file mode 100644 index 0000000..5f3c1e2 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_weapon_arena2.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_GenericBoltWithDrop_Player" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_GenericBoltWithDrop_NPC" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_autopistol.txt b/keyvalues/scripts/weapons/mp_weapon_autopistol.txt index de40cb1..28d3374 100644 --- a/keyvalues/scripts/weapons/mp_weapon_autopistol.txt +++ b/keyvalues/scripts/weapons/mp_weapon_autopistol.txt @@ -1,4 +1,5 @@ WeaponData { - "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_generic" -} + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_car.txt b/keyvalues/scripts/weapons/mp_weapon_car.txt index de40cb1..28d3374 100644 --- a/keyvalues/scripts/weapons/mp_weapon_car.txt +++ b/keyvalues/scripts/weapons/mp_weapon_car.txt @@ -1,4 +1,5 @@ WeaponData { - "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_generic" -} + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_defender.txt b/keyvalues/scripts/weapons/mp_weapon_defender.txt index 4767503..8facbb4 100644 --- a/keyvalues/scripts/weapons/mp_weapon_defender.txt +++ b/keyvalues/scripts/weapons/mp_weapon_defender.txt @@ -1,4 +1,5 @@ WeaponData { "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_defender" -} + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_defender" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_dmr.txt b/keyvalues/scripts/weapons/mp_weapon_dmr.txt index de40cb1..3eded86 100644 --- a/keyvalues/scripts/weapons/mp_weapon_dmr.txt +++ b/keyvalues/scripts/weapons/mp_weapon_dmr.txt @@ -1,4 +1,5 @@ WeaponData { - "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_generic" -} + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_doubletake.txt b/keyvalues/scripts/weapons/mp_weapon_doubletake.txt index cf5c2bc..1a645e7 100644 --- a/keyvalues/scripts/weapons/mp_weapon_doubletake.txt +++ b/keyvalues/scripts/weapons/mp_weapon_doubletake.txt @@ -1,4 +1,5 @@ WeaponData { "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_doubletake" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_doubletake" } \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_dronebeam.txt b/keyvalues/scripts/weapons/mp_weapon_dronebeam.txt new file mode 100644 index 0000000..16e1396 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_weapon_dronebeam.txt @@ -0,0 +1,4 @@ +WeaponData +{ + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_DroneBeam" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_droneplasma.txt b/keyvalues/scripts/weapons/mp_weapon_droneplasma.txt new file mode 100644 index 0000000..2152f19 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_weapon_droneplasma.txt @@ -0,0 +1,4 @@ +WeaponData +{ + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_DronePlasma" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_dronerocket.txt b/keyvalues/scripts/weapons/mp_weapon_dronerocket.txt new file mode 100644 index 0000000..1768ac8 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_weapon_dronerocket.txt @@ -0,0 +1,4 @@ +WeaponData +{ + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_dronerocket" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_engineer_combat_drone.txt b/keyvalues/scripts/weapons/mp_weapon_engineer_combat_drone.txt new file mode 100644 index 0000000..0611993 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_weapon_engineer_combat_drone.txt @@ -0,0 +1,4 @@ +WeaponData +{ + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_engineer_combat_drone" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_engineer_turret.txt b/keyvalues/scripts/weapons/mp_weapon_engineer_turret.txt new file mode 100644 index 0000000..28d3374 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_weapon_engineer_turret.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_epg.txt b/keyvalues/scripts/weapons/mp_weapon_epg.txt index c7d0c3e..5f3c1e2 100644 --- a/keyvalues/scripts/weapons/mp_weapon_epg.txt +++ b/keyvalues/scripts/weapons/mp_weapon_epg.txt @@ -1,4 +1,5 @@ WeaponData { "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_GenericBoltWithDrop_Player" -} + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_GenericBoltWithDrop_NPC" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_esaw.txt b/keyvalues/scripts/weapons/mp_weapon_esaw.txt index a3b314a..fbe33aa 100644 --- a/keyvalues/scripts/weapons/mp_weapon_esaw.txt +++ b/keyvalues/scripts/weapons/mp_weapon_esaw.txt @@ -1,4 +1,5 @@ WeaponData { "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_lmg" -} + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_g2.txt b/keyvalues/scripts/weapons/mp_weapon_g2.txt index de40cb1..28d3374 100644 --- a/keyvalues/scripts/weapons/mp_weapon_g2.txt +++ b/keyvalues/scripts/weapons/mp_weapon_g2.txt @@ -1,4 +1,5 @@ WeaponData { - "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_generic" -} + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_gunship_launcher.txt b/keyvalues/scripts/weapons/mp_weapon_gunship_launcher.txt new file mode 100644 index 0000000..942989a --- /dev/null +++ b/keyvalues/scripts/weapons/mp_weapon_gunship_launcher.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_GunshipLauncher" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_GunshipLauncher" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_gunship_missile.txt b/keyvalues/scripts/weapons/mp_weapon_gunship_missile.txt new file mode 100644 index 0000000..876f864 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_weapon_gunship_missile.txt @@ -0,0 +1,4 @@ +WeaponData +{ + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_gunship_missile" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_hemlok.txt b/keyvalues/scripts/weapons/mp_weapon_hemlok.txt index de40cb1..28d3374 100644 --- a/keyvalues/scripts/weapons/mp_weapon_hemlok.txt +++ b/keyvalues/scripts/weapons/mp_weapon_hemlok.txt @@ -1,4 +1,5 @@ WeaponData { - "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_generic" -} + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_hemlok_smg.txt b/keyvalues/scripts/weapons/mp_weapon_hemlok_smg.txt index de40cb1..28d3374 100644 --- a/keyvalues/scripts/weapons/mp_weapon_hemlok_smg.txt +++ b/keyvalues/scripts/weapons/mp_weapon_hemlok_smg.txt @@ -1,4 +1,5 @@ WeaponData { - "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_generic" -} + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_lmg.txt b/keyvalues/scripts/weapons/mp_weapon_lmg.txt index a3b314a..fbe33aa 100644 --- a/keyvalues/scripts/weapons/mp_weapon_lmg.txt +++ b/keyvalues/scripts/weapons/mp_weapon_lmg.txt @@ -1,4 +1,5 @@ WeaponData { "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_lmg" -} + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_lstar.txt b/keyvalues/scripts/weapons/mp_weapon_lstar.txt index eeed03a..856c5ac 100644 --- a/keyvalues/scripts/weapons/mp_weapon_lstar.txt +++ b/keyvalues/scripts/weapons/mp_weapon_lstar.txt @@ -1,4 +1,5 @@ WeaponData { "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_lstar" -} + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_lstar" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_mastiff.txt b/keyvalues/scripts/weapons/mp_weapon_mastiff.txt index d10a308..86a349a 100644 --- a/keyvalues/scripts/weapons/mp_weapon_mastiff.txt +++ b/keyvalues/scripts/weapons/mp_weapon_mastiff.txt @@ -1,4 +1,5 @@ WeaponData { - "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_mastiff" -} + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_mastiff" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_mastiff" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_mega_turret.txt b/keyvalues/scripts/weapons/mp_weapon_mega_turret.txt new file mode 100644 index 0000000..b5ea86c --- /dev/null +++ b/keyvalues/scripts/weapons/mp_weapon_mega_turret.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_mega_turret" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_mega_turret" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_mgl.txt b/keyvalues/scripts/weapons/mp_weapon_mgl.txt index 7e031d5..ee59b2c 100644 --- a/keyvalues/scripts/weapons/mp_weapon_mgl.txt +++ b/keyvalues/scripts/weapons/mp_weapon_mgl.txt @@ -1,4 +1,5 @@ WeaponData { "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_mgl" -} + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_mgl" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_npc_rocket_launcher.txt b/keyvalues/scripts/weapons/mp_weapon_npc_rocket_launcher.txt new file mode 100644 index 0000000..38c0695 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_weapon_npc_rocket_launcher.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_npc_rocket_launcher" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_npc_rocket_launcher" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_pulse_lmg.txt b/keyvalues/scripts/weapons/mp_weapon_pulse_lmg.txt index c7d0c3e..5f3c1e2 100644 --- a/keyvalues/scripts/weapons/mp_weapon_pulse_lmg.txt +++ b/keyvalues/scripts/weapons/mp_weapon_pulse_lmg.txt @@ -1,4 +1,5 @@ WeaponData { "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_GenericBoltWithDrop_Player" -} + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_GenericBoltWithDrop_NPC" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_r97.txt b/keyvalues/scripts/weapons/mp_weapon_r97.txt index de40cb1..28d3374 100644 --- a/keyvalues/scripts/weapons/mp_weapon_r97.txt +++ b/keyvalues/scripts/weapons/mp_weapon_r97.txt @@ -1,4 +1,5 @@ WeaponData { - "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_generic" -} + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_rocket_launcher.txt b/keyvalues/scripts/weapons/mp_weapon_rocket_launcher.txt index 888da59..2b7a0a5 100644 --- a/keyvalues/scripts/weapons/mp_weapon_rocket_launcher.txt +++ b/keyvalues/scripts/weapons/mp_weapon_rocket_launcher.txt @@ -1,4 +1,5 @@ WeaponData { "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_rocket_launcher" -} + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_rocket_launcher" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_rspn101.txt b/keyvalues/scripts/weapons/mp_weapon_rspn101.txt index de40cb1..28d3374 100644 --- a/keyvalues/scripts/weapons/mp_weapon_rspn101.txt +++ b/keyvalues/scripts/weapons/mp_weapon_rspn101.txt @@ -1,4 +1,5 @@ WeaponData { - "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_generic" -} + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_rspn101_og.txt b/keyvalues/scripts/weapons/mp_weapon_rspn101_og.txt index de40cb1..28d3374 100644 --- a/keyvalues/scripts/weapons/mp_weapon_rspn101_og.txt +++ b/keyvalues/scripts/weapons/mp_weapon_rspn101_og.txt @@ -1,4 +1,5 @@ WeaponData { - "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_generic" -} + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_semipistol.txt b/keyvalues/scripts/weapons/mp_weapon_semipistol.txt index de40cb1..28d3374 100644 --- a/keyvalues/scripts/weapons/mp_weapon_semipistol.txt +++ b/keyvalues/scripts/weapons/mp_weapon_semipistol.txt @@ -1,4 +1,5 @@ WeaponData { - "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_generic" -} + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_shotgun.txt b/keyvalues/scripts/weapons/mp_weapon_shotgun.txt index a957afc..5946c12 100644 --- a/keyvalues/scripts/weapons/mp_weapon_shotgun.txt +++ b/keyvalues/scripts/weapons/mp_weapon_shotgun.txt @@ -1,4 +1,5 @@ WeaponData { "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_shotgun" -} + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_shotgun" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_shotgun_doublebarrel.txt b/keyvalues/scripts/weapons/mp_weapon_shotgun_doublebarrel.txt index 400dda0..17207a3 100644 --- a/keyvalues/scripts/weapons/mp_weapon_shotgun_doublebarrel.txt +++ b/keyvalues/scripts/weapons/mp_weapon_shotgun_doublebarrel.txt @@ -1,4 +1,5 @@ WeaponData { "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_shotgun_doublebarrel" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_shotgun_doublebarrel" } \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_shotgun_pistol.txt b/keyvalues/scripts/weapons/mp_weapon_shotgun_pistol.txt index e668657..d33e751 100644 --- a/keyvalues/scripts/weapons/mp_weapon_shotgun_pistol.txt +++ b/keyvalues/scripts/weapons/mp_weapon_shotgun_pistol.txt @@ -1,4 +1,5 @@ WeaponData { "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_shotgun_pistol" -} + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_shotgun_pistol" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_smart_pistol.txt b/keyvalues/scripts/weapons/mp_weapon_smart_pistol.txt index 3b9597f..e649b9e 100644 --- a/keyvalues/scripts/weapons/mp_weapon_smart_pistol.txt +++ b/keyvalues/scripts/weapons/mp_weapon_smart_pistol.txt @@ -1,4 +1,5 @@ WeaponData { "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_smart_pistol" -} + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_smr.txt b/keyvalues/scripts/weapons/mp_weapon_smr.txt index a6bd090..8dd5f35 100644 --- a/keyvalues/scripts/weapons/mp_weapon_smr.txt +++ b/keyvalues/scripts/weapons/mp_weapon_smr.txt @@ -1,4 +1,5 @@ WeaponData { "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_smr" -} + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_smr" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_sniper.txt b/keyvalues/scripts/weapons/mp_weapon_sniper.txt index dcc84bc..f5e5395 100644 --- a/keyvalues/scripts/weapons/mp_weapon_sniper.txt +++ b/keyvalues/scripts/weapons/mp_weapon_sniper.txt @@ -1,4 +1,5 @@ WeaponData { "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_sniper" -} + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_sniper" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_softball.txt b/keyvalues/scripts/weapons/mp_weapon_softball.txt index a75389b..7ce7c42 100644 --- a/keyvalues/scripts/weapons/mp_weapon_softball.txt +++ b/keyvalues/scripts/weapons/mp_weapon_softball.txt @@ -1,4 +1,5 @@ WeaponData { "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_softball" -} + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_softball" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_spectre_spawner.txt b/keyvalues/scripts/weapons/mp_weapon_spectre_spawner.txt new file mode 100644 index 0000000..28d3374 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_weapon_spectre_spawner.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_super_spectre.txt b/keyvalues/scripts/weapons/mp_weapon_super_spectre.txt new file mode 100644 index 0000000..f76c721 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_weapon_super_spectre.txt @@ -0,0 +1,4 @@ +WeaponData +{ + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_SuperSpectre" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_turretlaser_mega.txt b/keyvalues/scripts/weapons/mp_weapon_turretlaser_mega.txt new file mode 100644 index 0000000..968cc56 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_weapon_turretlaser_mega.txt @@ -0,0 +1,4 @@ +WeaponData +{ + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_TurretLaser_Mega" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_turretlaser_mega_fort_war.txt b/keyvalues/scripts/weapons/mp_weapon_turretlaser_mega_fort_war.txt new file mode 100644 index 0000000..968cc56 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_weapon_turretlaser_mega_fort_war.txt @@ -0,0 +1,4 @@ +WeaponData +{ + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_TurretLaser_Mega" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_turretplasma.txt b/keyvalues/scripts/weapons/mp_weapon_turretplasma.txt new file mode 100644 index 0000000..39eeb4e --- /dev/null +++ b/keyvalues/scripts/weapons/mp_weapon_turretplasma.txt @@ -0,0 +1,4 @@ +WeaponData +{ + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_TurretPlasma" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_turretplasma_mega.txt b/keyvalues/scripts/weapons/mp_weapon_turretplasma_mega.txt new file mode 100644 index 0000000..c751bd6 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_weapon_turretplasma_mega.txt @@ -0,0 +1,4 @@ +WeaponData +{ + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_TurretPlasma_Mega" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_vinson.txt b/keyvalues/scripts/weapons/mp_weapon_vinson.txt index de40cb1..28d3374 100644 --- a/keyvalues/scripts/weapons/mp_weapon_vinson.txt +++ b/keyvalues/scripts/weapons/mp_weapon_vinson.txt @@ -1,4 +1,5 @@ WeaponData { - "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_generic" -} + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_wingman.txt b/keyvalues/scripts/weapons/mp_weapon_wingman.txt index de40cb1..28d3374 100644 --- a/keyvalues/scripts/weapons/mp_weapon_wingman.txt +++ b/keyvalues/scripts/weapons/mp_weapon_wingman.txt @@ -1,4 +1,5 @@ WeaponData { - "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_generic" -} + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_wingman_n.txt b/keyvalues/scripts/weapons/mp_weapon_wingman_n.txt index dcc84bc..4391b96 100644 --- a/keyvalues/scripts/weapons/mp_weapon_wingman_n.txt +++ b/keyvalues/scripts/weapons/mp_weapon_wingman_n.txt @@ -1,4 +1,5 @@ WeaponData { "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_sniper" -} + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_yh803.txt b/keyvalues/scripts/weapons/mp_weapon_yh803.txt new file mode 100644 index 0000000..8d1380e --- /dev/null +++ b/keyvalues/scripts/weapons/mp_weapon_yh803.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_yh803Rocket" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_yh803_bullet.txt b/keyvalues/scripts/weapons/mp_weapon_yh803_bullet.txt new file mode 100644 index 0000000..4b81d33 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_weapon_yh803_bullet.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_yh803" +} \ No newline at end of file diff --git a/keyvalues/scripts/weapons/mp_weapon_yh803_bullet_overcharged.txt b/keyvalues/scripts/weapons/mp_weapon_yh803_bullet_overcharged.txt new file mode 100644 index 0000000..28d3374 --- /dev/null +++ b/keyvalues/scripts/weapons/mp_weapon_yh803_bullet_overcharged.txt @@ -0,0 +1,5 @@ +WeaponData +{ + "OnWeaponPrimaryAttack" "WeaponFireCallbacks_OnWeaponPrimaryAttack" + "OnWeaponNpcPrimaryAttack" "WeaponFireCallbacks_OnWeaponNpcPrimaryAttack" +} \ No newline at end of file diff --git a/mod.json b/mod.json index d8e3409..a7a801d 100644 --- a/mod.json +++ b/mod.json @@ -7,7 +7,11 @@ "Scripts": [ { "Path": "weaponFireCallbacks.gnut", - "RunOn": "SERVER" + "RunOn": "CLIENT || SERVER" + }, + { + "Path": "weaponFireReroutes.gnut", + "RunOn": "CLIENT || SERVER" } ] } diff --git a/mod/scripts/vscripts/weaponFireCallbacks.gnut b/mod/scripts/vscripts/weaponFireCallbacks.gnut index 562fbc0..51ba017 100644 --- a/mod/scripts/vscripts/weaponFireCallbacks.gnut +++ b/mod/scripts/vscripts/weaponFireCallbacks.gnut @@ -3,194 +3,151 @@ untyped globalize_all_functions struct { - table < entity, array< void functionref(WeaponPrimaryAttackParams attackParams) > > weaponCallbacks + table < entity, array< void functionref( entity weapon, WeaponPrimaryAttackParams attackParams, var ammoUsed ) > > weaponCallbacks + table < string, array< void functionref( entity weapon, WeaponPrimaryAttackParams attackParams, var ammoUsed ) > > weaponClassCallbacks + table < string, array< void functionref( entity weapon, WeaponPrimaryAttackParams attackParams, var ammoUsed ) > > ownerClassCallbacks + bool clearThreadRunning = false // Only used on client } file -void function AddCallback_OnWeaponFired(entity weapon, void functionref(WeaponPrimaryAttackParams attackParams) callback){ - if(weapon in file.weaponCallbacks){ - file.weaponCallbacks[weapon].append(callback) - }else{ +void function WeaponFireCallbacks_AddCallbackOnWeaponFired( entity weapon, void functionref( entity weapon, WeaponPrimaryAttackParams attackParams, var ammoUsed ) callback ) +{ + if ( !IsValid( weapon ) ) + return + + if ( weapon in file.weaponCallbacks ) + file.weaponCallbacks[weapon].append( callback ) + else file.weaponCallbacks[weapon] <- [callback] - } - AddEntityDestroyedCallback(weapon, HandleWeaponDestroyed) + + #if SERVER + AddEntityDestroyedCallback( weapon, WeaponFireCallbacks_HandleWeaponDestroyed ) + #else + // Per-entity destroyed callbacks don't exist on client. Client needs to clear invalid keys periodically. + if ( !file.clearThreadRunning ) + thread ClearInvalidWeaponsThread() + #endif } -function HandleWeaponDestroyed(weapon){ - entity w = expect entity(weapon) - if(w in file.weaponCallbacks){ +void function WeaponFireCallbacks_AddCallbackOnWeaponClassFired( string weaponClass, void functionref( entity weapon, WeaponPrimaryAttackParams attackParams, var ammoUsed ) callback ) +{ + if ( weaponClass in file.weaponClassCallbacks ) + file.weaponClassCallbacks[weaponClass].append( callback ) + else + file.weaponClassCallbacks[weaponClass] <- [callback] +} + +void function WeaponFireCallbacks_RemoveCallbackOnWeaponClassFired( string weaponClass, void functionref( entity weapon, WeaponPrimaryAttackParams attackParams, var ammoUsed ) callback ) +{ + if ( weaponClass in file.weaponClassCallbacks ) + { + file.weaponClassCallbacks[weaponClass].fastremovebyvalue( callback ) + if ( file.weaponClassCallbacks[weaponClass].len() == 0 ) + delete file.weaponClassCallbacks[weaponClass] + } +} + +void function WeaponFireCallbacks_AddCallbackOnOwnerClassFired( string ownerClass, void functionref( entity weapon, WeaponPrimaryAttackParams attackParams, var ammoUsed ) callback ) +{ + if ( ownerClass in file.ownerClassCallbacks ) + file.ownerClassCallbacks[ownerClass].append( callback ) + else + file.ownerClassCallbacks[ownerClass] <- [callback] +} + +void function WeaponFireCallbacks_RemoveCallbackOnOwnerClassFired( string ownerClass, void functionref( entity weapon, WeaponPrimaryAttackParams attackParams, var ammoUsed ) callback ) +{ + if ( ownerClass in file.ownerClassCallbacks ) + { + file.ownerClassCallbacks[ownerClass].fastremovebyvalue( callback ) + if ( file.ownerClassCallbacks[ownerClass].len() == 0 ) + delete file.ownerClassCallbacks[ownerClass] + } +} + +function WeaponFireCallbacks_HandleWeaponDestroyed( weapon ) +{ + entity w = expect entity( weapon ) + if ( w in file.weaponCallbacks ) delete file.weaponCallbacks[w] - } } -void function OnWeaponFired(entity weapon, WeaponPrimaryAttackParams attackParams){ - if(weapon in file.weaponCallbacks){ - array< void functionref(WeaponPrimaryAttackParams attackParams) > callbacks = file.weaponCallbacks[weapon] - foreach(callback in callbacks){ - callback(attackParams) +#if CLIENT +void function ClearInvalidWeaponsThread() +{ + file.clearThreadRunning = true + + while( file.weaponCallbacks.len() > 0 ) + { + array< entity > invalidList = [] + + foreach( key, callback in file.weaponCallbacks ) + { + if ( !IsValid( key ) ) + invalidList.append( key ) } + + foreach( w in invalidList ) + delete file.weaponCallbacks[w] + + wait 1.0 // Some arbitrary number that isn't WaitFrame(), don't need to run this very often } + + file.clearThreadRunning = false } +#endif - -var function WeaponFireCallbacks_OnWeaponPrimaryAttack_alternator_smg( entity weapon, WeaponPrimaryAttackParams attackParams ) +void function WeaponFireCallbacks_OnWeaponFired( entity weapon, WeaponPrimaryAttackParams attackParams, var ammoUsed ) { - var result = OnWeaponPrimaryAttack_alternator_smg(weapon, attackParams) - if(result == 0){ - return 0 + if ( weapon in file.weaponCallbacks ) + { + #if CLIENT + ClearInvalidWeapons() + #endif + + array< void functionref( entity weapon, WeaponPrimaryAttackParams attackParams, var ammoUsed ) > callbacks = file.weaponCallbacks[weapon] + foreach ( callback in callbacks ) + callback( weapon, attackParams, ammoUsed ) + } + + string weaponClass = weapon.GetWeaponClassName() + if ( weaponClass in file.weaponClassCallbacks ) + { + array< void functionref( entity weapon, WeaponPrimaryAttackParams attackParams, var ammoUsed ) > callbacks = file.weaponClassCallbacks[weaponClass] + foreach ( callback in callbacks ) + callback( weapon, attackParams, ammoUsed ) + } + + entity owner = weapon.GetWeaponOwner() + if ( !IsValid( owner ) ) + return + + string ownerClass = owner.GetClassName() + if ( ownerClass in file.ownerClassCallbacks ) + { + array< void functionref( entity weapon, WeaponPrimaryAttackParams attackParams, var ammoUsed ) > callbacks = file.ownerClassCallbacks[ownerClass] + foreach ( callback in callbacks ) + callback( weapon, attackParams, ammoUsed ) } - OnWeaponFired(weapon, attackParams) - return result } -var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_defender( entity weapon, WeaponPrimaryAttackParams attackParams ) +var function WeaponFireCallbacks_OnWeaponPrimaryAttack( entity weapon, WeaponPrimaryAttackParams attackParams ) { - var result = OnWeaponPrimaryAttack_weapon_defender(weapon, attackParams) - if(result == 0){ + weapon.EmitWeaponNpcSound( LOUD_WEAPON_AI_SOUND_RADIUS_MP, 0.2 ) + var result = weapon.FireWeaponBullet( attackParams.pos, attackParams.dir, 1, weapon.GetWeaponDamageFlags() ) + if ( result == 0 ) return 0 - } - OnWeaponFired(weapon, attackParams) + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) return result } -var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_doubletake( entity weapon, WeaponPrimaryAttackParams attackParams ) +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack( entity weapon, WeaponPrimaryAttackParams attackParams ) { - var result = OnWeaponPrimaryAttack_weapon_doubletake(weapon, attackParams) - if(result == 0){ + weapon.EmitWeaponNpcSound( LOUD_WEAPON_AI_SOUND_RADIUS_MP, 0.2 ) + var result = weapon.FireWeaponBullet( attackParams.pos, attackParams.dir, 1, weapon.GetWeaponDamageFlags() ) + if ( result == 0 ) return 0 - } - OnWeaponFired(weapon, attackParams) + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) return result } - -var function WeaponFireCallbacks_OnWeaponPrimaryAttack_lmg( entity weapon, WeaponPrimaryAttackParams attackParams ) -{ - var result = OnWeaponPrimaryAttack_lmg(weapon, attackParams) - if(result == 0){ - return 0 - } - OnWeaponFired(weapon, attackParams) - return result -} - -var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_lstar( entity weapon, WeaponPrimaryAttackParams attackParams ) -{ - var result = OnWeaponPrimaryAttack_weapon_lstar(weapon, attackParams) - if(result == 0){ - return 0 - } - OnWeaponFired(weapon, attackParams) - return result -} - -var function WeaponFireCallbacks_OnWeaponPrimaryAttack_mastiff( entity weapon, WeaponPrimaryAttackParams attackParams ) -{ - var result = OnWeaponPrimaryAttack_weapon_mastiff(weapon, attackParams) - if(result == 0){ - return 0 - } - OnWeaponFired(weapon, attackParams) - return result -} - -var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_mgl( entity weapon, WeaponPrimaryAttackParams attackParams ) -{ - var result = OnWeaponPrimaryAttack_weapon_mgl(weapon, attackParams) - if(result == 0){ - return 0 - } - OnWeaponFired(weapon, attackParams) - return result -} - -var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_rocket_launcher( entity weapon, WeaponPrimaryAttackParams attackParams ) -{ - var result = OnWeaponPrimaryAttack_weapon_rocket_launcher(weapon, attackParams) - if(result == 0){ - return 0 - } - OnWeaponFired(weapon, attackParams) - return result -} - -var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_shotgun( entity weapon, WeaponPrimaryAttackParams attackParams ) -{ - var result = OnWeaponPrimaryAttack_weapon_shotgun(weapon, attackParams) - if(result == 0){ - return 0 - } - OnWeaponFired(weapon, attackParams) - return result -} - -var function WeaponFireCallbacks_OnWeaponPrimaryAttack_shotgun_doublebarrel( entity weapon, WeaponPrimaryAttackParams attackParams ) -{ - var result = OnWeaponPrimaryAttack_shotgun_doublebarrel(weapon, attackParams) - if(result == 0){ - return 0 - } - OnWeaponFired(weapon, attackParams) - return result -} - -var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_shotgun_pistol( entity weapon, WeaponPrimaryAttackParams attackParams ) -{ - var result = OnWeaponPrimaryAttack_weapon_shotgun_pistol(weapon, attackParams) - if(result == 0){ - return 0 - } - OnWeaponFired(weapon, attackParams) - return result -} - -var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_smart_pistol( entity weapon, WeaponPrimaryAttackParams attackParams ) -{ - var result = OnWeaponPrimaryAttack_weapon_smart_pistol(weapon, attackParams) - if(result == 0){ - return 0 - } - OnWeaponFired(weapon, attackParams) - return result -} - -var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_smr( entity weapon, WeaponPrimaryAttackParams attackParams ) -{ - var result = OnWeaponPrimaryAttack_weapon_smr(weapon, attackParams) - if(result == 0){ - return 0 - } - OnWeaponFired(weapon, attackParams) - return result -} - -var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_sniper( entity weapon, WeaponPrimaryAttackParams attackParams ) -{ - var result = OnWeaponPrimaryAttack_weapon_sniper(weapon, attackParams) - if(result == 0){ - return 0 - } - OnWeaponFired(weapon, attackParams) - return result -} - -var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_softball( entity weapon, WeaponPrimaryAttackParams attackParams ) -{ - var result = OnWeaponPrimaryAttack_weapon_softball(weapon, attackParams) - if(result == 0){ - return 0 - } - OnWeaponFired(weapon, attackParams) - return result -} - -var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_generic( entity weapon, WeaponPrimaryAttackParams attackParams ){ - OnWeaponFired(weapon, attackParams) -} - -var function WeaponFireCallbacks_OnWeaponPrimaryAttack_GenericBoltWithDrop_Player( entity weapon, WeaponPrimaryAttackParams attackParams ){ - var result = OnWeaponPrimaryAttack_GenericBoltWithDrop_Player(weapon, attackParams) - if(result == 0){ - return 0 - } - OnWeaponFired(weapon, attackParams) - return result -} \ No newline at end of file +#endif \ No newline at end of file diff --git a/mod/scripts/vscripts/weaponFireReroutes.gnut b/mod/scripts/vscripts/weaponFireReroutes.gnut new file mode 100644 index 0000000..123b2ba --- /dev/null +++ b/mod/scripts/vscripts/weaponFireReroutes.gnut @@ -0,0 +1,1226 @@ +globalize_all_functions + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_ammo_swap( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_ammo_swap( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_ammo_swap( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_ammo_swap( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanability_basic_block( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanability_basic_block( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanability_smoke( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanability_smoke( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_gun_shield( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_gun_shield( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_gun_shield( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_gun_shield( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_TitanHover( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_TitanHover( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_NPC_OnWeaponPrimaryAttack_TitanHover( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = NPC_OnWeaponPrimaryAttack_TitanHover( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_laser_trip( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanweapon_laser_trip( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_titanweapon_laser_trip( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNPCPrimaryAttack_titanweapon_laser_trip( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_nuke_eject( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_nuke_eject( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_particle_wall( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_particle_wall( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_particle_wall( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_particle_wall( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanability_phase_dash( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanability_phase_dash( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_titanability_phase_dash( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNPCPrimaryAttack_titanability_phase_dash( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_power_shot( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_power_shot( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_power_shot( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_power_shot( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanability_rearm( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanability_rearm( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_titanability_rearm( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNPCPrimaryAttack_titanability_rearm( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_rocketeer_ammo_swap( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_rocketeer_ammo_swap( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_rocketeer_ammo_swap( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_rocketeer_ammo_swap( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_slow_trap( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanweapon_slow_trap( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_titanweapon_slow_trap( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNPCPrimaryAttack_titanweapon_slow_trap( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanability_smoke( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_titanability_smoke( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanability_sonar_pulse( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanability_sonar_pulse( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_titanability_sonar_pulse( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNPCPrimaryAttack_titanability_sonar_pulse( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_tether_trap( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanweapon_tether_trap( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_tether_trap( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_titanweapon_tether_trap( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_TimeShift( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_TimeShift( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_AmpCore( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_AmpCore( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_AmpCore( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNPCPrimaryAttack_AmpCore( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titancore_flame_wave( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titancore_flame_wave( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_salvo_core( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_salvo_core( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_salvo_core( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_salvo_core( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_arc_wave( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanweapon_arc_wave( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_arc_wave( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_titanweapon_arc_wave( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_dumbfire_rockets( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanweapon_dumbfire_rockets( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_titanweapon_dumbfire_rockets( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNPCPrimaryAttack_titanweapon_dumbfire_rockets( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_FlameWall( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_FlameWall( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_FlameWall( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_FlameWall( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_flightcore_rockets( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanweapon_flightcore_rockets( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_flightcore_rockets( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_titanweapon_flightcore_rockets( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_heat_shield( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanweapon_heat_shield( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_heat_shield( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_titanweapon_heat_shield( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_homing_rockets( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanweapon_homing_rockets( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_homing_rockets( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_titanweapon_homing_rockets( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_laser_lite( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanweapon_laser_lite( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_titanweapon_laser_lite( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNPCPrimaryAttack_titanweapon_laser_lite( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_leadwall( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanweapon_leadwall( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_leadwall( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_titanweapon_leadwall( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_Meteor( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_Meteor( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_Meteor( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_Meteor( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_salvo_rockets( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanweapon_salvo_rockets( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_particle_accelerator( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanweapon_particle_accelerator( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_particle_accelerator( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_titanweapon_particle_accelerator( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_predator_cannon( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanweapon_predator_cannon( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_predator_cannon( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_titanweapon_predator_cannon( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_TitanWeapon_Rocketeer_RocketStream( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_TitanWeapon_Rocketeer_RocketStream( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_TitanWeapon_Rocketeer_RocketStream( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_TitanWeapon_Rocketeer_RocketStream( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_titanweapon_salvo_rockets( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNPCPrimaryAttack_titanweapon_salvo_rockets( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_shoulder_rockets( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanweapon_shoulder_rockets( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_shoulder_rockets( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_titanweapon_shoulder_rockets( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_sniper( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanweapon_sniper( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_sniper( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_titanweapon_sniper( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_40mm( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanweapon_40mm( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_40mm( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_titanweapon_40mm( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_stun_laser( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanweapon_stun_laser( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_titanweapon_stun_laser( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNPCPrimaryAttack_titanweapon_stun_laser( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_tracker_rockets( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanweapon_tracker_rockets( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNPCPrimaryAttack_titanweapon_tracker_rockets( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNPCPrimaryAttack_titanweapon_tracker_rockets( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_vortex_shield( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanweapon_vortex_shield( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_vortex_shield( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_titanweapon_vortex_shield( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_smr( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_weapon_smr( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_smr( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_weapon_smr( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_GenericBoltWithDrop_Player( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_GenericBoltWithDrop_Player( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_GenericBoltWithDrop_NPC( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_GenericBoltWithDrop_NPC( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_titanweapon_xo16( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_titanweapon_xo16( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_titanweapon_xo16( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_titanweapon_xo16( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_alternator_smg( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_alternator_smg( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_alternator_smg( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_alternator_smg( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_arc_launcher( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_weapon_arc_launcher( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_defender( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_weapon_defender( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_defender( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_weapon_defender( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_doubletake( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_weapon_doubletake( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_doubletake( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_weapon_doubletake( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_DroneBeam( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_DroneBeam( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_DronePlasma( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_DronePlasma( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_dronerocket( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_dronerocket( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_engineer_combat_drone( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_engineer_combat_drone( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_lmg( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_lmg( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_GunshipLauncher( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_GunshipLauncher( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_GunshipLauncher( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_GunshipLauncher( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_gunship_missile( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_gunship_missile( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_lstar( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_weapon_lstar( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_lstar( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_weapon_lstar( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_mastiff( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_weapon_mastiff( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_mastiff( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_weapon_mastiff( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_mega_turret( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_weapon_mega_turret( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_mega_turret( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_weapon_mega_turret( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_mgl( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_weapon_mgl( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_mgl( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_weapon_mgl( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_npc_rocket_launcher( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_weapon_npc_rocket_launcher( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_npc_rocket_launcher( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_weapon_npc_rocket_launcher( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_rocket_launcher( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_weapon_rocket_launcher( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_rocket_launcher( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_weapon_rocket_launcher( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_shotgun( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_weapon_shotgun( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_shotgun( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_weapon_shotgun( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_shotgun_doublebarrel( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_shotgun_doublebarrel( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_shotgun_doublebarrel( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_shotgun_doublebarrel( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_shotgun_pistol( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_weapon_shotgun_pistol( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_shotgun_pistol( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_weapon_shotgun_pistol( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_smart_pistol( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_weapon_smart_pistol( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_sniper( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_weapon_sniper( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_sniper( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_weapon_sniper( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +var function WeaponFireCallbacks_OnWeaponPrimaryAttack_weapon_softball( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponPrimaryAttack_weapon_softball( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_softball( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_weapon_softball( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_SuperSpectre( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_SuperSpectre( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_TurretLaser_Mega( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_TurretLaser_Mega( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_TurretPlasma( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_TurretPlasma( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_TurretPlasma_Mega( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_TurretPlasma_Mega( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_yh803Rocket( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_yh803Rocket( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif + +#if SERVER +var function WeaponFireCallbacks_OnWeaponNpcPrimaryAttack_weapon_yh803( entity weapon, WeaponPrimaryAttackParams attackParams ) +{ + var result = OnWeaponNpcPrimaryAttack_weapon_yh803( weapon, attackParams ) + if ( result == 0 ) + return 0 + WeaponFireCallbacks_OnWeaponFired( weapon, attackParams, result ) + return result +} +#endif +