]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/server/steerlib.qc
Fix warmup limit
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / steerlib.qc
index fcdbda97768906734e5b468a007357b87061d825..24800165661c95361ab2662b4037df977c2e1a15 100644 (file)
@@ -1,8 +1,7 @@
+#include "steerlib.qh"
 #if defined(CSQC)
 #elif defined(MENUQC)
 #elif defined(SVQC)
-    #include "../dpdefs/progsdefs.qh"
-    #include "../dpdefs/dpextensions.qh"
 #endif
 
 /**
@@ -50,14 +49,14 @@ vector steerlib_attract(vector point, float maximal_distance)
     return  direction * (1-(distance / maximal_distance));
 }
 
-vector steerlib_attract2(vector point, float min_influense,float max_distance,float max_influense)
-{SELFPARAM();
+vector steerlib_attract2(entity this, vector point, float min_influense,float max_distance,float max_influense)
+{
     float distance;
     vector direction;
     float influense;
 
-    distance  = bound(0.00001,vlen(self.origin - point),max_distance);
-    direction = normalize(point - self.origin);
+    distance  = bound(0.00001,vlen(this.origin - point),max_distance);
+    direction = normalize(point - this.origin);
 
     influense = 1 - (distance / max_distance);
     influense = min_influense + (influense * (max_influense - min_influense));
@@ -545,19 +544,17 @@ void flocker_think()
         self.nextthink = time + 0.1;
 }
 
+MODEL(FLOCKER, "models/turrets/rocket.md3");
 
 void spawn_flocker()
 {SELFPARAM();
-    entity flocker;
-
-    flocker = spawn ();
+    entity flocker = new(flocker);
 
     setorigin(flocker, self.origin + '0 0 32');
-    setmodel (flocker, "models/turrets/rocket.md3");
+    setmodel (flocker, MDL_FLOCKER);
     setsize (flocker, '-3 -3 -3', '3 3 3');
 
     flocker.flock_id   = self.flock_id;
-    flocker.classname  = "flocker";
     flocker.owner      = self;
     flocker.think      = flocker_think;
     flocker.nextthink  = time + random() * 5;
@@ -595,7 +592,7 @@ void flocker_hunter_think()
     self.angles_x = self.angles.x * -1;
 
     if(self.enemy)
-    if(vlen(self.enemy.origin - self.origin) < 64)
+    if(vdist(self.enemy.origin - self.origin, <, 64))
     {
         ee = self.enemy;
         ee.health = -1;
@@ -639,10 +636,8 @@ void flocker_hunter_think()
 
 
 float globflockcnt;
-void spawnfunc_flockerspawn()
+spawnfunc(flockerspawn)
 {SELFPARAM();
-    precache_model ( "models/turrets/rocket.md3");
-    precache_model("models/turrets/c512.md3");
     ++globflockcnt;
 
     if(!self.cnt)      self.cnt = 20;
@@ -652,12 +647,11 @@ void spawnfunc_flockerspawn()
     self.think     = flockerspawn_think;
     self.nextthink = time + 0.25;
 
-    self.enemy = spawn();
+    self.enemy = new(FLock Hunter);
 
-    setmodel(self.enemy, "models/turrets/rocket.md3");
+    setmodel(self.enemy, MDL_FLOCKER);
     setorigin(self.enemy,self.origin + '0 0 768' + (randomvec() * 128));
 
-    self.enemy.classname = "FLock Hunter";
     self.enemy.scale     = 3;
     self.enemy.effects   = EF_LOWPRECISION;
     self.enemy.movetype  = MOVETYPE_BOUNCEMISSILE;