Xonotic QuakeC
The free, fast arena FPS with crisp movement and a wide array of weapons
follow.qc
Go to the documentation of this file.
1#include "follow.qh"
2
3void _Movetype_Physics_Follow(entity this) // SV_Physics_Follow
4{
5 entity e = this.aiment;
6
7 if(e.angles == this.punchangle)
8 {
9 this.origin = e.origin + this.view_ofs;
10 }
11 else
12 {
13 vector ang, v;
14 ang_x = -this.punchangle_x;
15 ang_y = this.punchangle_y;
16 ang_z = this.punchangle_z;
18 v_x = this.view_ofs_x * v_forward_x + this.view_ofs_y * v_right_x + this.view_ofs_z * v_up_x;
19 v_y = this.view_ofs_x * v_forward_y + this.view_ofs_y * v_right_y + this.view_ofs_z * v_up_y;
20 v_z = this.view_ofs_x * v_forward_z + this.view_ofs_y * v_right_z + this.view_ofs_z * v_up_z;
21 ang = e.angles;
22 ang_x = -e.angles_x;
24 this.origin_x = v_x * v_forward_x + v_y * v_forward_y + v_z * v_forward_z + e.origin_x;
25 this.origin_y = v_x * v_right_x + v_y * v_right_y + v_z * v_right_z + e.origin_y;
26 this.origin_z = v_x * v_up_x + v_y * v_up_y + v_z * v_up_z + e.origin_z;
27 }
28
29 this.angles = e.angles + this.v_angle;
30 _Movetype_LinkEdict(this, false);
31}
var entity(vector mins, vector maxs,.entity tofield) findbox_tofield_OrFallback
vector v_angle
Definition player.qh:237
vector origin
ent angles
Definition ent_cs.qc:121
void _Movetype_LinkEdict(entity this, bool touch_triggers)
Definition movetypes.qc:516
entity aiment
Definition movetypes.qh:90
void _Movetype_Physics_Follow(entity this)
Definition follow.qc:3
#define makevectors
Definition post.qh:21
vector view_ofs
Definition progsdefs.qc:151
vector
Definition self.qh:92
vector vector ang
Definition self.qh:92