]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Trottle target re-validation to save a bit server preformance
authorJakob MG <jakob_mg@hotmail.com>
Wed, 22 Jun 2011 14:00:48 +0000 (16:00 +0200)
committerJakob MG <jakob_mg@hotmail.com>
Wed, 22 Jun 2011 14:00:48 +0000 (16:00 +0200)
qcsrc/client/tturrets.qc
qcsrc/server/tturrets/include/turrets_early.qh
qcsrc/server/tturrets/system/system_main.qc
qcsrc/server/tturrets/system/system_misc.qc

index 15e972c109c9f279ac7718c318bc0c5bcd0c519f..55fcd88bc2b3c593df8d9023d0788d00899b488a 100644 (file)
@@ -227,7 +227,6 @@ void turret_draw()
     
 }
 
-
 void turret_walker_draw()
 {        
     float dt;
index a8aed4553ad97a4257e03eda18dc23e0936ffe73..e4531ceaf2eb8bea063f16f7e6ab20f91d3d94bf 100644 (file)
@@ -342,7 +342,8 @@ vector real_origin(entity ent);
 //.float target_select_fov;
 /// Last timestamp this turret aquierd a valid target
 .float target_select_time;
-
+/// Throttle re-validation of current target
+.float target_validate_time;
 /*
 * Aim refers to real aiming, not gun pos (thats done by track)
 */
index 6c51115df08fcb793e3ae6d62a136a3d23fd4e5b..2bc9f929adfdd915daa7ef1a642a745a1d000e2b 100644 (file)
@@ -140,7 +140,6 @@ void load_unit_settings(entity ent, string unitname, float is_reload)
             ent.turret_respawnhook();
 }
 
-
 /**
 ** updates enemy distances, predicted impact point/time
 ** and updated aim<->predict impact distance.
@@ -689,7 +688,6 @@ void turret_think()
     entity e;
 
     self.nextthink = time + self.ticrate;
-    //self.SendFlags = TNSF_UPDATE | TNSF_STATUS | TNSF_ANG | TNSF_AVEL;
     
     // ONS uses somewhat backwards linking.
     if (teamplay)
@@ -805,9 +803,11 @@ void turret_think()
             do_target_scan = 1;
 
         // Old target (if any) invalid?
+        if(self.target_validate_time < time)
         if (turret_validate_target(self, self.enemy, self.target_validate_flags) <= 0)
         {
                self.enemy = world;
+               self.target_validate_time = time + 0.5;
                do_target_scan = 1;
         }
 
index fc17121ebef02395632c084fa72cdb593ddf82ff..f97f1091faeea7353b472af2e194537275a0812d 100644 (file)
@@ -221,23 +221,6 @@ void turrets_precache_debug_models()
 
 void turrets_precash()
 {
-    //precache_model ("models/turrets/base.md3");
-    //precache_model ("models/turrets/flac.md3");
-    //precache_model ("models/turrets/pd_proj.md3");
-    //precache_model ("models/turrets/reactor.md3");
-    //precache_model ("models/turrets/mlrs_rocket.md3");
-    //precache_model ("models/turrets/hellion.md3");
-    //precache_model ("models/turrets/hunter2.md3");
-    //precache_model ("models/turrets/hk.md3");
-    //precache_model ("models/turrets/machinegun.md3");
-    //precache_model ("models/turrets/rocket.md3");
-    //precache_model ("models/turrets/mlrs.md3");
-    //precache_model ("models/turrets/phaser.md3");
-    //precache_model ("models/turrets/phaser_beam.md3");
-    //precache_model ("models/turrets/plasmad.md3");
-    //precache_model ("models/turrets/plasma.md3");
-    //precache_model ("models/turrets/tesla_head.md3");
-    //precache_model ("models/turrets/tesla_base.md3");
     #ifdef TURRET_DEBUG
        turrets_precache_debug_models();
        #endif