self.csqcmodel_modelflags = self.modelflags;
self.effects = 0;
self.modelflags = 0;
+ if(self.csqcmodel_teleported)
+ Projectile_ResetTrail(self.origin);
}
void CSQCModel_Effects_Apply(void)
{
- float eff = self.effects;
+ float eff = self.csqcmodel_effects;
eff &~= CSQCMODEL_EF_INVISIBLE;
self.renderflags &~= (RF_DEPTHHACK | RF_ADDITIVE | RF_FULLBRIGHT | EF_NOSHADOW | RF_USEAXIS);
if(self.csqcmodel_modelflags & MF_ROTATE)
{
self.renderflags |= RF_USEAXIS;
- makevectors(self.angles + '0 0 100' * fmod(time, 3.6));
+ makevectors(self.angles + '0 100 0' * fmod(time, 3.6));
}
if(self.csqcmodel_modelflags & MF_TRACER)
self.traileffect = particleeffectnum("TR_WIZSPIKE");
.float csqcmodel_lerpfrac2;
.float csqcmodel_lerpfractime;
.float csqcmodel_lerpfrac2time;
-.float csqcmodel_teleported;
void CSQCModel_InterpolateAnimation_PreNote(float sf)
{
self.renderflags &~= RF_EXTERNALMODEL | RF_VIEWMODEL;
self.renderflags |= (root.renderflags & (RF_EXTERNALMODEL | RF_VIEWMODEL));
}
+
+ // we're drawn, now teleporting is over
+ self.csqcmodel_teleported = 0;
}
void CSQCModel_Read()
#undef CSQCMODEL_IF
entity CSQCModel_server2csqc(float pl);
+.float csqcmodel_teleported;
var float refdefflags = 0;
if(view.csqcmodel_teleported)
- {
refdefflags |= REFDEFFLAG_TELEPORTED;
- view.csqcmodel_teleported = 0;
- }
if(input_buttons & 4)
refdefflags |= REFDEFFLAG_JUMPING;
self.modelflags &~= MF_ROCKET;
}
- self.effects &~= (EF_DIMLIGHT | EF_RED | EF_BLUE | EF_ADDITIVE | EF_FULLBRIGHT | EF_FLAME | EF_NODEPTHTEST);
+ self.effects &~= (EF_RED | EF_BLUE | EF_ADDITIVE | EF_FULLBRIGHT | EF_FLAME | EF_NODEPTHTEST);
if((self.effects & CSQCMODEL_EF_INVISIBLE) || self.deadflag) // don't apply the flags if the player is gibbed
return;