#define TSF_NO_PATHBREAK 8
/// Dont respawn
#define TSL_NO_RESPAWN 16
+/// Let this turret roam when idle.
+#define TSL_ROAM 32
/// target selection flags
.float target_select_flags;
.float aim_flags;
/// Dont aim.
#define TFL_AIM_NO 1
-/// Go for ground, not direct hit
-//#define TFL_AIM_GROUND 2
/// Go for ground, not direct hit, but only if target is on ground.
-#define TFL_AIM_GROUND2 4
-/// Use balistic aim. FIXME: not implemented
-#define TFL_AIM_BALISTIC 8
+#define TFL_AIM_GROUNDGROUND 2
/// Try to predict target movement (does not account for gravity)
-#define TFL_AIM_LEAD 16
+#define TFL_AIM_LEAD 4
/// Compensate for shot traveltime when lead
-#define TFL_AIM_SHOTTIMECOMPENSATE 32
-/// Aim slightly in front of target
-#define TFL_AIM_INFRONT 64
-/// Aim slightly behind target
-#define TFL_AIM_BEHIND 128
-/// blend real and predicted z positions. (fake bounce prediction)
-// #define TFL_AIM_ZEASE 256
+#define TFL_AIM_SHOTTIMECOMPENSATE 8
/// Try to do real prediction of targets z pos at impact.
-#define TFL_AIM_ZPREDICT 512
+#define TFL_AIM_ZPREDICT 16
/// Simply aim at target's current location
-#define TFL_AIM_SIMPLE 1024
+#define TFL_AIM_SIMPLE 32
/// track (turn and pitch head) flags
.float track_flags;
#define TFL_TRACKTYPE_STEPMOTOR 1
/// Smoth absolute movement. Looks ok, fair accuracy.
#define TFL_TRACKTYPE_FLUIDPRECISE 2
-/// Simulated inertia. "Wobbly mode" Looks kool, can mean really bad accuracy depending on how the feilds below are set
+/// Simulated inertia. "Wobbly mode" Looks kool, can mean really bad accuracy depending on how the fields below are set
#define TFL_TRACKTYPE_FLUIDINERTIA 3
/// TFL_TRACKTYPE_FLUIDINERTIA: pitch multiplier
.float track_accel_pitch;
/// How prefire check is preformed
.float firecheck_flags;
-/// Dont kill the world
-#define TFL_FIRECHECK_WORLD 2
/// Dont kill the dead
#define TFL_FIRECHECK_DEAD 4
/// Range limits apply
/// Check own .attack_finished_single vs time
#define TFL_FIRECHECK_REFIRE 4096
/// Move the acctual target to aimspot before tracing impact (and back after)
-#define TFL_FIRECHECK_VERIFIED 8192
+//#define TFL_FIRECHECK_VERIFIED 8192
/// Dont do any chekcs
#define TFL_FIRECHECK_NO 16384
#define TFL_TURRCAPS_ISTURRET 65536
/// Ammo types needed and/or provided
-.float ammo_flags;
+//.float ammo_flags;
+#define ammo_flags currentammo
/// Has and needs no ammo
#define TFL_AMMO_NONE 64
/// Uses power
#define TFL_DMG_HEADSHAKE 128
/// Die and stay dead.
#define TFL_DMG_DEATH_NORESPAWN 256
-/// Supress std turret gibs on death
-#define TFL_DMG_DEATH_NOGIBS 512
// Spawnflags
/// Spawn in teambased modes
/// Defend this entity (or ratehr this entitys position)
.entity tur_defend;
-/// on/off toggle.
-.float tur_active;
-
/// and shoot from here. (can be non constant, think MLRS)
.vector tur_shotorg;
//.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)
*/
// common
.float turret_type;
-float TID_EWHEEL = 1;
-float TID_FLAC = 2;
-float TID_FUSION = 3;
-float TID_HELLION = 4;
-float TID_HK = 5;
-float TID_MACHINEGUN = 6;
-float TID_MLRS = 7;
-float TID_PHASER = 8;
-float TID_PLASMA = 9;
-float TID_PLASMA_DUAL = 10;
-float TID_TESLA = 11;
-float TID_WALKER = 12;
-float TID_LAST = 12;
+float TID_COMMON = 1;
+float TID_EWHEEL = 2;
+float TID_FLAC = 3;
+float TID_FUSION = 4;
+float TID_HELLION = 5;
+float TID_HK = 6;
+float TID_MACHINEGUN = 7;
+float TID_MLRS = 8;
+float TID_PHASER = 9;
+float TID_PLASMA = 10;
+float TID_PLASMA_DUAL = 11;
+float TID_TESLA = 12;
+float TID_WALKER = 13;
+float TID_LAST = 13;
float TNSF_UPDATE = 2;
float TNSF_STATUS = 4;