]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/common/turrets/sv_turrets.qh
Merge branch 'master' into martin-t/dmgtext
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / turrets / sv_turrets.qh
index 1d492e8164a057cf17f799ef58a773f532461803..deee313ab109204ce7e1acbba2cb1aaaa6921aac 100644 (file)
@@ -1,15 +1,15 @@
-#ifndef SV_TURRETS_H
-#define SV_TURRETS_H
+#pragma once
 
-entity turret_projectile(Sound _snd, float _size, float _health, float _death, float _proj_type, float _cull, float _cli_anim);
+#include <server/miscfunctions.qh>
+
+entity turret_projectile(entity actor, Sound _snd, float _size, float _health, float _death, float _proj_type, float _cull, float _cli_anim);
 void turret_projectile_explode(entity this);
 float turret_validate_target(entity e_turret, entity e_target, float validate_flags);
-float turret_firecheck();
-entity turret_select_target();
+bool turret_firecheck(entity this);
+entity turret_select_target(entity this);
 
 // turret fields
 .float ticrate; // interal ai think rate
-.vector aim_idle; // where to aim while idle
 .entity tur_head; // top part of the turret
 .entity tur_defend; // defend this entity
 .vector tur_shotorg; // shot origin
@@ -83,19 +83,24 @@ void turret_respawn(entity this);
 void turret_do_updates(entity e_turret);
 .vector tur_shotdir_updated;
 
-.float() turret_firecheckfunc; // TODO: deprecate!
+.float(entity this) turret_firecheckfunc; // TODO: deprecate!
+
+void turrets_setframe(entity this, float _frame, float client_only);
 
-void turrets_setframe(float _frame, float client_only);
+bool turret_initialize(entity this, Turret tur);
 
-float turret_initialize(Turret tur);
+// returns true when box overlaps with a given location
+bool turret_closetotarget(entity this, vector targ);
 
 /// Function to use for target evaluation. usualy turret_targetscore_generic
 .float(entity _turret, entity _target) turret_score_target;
 
-.float(entity e_target,entity e_sender) turret_addtarget;
+.bool(entity this, entity e_target,entity e_sender) turret_addtarget;
 
 .entity pathcurrent;
 
+.entity pathgoal;
+
 float turret_count;
 
 // debugging
@@ -119,5 +124,3 @@ vector tvt_tadv; // turret angle diff vector, updated by a successful call to tu
 float tvt_thadf; // turret head angle diff float, updated by a successful call to turret_validate_target
 float tvt_tadf; // turret angle diff float, updated by a successful call to turret_validate_target
 float tvt_dist; // turret distance, updated by a successful call to turret_validate_target
-
-#endif