CSQCModel_Hook_PreDraw(isplayer, islocalplayer);
#define CSQCPLAYER_HOOK_POSTCAMERASETUP
+#define CSQCPLAYER_FORCE_UPDATES 0.25
+
// mod must define:
//vector PL_MIN = ...;
//vector PL_MAX = ...;
return TRUE;
}
+#ifdef CSQCPLAYER_FORCE_UPDATES
+.float csqcmodel_nextforcedupdate;
+#endif
void CSQCModel_CheckUpdate()
{
// some nice flags for CSQCMODEL_IF
float islocalplayer = isplayer; // we set BOTH to 1 here as we need the sendflags
float isnolocalplayer = isplayer; // we set BOTH to 1 here as we need the sendflags
+#ifdef CSQCPLAYER_FORCE_UPDATES
+ if(isplayer && time > self.csqcmodel_nextforcedupdate)
+ {
+ self.SendFlags |= CSQCMODEL_PROPERTY_ORIGIN;
+ self.csqcmodel_nextforcedupdate = time + CSQCPLAYER_FORCE_UPDATES * (0.5 + random()); // ensure about 4 origin sends per sec
+ }
+#endif
+
if(self.effects & EF_RESTARTANIM_BIT)
{
self.SendFlags |= CSQCMODEL_PROPERTY_FRAME | CSQCMODEL_PROPERTY_FRAME2; // full anim resend please