}
void CSQCPlayer_ModelAppearance_Apply(entity this, bool islocalplayer)
{
+ int cm = this.forceplayermodels_savecolormap;
+ cm = (cm >= 1024) ? cm : (entcs_GetClientColors(cm - 1) + 1024);
+
if(MUTATOR_CALLHOOK(ForcePlayermodels_Skip, this, islocalplayer))
goto skipforcemodels;
// apply it
bool isfriend;
- int cm;
- cm = this.forceplayermodels_savecolormap;
- cm = (cm >= 1024) ? cm : (entcs_GetClientColors(cm - 1) + 1024);
if(teamplay)
isfriend = (cm == 1024 + 17 * myteam);
this.skin = this.forceplayermodels_saveskin;
}
+ LABEL(skipforcemodels)
+
+ if(MUTATOR_CALLHOOK(ForcePlayercolors_Skip, this, islocalplayer))
+ goto skipforcecolors;
+
// forceplayercolors too
if(teamplay)
{
this.colormap = player_localnum + 1;
}
- LABEL(skipforcemodels)
+ LABEL(skipforcecolors)
if((this.csqcmodel_effects & CSQCMODEL_EF_RESPAWNGHOST) && !autocvar_cl_respawn_ghosts_keepcolors)
{
if(eff & EF_FULLBRIGHT)
this.renderflags |= RF_FULLBRIGHT;
if(eff & EF_FLAME)
- pointparticles(EFFECT_EF_FLAME, this.origin, '0 0 0', bound(0, frametime, 0.1));
+ {
+ boxparticles(particleeffectnum(EFFECT_EF_FLAME), this, this.absmin, this.absmax, this.velocity, this.velocity, bound(0, frametime, 0.1), 0);
+ //pointparticles(EFFECT_EF_FLAME, this.origin, '0 0 0', bound(0, frametime, 0.1));
+ }
if(eff & EF_STARDUST)
- pointparticles(EFFECT_EF_STARDUST, this.origin, '0 0 0', bound(0, frametime, 0.1));
+ {
+ boxparticles(particleeffectnum(EFFECT_EF_STARDUST), this, this.absmin, this.absmax, this.velocity, this.velocity, bound(0, frametime, 0.1), 0);
+ //pointparticles(EFFECT_EF_STARDUST, this.origin, '0 0 0', bound(0, frametime, 0.1));
+ }
if(eff & EF_NOSHADOW)
this.renderflags |= RF_NOSHADOW;
if(eff & EF_NODEPTHTEST)