Xonotic QuakeC
The free, fast arena FPS with crisp movement and a wide array of weapons
walker.qc File Reference
Include dependency graph for walker.qc:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define WALKER_ROCKET_MOVE(s)

Functions

 spawnfunc (turret_walker)
void walker_draw (entity this)
void walker_findtarget (entity this)
void walker_fire_rocket (entity this, vector org)
bool walker_firecheck (entity this)
void walker_melee_do_dmg (entity this)
bool walker_melee_do_dmg_cond (entity e)
void walker_move_path (entity this)
void walker_move_to (entity this, vector _target, float _dist)
void walker_rocket_damage (entity this, entity inflictor, entity attacker, float damage, float deathtype,.entity weaponentity, vector hitloc, vector vforce)
void walker_rocket_explode (entity this)
void walker_rocket_loop (entity this)
void walker_rocket_loop2 (entity this)
void walker_rocket_loop3 (entity this)
void walker_rocket_think (entity this)
void walker_rocket_touch (entity this, entity toucher)
void walker_setnoanim (entity this)

Variables

const int ANIM_JUMP = 6
const int ANIM_LAND = 7
const int ANIM_MELEE = 9
const int ANIM_NO = 0
const int ANIM_PAIN = 8
const int ANIM_ROAM = 11
const int ANIM_RUN = 3
const int ANIM_STRAFE_L = 4
const int ANIM_STRAFE_R = 5
const int ANIM_SWIM = 10
const int ANIM_TURN = 1
const int ANIM_WALK = 2
float animflag
float autocvar_g_turrets_unit_walker_melee_damage
float autocvar_g_turrets_unit_walker_melee_force
float autocvar_g_turrets_unit_walker_melee_range
float autocvar_g_turrets_unit_walker_rocket_damage
float autocvar_g_turrets_unit_walker_rocket_force
float autocvar_g_turrets_unit_walker_rocket_radius
float autocvar_g_turrets_unit_walker_rocket_range
float autocvar_g_turrets_unit_walker_rocket_range_min
float autocvar_g_turrets_unit_walker_rocket_refire
float autocvar_g_turrets_unit_walker_rocket_speed
float autocvar_g_turrets_unit_walker_rocket_turnrate
float autocvar_g_turrets_unit_walker_speed_jump
float autocvar_g_turrets_unit_walker_speed_roam
float autocvar_g_turrets_unit_walker_speed_run
float autocvar_g_turrets_unit_walker_speed_stop
float autocvar_g_turrets_unit_walker_speed_swim
float autocvar_g_turrets_unit_walker_speed_walk
float autocvar_g_turrets_unit_walker_turn
float autocvar_g_turrets_unit_walker_turn_run
float autocvar_g_turrets_unit_walker_turn_strafe
float autocvar_g_turrets_unit_walker_turn_swim
float autocvar_g_turrets_unit_walker_turn_walk
vector enemy_last_loc
float enemy_last_time
float idletime

Macro Definition Documentation

◆ WALKER_ROCKET_MOVE

#define WALKER_ROCKET_MOVE ( s)
Value:
UpdateCSQCProjectile(s)
#define movelib_move_simple(e, newdir, velo, blendrate)
Definition movelib.qh:36
float autocvar_g_turrets_unit_walker_rocket_speed
Definition walker.qc:11
float autocvar_g_turrets_unit_walker_rocket_turnrate
Definition walker.qc:15

Definition at line 106 of file walker.qc.

106#define WALKER_ROCKET_MOVE(s) \
107 movelib_move_simple((s), newdir, autocvar_g_turrets_unit_walker_rocket_speed, autocvar_g_turrets_unit_walker_rocket_turnrate); \
108 UpdateCSQCProjectile(s)

Referenced by walker_rocket_loop2(), walker_rocket_loop3(), and walker_rocket_think().

Function Documentation

◆ spawnfunc()

spawnfunc ( turret_walker )

Definition at line 353 of file walker.qc.

