game-source/klik/act/act.qc
2003-10-28 21:20:34 +00:00

60 lines
1,020 B
C++

#include "common.qh"
#include "misc.qh"
#include "act.qh"
#include "server.qh"
#include "menu.qh"
#include "mdl.qh"
#include "weapon.qh"
.void() prethink;
.void() actthink;
.void() postthink;
void() PlayerPreThink = {
if (is_cl(self))
PlayerStartFrame();
if (self.prethink)
self.prethink();
};
void() act_think = {
if (!is_autothink(self)) {
frametime = 0.1;
PlayerPreThink();
}
/*if (0.1 seconds have passed) {*/
if (self.actthink)
self.actthink();
if (self.menu_think)
self.menu_think();
if (self.mdl_think && !self.mdl_thought)
self.mdl_think();
self.mdl_thought = FALSE;
if (self.w_think && !self.w_thought)
self.w_think();
self.w_thought = FALSE;
/*}*/
self.nextthink = time + 0.1; /* FIXME: Use sv_mintic here when non-client? */
if (!is_autothink(self))
PlayerPostThink();
};
void() PlayerPostThink = {
if (self.postthink)
self.postthink();
if (is_cl(self))
PlayerEndFrame();
};
void() act_setup = {
self.think = act_think;
self.nextthink = time;
};