.float spectatorspeed;
#endif
+.int buttons_old;
.vector movement_old;
.vector v_angle_old;
.string lastclassname;
if (sys_phys_override(this, dt)) { return; } sys_phys_monitor(this, dt);
PHYS_CS(this).movement_old = PHYS_CS(this).movement;
- this.v_angle_old = this.v_angle;
+ PHYS_CS(this).v_angle_old = this.v_angle;
+ PHYS_CS(this).buttons_old = PHYS_INPUT_BUTTON_MASK(this);
sys_phys_ai(this);
if (sv_maxidle > 0) {
if (buttons != CS(this).buttons_old
|| CS(this).movement != CS(this).movement_old
- || this.v_angle != this.v_angle_old) { CS(this).parm_idlesince = time; }
+ || this.v_angle != CS(this).v_angle_old) { CS(this).parm_idlesince = time; }
}
PM_check_nickspam(this);
PM_check_punch(this, dt);
-
- CS(this).buttons_old = PHYS_INPUT_BUTTON_MASK(this);
}
void sys_phys_ai(entity this)
ATTRIB(Client, latency_sum, float, this.latency_sum);
ATTRIB(Client, latency_cnt, int, this.latency_cnt);
ATTRIB(Client, latency_time, float, this.latency_time);
+ ATTRIB(Client, v_angle_old, vector, this.v_angle_old);
METHOD(Client, m_unwind, bool(Client this));