354{
355 if (!turret_initialize(this, TUR_WALKER))
356 delete(this);
357}
bool turret_initialize(entity this, Turret tur)

References turret_initialize().

◆ walker_draw()

void walker_draw ( entity this)

Definition at line 619 of file walker.qc.

620{
621 float dt = time - this.move_time;
622 this.move_time = time;
623 if (dt <= 0)
624 return;
625
627 movelib_groundalign4point(this, 300, 100, 0.25, 45);
628 setorigin(this, this.origin + this.velocity * dt);
629 this.tur_head.angles += dt * this.tur_head.avelocity;
630
631 if (GetResource(this, RES_HEALTH) < 127
632 && random() < 0.15)
633 te_spark(this.origin + '0 0 40', randomvec() * 256 + '0 0 256', 16);
634}
void fixedmakevectors(vector a)
float GetResource(entity e, Resource res_type)
Returns the current amount of resource the given entity has.
vector velocity
float time
vector origin
ent angles
Definition ent_cs.qc:146
float random(void)
vector randomvec(void)
void movelib_groundalign4point(entity this, float spring_length, float spring_up, float blendrate, float _max)
Pitches and rolls the entity to match the gound.
Definition movelib.qc:182
float move_time
Definition movetypes.qh:81
entity tur_head
Definition sv_turrets.qh:28

References angles, entity(), fixedmakevectors(), GetResource(), move_time, movelib_groundalign4point(), origin, random(), randomvec(), time, tur_head, and velocity.

◆ walker_findtarget()

void walker_findtarget ( entity this)

Definition at line 329 of file walker.qc.

330{
331 entity e = find(NULL, targetname, this.target);
332 if (!e)
333 {
334 LOG_TRACE("Initital waypoint for walker does NOT exist, fix your map!");
335 this.target = "";
336 }
337
338 if (e.classname != "turret_checkpoint")
339 LOG_TRACE("Warning: not a turrret path");
340 else
341 {
342#ifdef WALKER_FANCYPATHING
343 this.pathcurrent = pathlib_astar(this, this.origin, e.origin);
344 this.pathgoal = e;
345#else
346 this.pathcurrent = e;
347#endif
348 }
349
350 // TODO: this doesn't reset target, so tur_defend will be the checkpoint too!
351}
var entity(vector mins, vector maxs,.entity tofield) findbox_tofield_OrFallback
#define LOG_TRACE(...)
Definition log.qh:74
entity find(entity start,.string field, string match)
#define NULL
Definition post.qh:14
entity pathlib_astar(entity this, vector from, vector to)
Definition main.qc:351
entity pathcurrent
Definition sv_turrets.qh:86
entity pathgoal
Definition sv_turrets.qh:88
string targetname
Definition triggers.qh:56
string target
Definition triggers.qh:55

References entity(), find(), LOG_TRACE, NULL, origin, pathcurrent, pathgoal, pathlib_astar(), target, and targetname.

◆ walker_fire_rocket()

void walker_fire_rocket ( entity this,
vector org )

Definition at line 206 of file walker.qc.

