1 #using scripts\codescripts\struct;
3 #using scripts\shared\clientfield_shared;
4 #using scripts\shared\fx_shared;
5 #using scripts\shared\system_shared;
6 #using scripts\shared\util_shared;
8 #insert scripts\shared\shared.gsh;
9 #insert scripts\shared\version.gsh;
11 #using scripts\mp\_util;
13 #precache( "client_fx", "killstreaks/fx_hrpy_single_light_red" );
15 #using_animtree( "mp_missile_drone" );
17 #namespace missile_drone;
23 level._effect[
"missile_drone_enemy_light"] =
"killstreaks/fx_hrpy_single_light_red";
24 level._effect[
"missile_drone_friendly_light"] =
"killstreaks/fx_hrpy_single_light_red";
32 self endon(
"entityshutdown" );
33 self endon(
"death" );
36 self UseAnimTree( #animtree );
37 self SetAnim( %o_drone_hunter_launch, 1.0, 0.0, 1.0 );
45 self thread
fx::blinky_light( localClientNum,
"tag_target", level._effect[
"missile_drone_friendly_light"], level._effect[
"missile_drone_enemy_light"] );
61 else if( newVal == 1 )
75 self notify(
"targetLost" );
79 if ( isdefined (
self.missile_drone_fx ) )
81 stopFX( localClientNum,
self.missile_drone_fx );
88 self endon(
"disconnect" );
89 self endon(
"targetLost" );
90 self endon(
"targetScanning" );
91 self endon(
"entityshutdown" );
92 self notify(
"targetAcquired" );
97 currentweapon = GetCurrentWeapon( localclientnum );
99 if ( currentweapon.name !=
"missile_drone" && currentweapon.name !=
"inventory_missile_drone" )
105 if ( IsADS( localclientnum ) || IsThrowingGrenade( localclientnum ) || IsMeleeing( localclientnum ) || IsOnTurret( localclientnum ) )
111 if ( GetWeaponAmmoClip( localclientnum, currentweapon ) <= 0 )
117 self.missile_drone_fx = PlayViewmodelFX( localClientNum, level._effect[
"missile_drone_enemy_light"],
"tag_target" );
121 playsound( localClientNum,
"fly_hunter_raise_plr",
self.origin );
131 self endon(
"disconnect" );
132 self endon(
"targetLost" );
133 self endon(
"targetAcquired" );
134 self notify(
"targetScanning" );
139 currentweapon = GetCurrentWeapon( localclientnum );
141 if ( currentweapon.name !=
"missile_drone" && currentweapon.name !=
"inventory_missile_drone" )