1 #using scripts\codescripts\struct;
3 #using scripts\shared\callbacks_shared;
4 #using scripts\shared\clientfield_shared;
5 #using scripts\shared\system_shared;
6 #using scripts\shared\util_shared;
7 #using scripts\shared\weapons\_weaponobjects;
8 #using scripts\shared\postfx_shared;
10 #insert scripts\shared\shared.gsh;
11 #insert scripts\shared\version.gsh;
13 #define TASER_MINE_ZAP_COUNT 3
14 #define TASER_MINE_ZAP_CYCLE_COUNT 2
15 #define TASER_MINE_ZAP_PERIOD_SECONDS 0.25
17 #define PROXIMITY_GRENADE_DAMAGE_RADIUS_SQ 40000 // 200 * 200
18 #define PROXIMITY_GRENADE_POSTFX "pstfx_shock_charge"
20 #precache( "client_fx", "weapon/fx_prox_grenade_scan_blue" );
21 #precache( "client_fx", "weapon/fx_prox_grenade_wrn_grn" );
22 #precache( "client_fx", "weapon/fx_prox_grenade_scan_orng" );
23 #precache( "client_fx", "weapon/fx_prox_grenade_wrn_red" );
24 #precache( "client_fx", "weapon/fx_prox_grenade_impact_player_spwner" );
26 #namespace proximity_grenade;
32 level._effect[
"prox_grenade_friendly_default"] =
"weapon/fx_prox_grenade_scan_blue";
33 level._effect[
"prox_grenade_friendly_warning"] =
"weapon/fx_prox_grenade_wrn_grn";
35 level._effect[
"prox_grenade_enemy_default"] =
"weapon/fx_prox_grenade_scan_orng";
36 level._effect[
"prox_grenade_enemy_warning"] =
"weapon/fx_prox_grenade_wrn_red";
38 level._effect[
"prox_grenade_player_shock"] =
"weapon/fx_prox_grenade_impact_player_spwner";
47 if (
self isGrenadeDud() )
50 self.equipmentFriendFX = level._effect[
"prox_grenade_friendly_default"];
51 self.equipmentEnemyFX = level._effect[
"prox_grenade_enemy_default"];
52 self.equipmentTagFX =
"tag_fx";
59 if ( GetActiveLocalClients() > 1 )
62 weapon_proximity = GetWeapon(
"proximity_grenade" );
66 level waittill(
"explode", localClientNum, position, mod, weapon, owner_cent );
68 if ( weapon.rootWeapon != weapon_proximity )
73 localPlayer = GetLocalPlayer( localClientNum );
78 explosionRadius = weapon.explosionRadius;
80 if ( DistanceSquared( localPlayer.origin, position ) < explosionRadius * explosionRadius )
82 if ( isdefined( owner_cent ) )