207{
209
210 te_explosion (org);
211
212 entity rocket = new(walker_rocket);
213 setorigin(rocket, org);
214 rocket.solid = SOLID_BBOX; // before setsize so it will be linked to the area grid
215 sound(this, CH_WEAPON_A, SND_TUR_WALKER_FIRE, VOL_BASE, ATTEN_NORM);
216 setsize(rocket, '-3 -3 -3', '3 3 3'); // give it some size so it can be shot
217
218 rocket.realowner = this;
219 rocket.owner = this;
220 rocket.bot_dodge = true;
221 rocket.bot_dodgerating = 50;
222 rocket.takedamage = DAMAGE_YES;
223 rocket.damageforcescale = 2;
224 SetResourceExplicit(rocket, RES_HEALTH, 25);
225 rocket.tur_shotorg = randomvec() * 512;
226 rocket.cnt = time + 1;
227 rocket.enemy = this.enemy;
228
229 if (random() < 0.01)
231 else
233
234 rocket.event_damage = walker_rocket_damage;
235
236 rocket.nextthink = time;
237 set_movetype(rocket, MOVETYPE_FLY);
238 rocket.velocity = normalize((v_forward + v_up * 0.5) + (randomvec() * 0.2)) * autocvar_g_turrets_unit_walker_rocket_speed;
239 rocket.angles = vectoangles(rocket.velocity);
241 rocket.flags = FL_PROJECTILE;
242 IL_PUSH(g_projectiles, rocket);
243 IL_PUSH(g_bot_dodge, rocket);
244 rocket.max_health = time + 9;
245 rocket.missile_flags = MIF_SPLASH | MIF_PROXY | MIF_GUIDED_HEAT;
246
247 CSQCProjectile(rocket, false, PROJECTILE_ROCKET, false); // no culling, has fly sound
248}
IntrusiveList g_bot_dodge
Definition api.qh:150
const int FL_PROJECTILE
Definition constants.qh:77
vector v_up
const float SOLID_BBOX
vector v_forward
void CSQCProjectile(entity e, float clientanimate, int type, float docull)
SetResourceExplicit(ent, RES_ARMOR, ReadByte() *DEC_FACTOR)) ENTCS_PROP(NAME
ERASEABLE entity IL_PUSH(IntrusiveList this, entity it)
Push to tail.
vector vectoangles(vector v)
vector normalize(vector v)
void set_movetype(entity this, int mt)
Definition movetypes.qc:4
const int MOVETYPE_FLY
Definition movetypes.qh:138
const int PROJECTILE_ROCKET
Definition projectiles.qh:4
#define setthink(e, f)
vector org
Definition self.qh:96
#define settouch(e, f)
Definition self.qh:77
const int MIF_SPLASH
Definition common.qh:58
const int MIF_GUIDED_HEAT
Definition common.qh:62
IntrusiveList g_projectiles
Definition common.qh:70
const int MIF_PROXY
Definition common.qh:60
const float VOL_BASE
Definition sound.qh:36
const int CH_WEAPON_A
Definition sound.qh:7
const float ATTEN_NORM
Definition sound.qh:30
#define sound(e, c, s, v, a)
Definition sound.qh:52
const int DAMAGE_YES
Definition subs.qh:80
entity enemy
Definition sv_ctf.qh:152
void walker_rocket_damage(entity this, entity inflictor, entity attacker, float damage, float deathtype,.entity weaponentity, vector hitloc, vector vforce)
Definition walker.qc:97
void walker_rocket_loop(entity this)
Definition walker.qc:198
void walker_rocket_touch(entity this, entity toucher)
Definition walker.qc:92
void walker_rocket_think(entity this)
Definition walker.qc:110

References angles, ATTEN_NORM, autocvar_g_turrets_unit_walker_rocket_speed, CH_WEAPON_A, CSQCProjectile(), DAMAGE_YES, enemy, entity(), fixedmakevectors(), FL_PROJECTILE, g_bot_dodge, g_projectiles, IL_PUSH(), MIF_GUIDED_HEAT, MIF_PROXY, MIF_SPLASH, MOVETYPE_FLY, normalize(), org, PROJECTILE_ROCKET, random(), randomvec(), set_movetype(), SetResourceExplicit(), setthink, settouch, SOLID_BBOX, sound, time, v_forward, v_up, vectoangles(), vector, VOL_BASE, walker_rocket_damage(), walker_rocket_loop(), walker_rocket_think(), and walker_rocket_touch().

◆ walker_firecheck()

bool walker_firecheck ( entity this)

Definition at line 44 of file walker.qc.

45{
46 if (this.animflag == ANIM_MELEE)
47 return false;
48 return turret_firecheck(this);
49}
bool turret_firecheck(entity this)
Preforms pre-fire checks based on the uints firecheck_flags.
const int ANIM_MELEE
Definition walker.qc:37
float animflag
Definition walker.qc:41

References ANIM_MELEE, animflag, entity(), and turret_firecheck().

◆ walker_melee_do_dmg()

void walker_melee_do_dmg ( entity this)

Definition at line 56 of file walker.qc.

57{
58 makevectors(this.angles);
59
61 for (entity e = WarpZone_SearchInRadius(this.origin + v_forward * 128, 32, MOVE_NOTHING, walker_melee_do_dmg_cond); e; e = e.chain)
62 Damage(e, this, this,
64 DEATH_TURRET_WALK_MELEE.m_id,
66 e.WarpZone_findradius_nearest,
68 );
69}
void Damage(entity targ, entity inflictor, entity attacker, float damage, int deathtype,.entity weaponentity, vector hitloc, vector force)
Definition damage.qc:484
#define DMG_NOWEP
Definition damage.qh:104
entity WarpZone_SearchInRadius(vector org, float rad, float nomonsters, WarpZone_FindRadius_cond_callback_t cb)
Modified findradius aware of warpzones, that only includes entities that meet the "cb" criteria.
Definition common.qc:680
vector WarpZone_TransformVelocity(entity wz, vector vel)
Transforms velocity v across warpzone wz.
Definition common.qc:495
noref entity WarpZone_SearchInRadius_otherent
Free to use in the callback.
Definition common.qh:71
#define MOVE_NOTHING
Definition common.qh:35
#define makevectors
Definition post.qh:21
float autocvar_g_turrets_unit_walker_melee_force
Definition walker.qc:6
float autocvar_g_turrets_unit_walker_melee_damage
Definition walker.qc:5
bool walker_melee_do_dmg_cond(entity e)
Definition walker.qc:51

References angles, autocvar_g_turrets_unit_walker_melee_damage, autocvar_g_turrets_unit_walker_melee_force, Damage(), DMG_NOWEP, entity(), makevectors, MOVE_NOTHING, origin, v_forward, walker_melee_do_dmg_cond(), WarpZone_SearchInRadius(), WarpZone_SearchInRadius_otherent, and WarpZone_TransformVelocity().

◆ walker_melee_do_dmg_cond()

bool walker_melee_do_dmg_cond ( entity e)

Definition at line 51 of file walker.qc.

52{
55}
float turret_validate_target(entity e_turret, entity e_target, float validate_flags)
Evaluate a entity for target valitity based on validate_flags NOTE: the caller must check takedamage ...

References entity(), turret_validate_target(), and WarpZone_SearchInRadius_otherent.

Referenced by walker_melee_do_dmg().

◆ walker_move_path()

void walker_move_path ( entity this)

Definition at line 282 of file walker.qc.

283{
284#ifdef WALKER_FANCYPATHING
285 // Are we close enougth to a path node to switch to the next?
286 if (turret_closetotarget(this, this.pathcurrent.origin, 64))
287 {
288 if (this.pathcurrent.path_next == NULL)
289 {
290 // Path endpoint reached
292 this.pathcurrent = NULL;
293
294 if (this.pathgoal)
295 {
296 if (this.pathgoal.use)
297 this.pathgoal.use(this, NULL, NULL);
298
299 if (this.pathgoal.enemy)
300 {
301 this.pathcurrent = pathlib_astar(this, this.pathgoal.origin, this.pathgoal.enemy.origin);
302 this.pathgoal = this.pathgoal.enemy;
303 }
304 }
305 else
306 this.pathgoal = NULL;
307 }
308 else
309 this.pathcurrent = this.pathcurrent.path_next;
310 }
311
312 this.moveto = this.pathcurrent.origin;
313 this.steerto = steerlib_attract2(this, this.moveto, 0.5, 500, 0.95);
314 walker_move_to(this, this.moveto, 0);
315
316#else
317 if (turret_closetotarget(this, this.pathcurrent.origin, 64))
318 this.pathcurrent = this.pathcurrent.enemy;
319
320 if (!this.pathcurrent)
321 return;
322
323 this.moveto = this.pathcurrent.origin;
324 this.steerto = steerlib_attract2(this, this.moveto, 0.5, 500, 0.95);
325 walker_move_to(this, this.moveto, 0);
326#endif
327}
vector moveto
Definition movelib.qc:4
void pathlib_deletepath(entity start)
Definition main.qc:10
vector steerlib_attract2(entity this, vector point, float min_influense, float max_distance, float max_influense)
Definition steerlib.qc:45
vector steerto
Definition steerlib.qh:3
bool turret_closetotarget(entity this, vector targ, float range)
void walker_move_to(entity this, vector _target, float _dist)
Definition walker.qc:252

References entity(), moveto, NULL, pathcurrent, pathgoal, pathlib_astar(), pathlib_deletepath(), steerlib_attract2(), steerto, turret_closetotarget(), and walker_move_to().

◆ walker_move_to()

void walker_move_to ( entity this,
vector _target,
float _dist )

Definition at line 252 of file walker.qc.

253{
254 switch (this.waterlevel)
255 {
256 case WATERLEVEL_NONE:
257 if (_dist > 500)
258 this.animflag = ANIM_RUN;
259 else
260 this.animflag = ANIM_WALK;
263 if (this.animflag != ANIM_SWIM)
264 this.animflag = ANIM_WALK;
265 else
266 this.animflag = ANIM_SWIM;
267 break;
269 this.animflag = ANIM_SWIM;
270 }
271
272 this.moveto = _target;
273 this.steerto = steerlib_attract2(this, this.moveto, 0.5, 500, 0.95);
274
275 if (this.enemy)
276 {
277 this.enemy_last_loc = _target;
278 this.enemy_last_time = time;
279 }
280}
float waterlevel
Definition player.qh:225
const int WATERLEVEL_SWIMMING
Definition movetypes.qh:13
const int WATERLEVEL_WETFEET
Definition movetypes.qh:12
const int WATERLEVEL_SUBMERGED
Definition movetypes.qh:14
const int WATERLEVEL_NONE
Definition movetypes.qh:11
float enemy_last_time
Definition walker.qc:251
vector enemy_last_loc
Definition walker.qc:250
const int ANIM_SWIM
Definition walker.qc:38
const int ANIM_WALK
Definition walker.qc:30
const int ANIM_RUN
Definition walker.qc:31

References ANIM_RUN, ANIM_SWIM, ANIM_WALK, animflag, enemy, enemy_last_loc, enemy_last_time, entity(), moveto, steerlib_attract2(), steerto, time, vector, waterlevel, WATERLEVEL_NONE, WATERLEVEL_SUBMERGED, WATERLEVEL_SWIMMING, and WATERLEVEL_WETFEET.

Referenced by walker_move_path().

◆ walker_rocket_damage()

void walker_rocket_damage ( entity this,
entity inflictor,
entity attacker,
float damage,
float deathtype,
.entity weaponentity,
vector hitloc,
vector vforce )

Definition at line 97 of file walker.qc.

98{
99 TakeResource(this, RES_HEALTH, damage);
100 this.velocity += vforce;
101
102 if (GetResource(this, RES_HEALTH) <= 0)
104}
void TakeResource(entity receiver, Resource res_type, float amount)
Takes an entity some resource.
void W_PrepareExplosionByDamage(entity this, entity attacker, void(entity this) explode)
Definition common.qc:87
entity realowner
void walker_rocket_explode(entity this)
Definition walker.qc:76

References entity(), GetResource(), realowner, TakeResource(), vector, velocity, W_PrepareExplosionByDamage(), and walker_rocket_explode().

Referenced by walker_fire_rocket().

◆ walker_rocket_explode()

void walker_rocket_explode ( entity this)

Definition at line 76 of file walker.qc.

77{
78 RadiusDamage(this, this.realowner,
80 0,
82 this,
83 NULL,
85 DEATH_TURRET_WALK_ROCKET.m_id,
87 NULL
88 );
89 delete(this);
90}
float RadiusDamage(entity inflictor, entity attacker, float coredamage, float edgedamage, float rad, entity cantbe, entity mustbe, float forceintensity, int deathtype,.entity weaponentity, entity directhitentity)
Definition damage.qc:937
float autocvar_g_turrets_unit_walker_rocket_damage
Definition walker.qc:8
float autocvar_g_turrets_unit_walker_rocket_force
Definition walker.qc:10
float autocvar_g_turrets_unit_walker_rocket_radius
Definition walker.qc:9

References autocvar_g_turrets_unit_walker_rocket_damage, autocvar_g_turrets_unit_walker_rocket_force, autocvar_g_turrets_unit_walker_rocket_radius, DMG_NOWEP, entity(), NULL, RadiusDamage(), and realowner.

Referenced by walker_rocket_damage(), walker_rocket_loop2(), walker_rocket_loop3(), walker_rocket_think(), and walker_rocket_touch().

◆ walker_rocket_loop()

void walker_rocket_loop ( entity this)

Definition at line 198 of file walker.qc.

199{
200 this.nextthink = time;
201 this.tur_shotorg = this.origin + '0 0 300';
203 this.shot_dmg = 1337;
204}
float nextthink
vector tur_shotorg
Definition sv_turrets.qh:30
void walker_rocket_loop2(entity this)
Definition walker.qc:177

References entity(), nextthink, origin, setthink, time, tur_shotorg, and walker_rocket_loop2().

Referenced by walker_fire_rocket(), and walker_rocket_think().

◆ walker_rocket_loop2()

void walker_rocket_loop2 ( entity this)

Definition at line 177 of file walker.qc.

178{
179 this.nextthink = time;
180
181 if (this.max_health < time)
182 {
184 return;
185 }
186
187 if (vdist(this.origin - this.tur_shotorg, <, 100))
188 {
189 this.tur_shotorg = this.origin - '0 0 200';
191 return;
192 }
193
194 vector newdir = steerlib_pull(this, this.tur_shotorg);
195 WALKER_ROCKET_MOVE(this);
196}
float max_health
vector
Definition self.qh:96
#define steerlib_pull(ent, point)
Uniform pull towards a point.
Definition steerlib.qc:8
#define vdist(v, cmp, f)
Vector distance comparison, avoids sqrt().
Definition vector.qh:8
#define WALKER_ROCKET_MOVE(s)
Definition walker.qc:106
void walker_rocket_loop3(entity this)
Definition walker.qc:155

References entity(), max_health, nextthink, origin, setthink, steerlib_pull, time, tur_shotorg, vdist, vector, walker_rocket_explode(), walker_rocket_loop3(), and WALKER_ROCKET_MOVE.

Referenced by walker_rocket_loop().

◆ walker_rocket_loop3()

void walker_rocket_loop3 ( entity this)

Definition at line 155 of file walker.qc.

156{
157 this.nextthink = time;
158
159 if (this.max_health < time)
160 {
162 return;
163 }
164
165 if (vdist(this.origin - this.tur_shotorg, <, 100))
166 {
168 return;
169 }
170
171 vector newdir = steerlib_pull(this, this.tur_shotorg);
172 WALKER_ROCKET_MOVE(this);
173
174 this.angles = vectoangles(this.velocity);
175}

References angles, entity(), max_health, nextthink, origin, setthink, steerlib_pull, time, tur_shotorg, vdist, vectoangles(), vector, velocity, walker_rocket_explode(), WALKER_ROCKET_MOVE, and walker_rocket_think().

Referenced by walker_rocket_loop2().

◆ walker_rocket_think()

void walker_rocket_think ( entity this)

Definition at line 110 of file walker.qc.

111{
112 this.nextthink = time;
113
114 float edist = vlen(this.enemy.origin - this.origin);
115
116 // Simulate crude guidance
117 if (this.cnt < time)
118 {
119 this.tur_shotorg = randomvec() * min(edist, (edist < 1000 ? 64 : 256));
120 this.cnt = time + 0.5;
121 }
122
123 if (edist < 128)
124 this.tur_shotorg = '0 0 0';
125
126 if (this.max_health < time)
127 {
129 this.nextthink = time;
130 return;
131 }
132
133 if (this.shot_dmg != 1337 && random() < 0.01)
134 {
135 walker_rocket_loop(this);
136 return;
137 }
138
139 // Enemy dead? just keep on the current heading then.
140 if (this.enemy == NULL || IS_DEAD(this.enemy))
141 this.enemy = NULL;
142
143 vector newdir;
144 if (this.enemy)
145 {
146 //float itime = max(edist / vlen(this.velocity), 1);
147 newdir = steerlib_pull(this, this.enemy.origin + this.tur_shotorg);
148 }
149 else
150 newdir = normalize(this.velocity);
151
152 WALKER_ROCKET_MOVE(this);
153}
float cnt
Definition powerups.qc:24
#define IS_DEAD(s)
Definition player.qh:244
float vlen(vector v)
float min(float f,...)

References cnt, enemy, entity(), IS_DEAD, max_health, min(), nextthink, normalize(), NULL, random(), randomvec(), setthink, steerlib_pull, time, tur_shotorg, vector, velocity, vlen(), walker_rocket_explode(), walker_rocket_loop(), and WALKER_ROCKET_MOVE.

Referenced by walker_fire_rocket(), and walker_rocket_loop3().

◆ walker_rocket_touch()

void walker_rocket_touch ( entity this,
entity toucher )

Definition at line 92 of file walker.qc.

93{
95}

References entity(), toucher, and walker_rocket_explode().

Referenced by walker_fire_rocket().

◆ walker_setnoanim()

void walker_setnoanim ( entity this)

Definition at line 71 of file walker.qc.

72{
73 turrets_setframe(this, ANIM_NO, false);
74 this.animflag = this.frame;
75}
float frame
primary framegroup animation (strength = 1 - lerpfrac - lerpfrac3 - lerpfrac4)
Definition anim.qh:6
void turrets_setframe(entity this, float _frame, float client_only)
const int ANIM_NO
Definition walker.qc:28

References ANIM_NO, animflag, entity(), frame, and turrets_setframe().

Variable Documentation

◆ ANIM_JUMP

const int ANIM_JUMP = 6

Definition at line 34 of file walker.qc.

◆ ANIM_LAND

const int ANIM_LAND = 7

Definition at line 35 of file walker.qc.

◆ ANIM_MELEE

const int ANIM_MELEE = 9

Definition at line 37 of file walker.qc.

Referenced by walker_firecheck().

◆ ANIM_NO

const int ANIM_NO = 0

Definition at line 28 of file walker.qc.

Referenced by walker_setnoanim().

◆ ANIM_PAIN

const int ANIM_PAIN = 8

Definition at line 36 of file walker.qc.

◆ ANIM_ROAM

const int ANIM_ROAM = 11

Definition at line 39 of file walker.qc.

◆ ANIM_RUN

const int ANIM_RUN = 3

Definition at line 31 of file walker.qc.

Referenced by walker_move_to().

◆ ANIM_STRAFE_L

const int ANIM_STRAFE_L = 4

Definition at line 32 of file walker.qc.

◆ ANIM_STRAFE_R

const int ANIM_STRAFE_R = 5

Definition at line 33 of file walker.qc.

◆ ANIM_SWIM

const int ANIM_SWIM = 10

Definition at line 38 of file walker.qc.

Referenced by walker_move_to().

◆ ANIM_TURN

const int ANIM_TURN = 1

Definition at line 29 of file walker.qc.

◆ ANIM_WALK

const int ANIM_WALK = 2

Definition at line 30 of file walker.qc.

Referenced by walker_move_to().

◆ animflag

float animflag

Definition at line 41 of file walker.qc.

Referenced by walker_firecheck(), walker_move_to(), and walker_setnoanim().

◆ autocvar_g_turrets_unit_walker_melee_damage

float autocvar_g_turrets_unit_walker_melee_damage

Definition at line 5 of file walker.qc.

Referenced by walker_melee_do_dmg().

◆ autocvar_g_turrets_unit_walker_melee_force

float autocvar_g_turrets_unit_walker_melee_force

Definition at line 6 of file walker.qc.

Referenced by walker_melee_do_dmg().

◆ autocvar_g_turrets_unit_walker_melee_range

float autocvar_g_turrets_unit_walker_melee_range

Definition at line 7 of file walker.qc.

◆ autocvar_g_turrets_unit_walker_rocket_damage

float autocvar_g_turrets_unit_walker_rocket_damage

Definition at line 8 of file walker.qc.

Referenced by walker_rocket_explode().

◆ autocvar_g_turrets_unit_walker_rocket_force

float autocvar_g_turrets_unit_walker_rocket_force

Definition at line 10 of file walker.qc.

Referenced by walker_rocket_explode().

◆ autocvar_g_turrets_unit_walker_rocket_radius

float autocvar_g_turrets_unit_walker_rocket_radius

Definition at line 9 of file walker.qc.

Referenced by walker_rocket_explode().

◆ autocvar_g_turrets_unit_walker_rocket_range

float autocvar_g_turrets_unit_walker_rocket_range

Definition at line 12 of file walker.qc.

◆ autocvar_g_turrets_unit_walker_rocket_range_min

float autocvar_g_turrets_unit_walker_rocket_range_min

Definition at line 13 of file walker.qc.

◆ autocvar_g_turrets_unit_walker_rocket_refire

float autocvar_g_turrets_unit_walker_rocket_refire

Definition at line 14 of file walker.qc.

◆ autocvar_g_turrets_unit_walker_rocket_speed

float autocvar_g_turrets_unit_walker_rocket_speed

Definition at line 11 of file walker.qc.

Referenced by walker_fire_rocket().

◆ autocvar_g_turrets_unit_walker_rocket_turnrate

float autocvar_g_turrets_unit_walker_rocket_turnrate

Definition at line 15 of file walker.qc.

◆ autocvar_g_turrets_unit_walker_speed_jump

float autocvar_g_turrets_unit_walker_speed_jump

Definition at line 19 of file walker.qc.

◆ autocvar_g_turrets_unit_walker_speed_roam

float autocvar_g_turrets_unit_walker_speed_roam

Definition at line 21 of file walker.qc.

◆ autocvar_g_turrets_unit_walker_speed_run

float autocvar_g_turrets_unit_walker_speed_run

Definition at line 18 of file walker.qc.

◆ autocvar_g_turrets_unit_walker_speed_stop

float autocvar_g_turrets_unit_walker_speed_stop

Definition at line 16 of file walker.qc.

◆ autocvar_g_turrets_unit_walker_speed_swim

float autocvar_g_turrets_unit_walker_speed_swim

Definition at line 20 of file walker.qc.

◆ autocvar_g_turrets_unit_walker_speed_walk

float autocvar_g_turrets_unit_walker_speed_walk

Definition at line 17 of file walker.qc.

◆ autocvar_g_turrets_unit_walker_turn

float autocvar_g_turrets_unit_walker_turn

Definition at line 22 of file walker.qc.

◆ autocvar_g_turrets_unit_walker_turn_run

float autocvar_g_turrets_unit_walker_turn_run

Definition at line 26 of file walker.qc.

◆ autocvar_g_turrets_unit_walker_turn_strafe

float autocvar_g_turrets_unit_walker_turn_strafe

Definition at line 24 of file walker.qc.

◆ autocvar_g_turrets_unit_walker_turn_swim

float autocvar_g_turrets_unit_walker_turn_swim

Definition at line 25 of file walker.qc.

◆ autocvar_g_turrets_unit_walker_turn_walk

float autocvar_g_turrets_unit_walker_turn_walk

Definition at line 23 of file walker.qc.

◆ enemy_last_loc

vector enemy_last_loc

Definition at line 250 of file walker.qc.

Referenced by walker_move_to().

◆ enemy_last_time

float enemy_last_time

Definition at line 251 of file walker.qc.

Referenced by walker_move_to().

◆ idletime

float idletime

Definition at line 42 of file walker.qc.