#ifndef SUBS_H
#define SUBS_H
+#ifdef SVQC
+
+ #define SUB_ANGLES(s) (s).angles
+ #define SUB_VELOCITY velocity
+ #define SUB_AVELOCITY avelocity
+ #define SUB_ORIGIN origin
+ #define SUB_SETORIGIN(s,v) setorigin((s), (v))
+ #define SUB_NEXTTHINK nextthink
+ #define SUB_THINK think
+ #define SUB_LTIME ltime
+ #define SUB_FLAGS flags
+
+#elif defined(CSQC)
+
+ void _Movetype_LinkEdict(float touch_triggers);
+
+ #define SUB_ANGLES(s) (s).move_angles
+ #define SUB_VELOCITY move_velocity
+ #define SUB_AVELOCITY move_avelocity
+ #define SUB_ORIGIN move_origin
+ #define SUB_NEXTTHINK move_nextthink
+ #define SUB_THINK move_think
+ #define SUB_LTIME move_ltime
+ #define SUB_FLAGS move_flags
+
+.vector move_origin;
+
+ void SUB_SETORIGIN(entity s, vector v)
+ {SELFPARAM();
+ s.move_origin = v;
+ WITH(entity, self, s, _Movetype_LinkEdict(true));
+ }
+
+#endif
+
void SUB_Remove();
void SUB_SetFade (entity ent, float when, float fading_time);
void SUB_VanishOrRemove (entity ent);
.vector destvec;
.vector destvec2;
-// player animation state
-.float animstate_startframe;
-.float animstate_numframes;
-.float animstate_framerate;
-.float animstate_starttime;
-.float animstate_endtime;
-.float animstate_override;
-.float animstate_looping;
-
.float delay;
.float wait;
.float lip;