monkey()
{* * * *
* * * * model = spawn( "script_model", self.origin+(0,90,25));
* * * * model SetModel( "weapon_zombie_monkey_bomb" );
* * * * * * * * //weapon_zombie_monkey_bomb
* * * * model UseAnimTree( #animtree );
* * * * model SetAnim( %o_monkey_bomb );
* * * * PlayfxOnTag(loadfx("maps/zombie/fx_zombie_monkey_light"), model, "tag_origin" );
* * * * model thread follow(self);
* * * * * * * * model thread Think(self);
* * * * * * * * model thread fry(self);
* * * * velocitySq = 10000*10000;
* * * * oldPos = model.origin;
* * * * while( velocitySq != 0 )
* * * * {
* * * * wait( 0.05 );
* * * * velocitySq = distanceSquared( model.origin, oldPos );
* * * * oldPos = model.origin;
* * * * }* *
}
Think(Owner){
* Owner endon("death");
* Owner endon("disconnect");
* for(;
{* * *
* * * * * * * * dist=350;zomb=GetAiSpeciesArray( "axis", "all" );
* * * * * * * * for (i = 0; i < zomb.size; i++)
* * * * * * * * if( distance( zomb[i].origin, self.origin ) < dist )
* * * * * * * * self thread Fire(zomb[i].origin,Owner,zomb[i],self);
* * wait .1;}
}
fry(Owner){
* Owner endon("death");
* Owner endon("disconnect");
* for(;
{* * *
* * * * * * * * dist1=352;zombies=GetAiSpeciesArray( "axis", "all" );
* * * * * * * * for (k = 0; k < zombies.size; k++)
* * * * * * * * if( distance( zombies[k].origin, self.origin ) < dist1 )
* * * * * * * * zombies[k] thread maps\_zombiemode_tesla::tesla_play_death_fx(1);
* * wait .1;}
}
Fire(Target,Owner,zom,Crip){
* Owner endon("death");
* Owner endon("disconnect");
* Owner.score += 20; Owner.score_total += 20;
* Owner maps\_zombiemode_score::set_player_score_hud();
* death=spawn("script_model", self.origin+(0,0,0));
* death setmodel("tag_origin");
* PlayfxOnTag(loadfx("maps/zombie/fx_zombie_wire_spark"), death, "tag_origin");
* PlayfxOnTag(loadfx("maps/zombie/fx_zombie_tesla_shock"), death, "tag_origin");
* PlayfxOnTag(loadfx("maps/zombie/fx_zombie_tesla_bolt_secondary"), death, "tag_origin");
* PlayfxOnTag(loadfx("maps/zombie/fx_zombie_tesla_shock_secondary"), death, "tag_origin");
* death Moveto(Target,.2);wait .2;RadiusDamage(Target, 60, 185, 175);
* death delete();
}
Follow(Owner)
{
* * * * Owner endon( "disconnect" );*
* * * * Owner endon( "death" );
* * * * for(;
{
* * * * if(self.origin!=Owner.origin){
* * * * * * * * self moveto(owner.origin,6);}
* * * * * * * * wait .01;}
}
Copyright © 2026, NextGenUpdate.
All Rights Reserved.