Xonotic
csqcmodel_hooks.qh File Reference
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void CSQCModel_Effects_Apply (entity this)
 
void CSQCModel_Hook_PreDraw (entity this, bool isplayer)
 

Variables

int autocvar__cl_color
 
string autocvar__cl_playermodel
 
int autocvar__cl_playerskin
 
float autocvar_cl_deathglow
 
float autocvar_cl_deathglow_min = 0.5
 
int autocvar_cl_forcemyplayercolors
 
string autocvar_cl_forcemyplayermodel
 
int autocvar_cl_forcemyplayerskin
 
bool autocvar_cl_forceplayercolors
 
bool autocvar_cl_forceplayermodels
 
bool autocvar_cl_forceuniqueplayercolors
 
float autocvar_cl_jetpack_attenuation = 2
 
float autocvar_cl_loddistance1 = 768
 
float autocvar_cl_loddistance2 = 2048
 
int autocvar_cl_modeldetailreduction
 
int autocvar_cl_playerdetailreduction
 
bool autocvar_cl_respawn_ghosts_keepcolors
 
int csqcmodel_effects
 
bool csqcmodel_isdead
 
int csqcmodel_modelflags
 
int csqcmodel_traileffect
 
const int EF_BRIGHTFIELD = BIT(0)
 
const int EF_BRIGHTLIGHT = BIT(2)
 
const int EF_DIMLIGHT = BIT(3)
 
const int EF_DOUBLESIDED = BIT(15)
 
const int EF_DYNAMICMODELLIGHT = BIT(17)
 
const int EF_NOSELFSHADOW = BIT(16)
 
const int EF_RESTARTANIM_BIT = BIT(20)
 
const int EF_TELEPORT_BIT = BIT(21)
 
int isplayermodel
 
const int MF_GIB = BIT(2)
 
const int MF_GRENADE = BIT(1)
 
const int MF_ROCKET = BIT(0)
 
const int MF_ROTATE = BIT(3)
 
const int MF_TRACER = BIT(4)
 
const int MF_TRACER2 = BIT(6)
 
const int MF_TRACER3 = BIT(7)
 
const int MF_ZOMGIB = BIT(5)
 

Function Documentation

◆ CSQCModel_Effects_Apply()

void CSQCModel_Effects_Apply ( entity  this)

Definition at line 532 of file csqcmodel_hooks.qc.

References absmax, absmin, adddynamiclight, alpha, angles, autocvar_cl_jetpack_attenuation, bound(), CH_TRIGGER_SINGLE, CSQCMODEL_EF_RESPAWNGHOST, csqcmodel_effects, csqcmodel_modelflags, csqcmodel_traileffect, drawmask, EF_ADDITIVE, EF_BLUE, EF_BRIGHTFIELD, EF_BRIGHTLIGHT, EF_DIMLIGHT, EF_DOUBLESIDED, EF_DYNAMICMODELLIGHT, EF_FLAME, EF_FULLBRIGHT, EF_NODEPTHTEST, EF_NODRAW, EF_NOSELFSHADOW, EF_NOSHADOW, EF_RED, EF_STARDUST, effects, fmod(), frametime, makevectors, MF_GIB, MF_GRENADE, MF_ROCKET, MF_ROTATE, MF_TRACER, MF_TRACER2, MF_TRACER3, MF_ZOMGIB, origin, particleeffectnum, Projectile_DrawTrail(), Projectile_ResetTrail(), renderflags, RF_ADDITIVE, RF_DEPTHHACK, RF_DYNAMICMODELLIGHT, RF_FULLBRIGHT, RF_NOSHADOW, RF_USEAXIS, snd_looping, sound, time, velocity, and VOL_BASE.

Referenced by CSQCModel_Hook_PreDraw(), and viewmodel_draw().

533 {
535  int tref = this.csqcmodel_traileffect;
536 
538  this.effects = 0;
539  this.traileffect = 0;
540 
541  if(eff & EF_BRIGHTFIELD)
542  tref = EFFECT_TR_NEXUIZPLASMA.m_id;
543  // ignoring EF_MUZZLEFLASH
544  if(eff & EF_BRIGHTLIGHT)
545  adddynamiclight(this.origin, 400, '3 3 3');
546  if(eff & EF_DIMLIGHT)
547  adddynamiclight(this.origin, 200, '1.5 1.5 1.5');
548  if((eff & EF_NODRAW) || (this.alpha < 0))
549  this.drawmask = 0;
550  if(eff & EF_ADDITIVE)
551  this.renderflags |= RF_ADDITIVE;
552  if(eff & EF_BLUE)
553  adddynamiclight(this.origin, 200, '0.15 0.15 1.5');
554  if(eff & EF_RED)
555  adddynamiclight(this.origin, 200, '1.5 0.15 0.15');
556  // ignoring EF_NOGUNBOB
557  if(eff & EF_FULLBRIGHT)
558  this.renderflags |= RF_FULLBRIGHT;
559  if(eff & EF_FLAME)
560  {
561  boxparticles(particleeffectnum(EFFECT_EF_FLAME), this, this.absmin, this.absmax, this.velocity, this.velocity, bound(0, frametime, 0.1), 0);
562  //pointparticles(EFFECT_EF_FLAME, this.origin, '0 0 0', bound(0, frametime, 0.1));
563  }
564  if(eff & EF_STARDUST)
565  {
566  boxparticles(particleeffectnum(EFFECT_EF_STARDUST), this, this.absmin, this.absmax, this.velocity, this.velocity, bound(0, frametime, 0.1), 0);
567  //pointparticles(EFFECT_EF_STARDUST, this.origin, '0 0 0', bound(0, frametime, 0.1));
568  }
569  if(eff & EF_NOSHADOW)
570  this.renderflags |= RF_NOSHADOW;
571  if(eff & EF_NODEPTHTEST)
572  this.renderflags |= RF_DEPTHHACK;
573  // ignoring EF_SELECTABLE
574  if(eff & EF_DOUBLESIDED)
575  this.effects |= EF_DOUBLESIDED;
576  if(eff & EF_NOSELFSHADOW)
577  this.effects |= EF_NOSELFSHADOW;
578  if(eff & EF_DYNAMICMODELLIGHT)
580  // ignoring EF_UNUSED18, EF_UNUSED19, EF_RESTARTANIM_BIT, EF_TELEPORT_BIT, EF_LOWPRECISION
582  tref = EFFECT_TR_ROCKET.m_id;
584  tref = EFFECT_TR_GRENADE.m_id;
585  if(this.csqcmodel_modelflags & MF_GIB)
586  tref = EFFECT_TR_BLOOD.m_id;
588  {
589  // This will be hard to replace with MAKE_VECTORS because it's called as part of the predraw function
590  // as documented in csprogs.h in the engine. The globals can then be read in many places in the engine.
591  // However MF_ROTATE is currently only used in one place - might be possible to get rid of it entirely.
592  this.renderflags |= RF_USEAXIS;
593  makevectors(this.angles + '0 100 0' * fmod(time, 3.6));
594  }
596  tref = EFFECT_TR_WIZSPIKE.m_id;
598  tref = EFFECT_TR_SLIGHTBLOOD.m_id;
600  tref = EFFECT_TR_KNIGHTSPIKE.m_id;
602  tref = EFFECT_TR_VORESPIKE.m_id;
603 
604  this.traileffect = tref;
605 
606  if(this.drawmask)
607  Projectile_DrawTrail(this, this.origin);
608  else
609  Projectile_ResetTrail(this, this.origin);
610 
612  this.renderflags |= RF_ADDITIVE;
613  // also special in CSQCPlayer_GlowMod_Apply
614 
615  if(this.csqcmodel_modelflags & MF_ROCKET)
616  {
617  if(!this.snd_looping)
618  {
621  }
622  }
623  else
624  {
625  if(this.snd_looping)
626  {
628  this.snd_looping = 0;
629  }
630  }
631 }
const float RF_USEAXIS
Definition: csprogsdefs.qc:170
#define CSQCMODEL_EF_RESPAWNGHOST
const int MF_ROTATE
float alpha
Definition: items.qc:14
const int EF_DYNAMICMODELLIGHT
#define adddynamiclight
Definition: post.qh:29
const int MF_ROCKET
const int EF_NOSELFSHADOW
const float EF_FLAME
Definition: csprogsdefs.qc:302
const float RF_FULLBRIGHT
const float RF_NOSHADOW
const int EF_DIMLIGHT
float autocvar_cl_jetpack_attenuation
const int MF_TRACER2
float fmod(float e, float f)
Definition: mathlib.qc:208
origin
Definition: ent_cs.qc:114
const int EF_BRIGHTLIGHT
int csqcmodel_traileffect
const float EF_NODEPTHTEST
Definition: csprogsdefs.qc:304
const int EF_BRIGHTFIELD
float effects
Definition: csprogsdefs.qc:111
const float EF_NOSHADOW
Definition: csprogsdefs.qc:306
float renderflags
Definition: main.qh:95
void Projectile_DrawTrail(entity this, vector to)
Definition: projectile.qc:29
const float EF_ADDITIVE
Definition: csprogsdefs.qc:300
const int MF_TRACER
void Projectile_ResetTrail(entity this, vector to)
Definition: projectile.qc:23
vector absmax
Definition: csprogsdefs.qc:92
const float EF_NODRAW
Definition: csprogsdefs.qc:305
const int MF_ZOMGIB
const float EF_FULLBRIGHT
Definition: csprogsdefs.qc:303
const float RF_DEPTHHACK
Definition: csprogsdefs.qc:168
int csqcmodel_effects
int csqcmodel_modelflags
const float EF_BLUE
Definition: csprogsdefs.qc:301
float frametime
Definition: csprogsdefs.qc:17
const int MF_GIB
const float VOL_BASE
Definition: sound.qh:36
float drawmask
Definition: csprogsdefs.qc:95
const int CH_TRIGGER_SINGLE
Definition: sound.qh:13
const float RF_ADDITIVE
Definition: csprogsdefs.qc:169
const int MF_GRENADE
const float EF_RED
Definition: csprogsdefs.qc:307
const int MF_TRACER3
const int EF_DOUBLESIDED
vector angles
Definition: csprogsdefs.qc:104
#define sound(e, c, s, v, a)
Definition: sound.qh:52
vector absmin
Definition: csprogsdefs.qc:92
float time
Definition: csprogsdefs.qc:16
vector velocity
Definition: csprogsdefs.qc:103
#define makevectors
Definition: post.qh:21
float RF_DYNAMICMODELLIGHT
const float EF_STARDUST
Definition: csprogsdefs.qc:308
int snd_looping
#define particleeffectnum(e)
Definition: effect.qh:3
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CSQCModel_Hook_PreDraw()

void CSQCModel_Hook_PreDraw ( entity  this,
bool  isplayer 
)

Definition at line 644 of file csqcmodel_hooks.qc.

References anim_frame, anim_frame1time, anim_frame2, anim_frame2time, anim_prev_pmove_flags, anim_saveframe, anim_saveframe1time, anim_saveframe2, anim_saveframe2time, anim_state, animdecide_load_if_needed(), animdecide_setframes(), animdecide_setimplicitstate(), animdecide_setstate(), ANIMSTATE_DUCK, autocvar_cl_jetpack_attenuation, CSQCModel_ApplyStairSmoothing(), CSQCModel_AutoTagIndex_Apply(), CSQCModel_Effects_Apply(), CSQCModel_InterpolateAnimation_2To4_Do(), CSQCModel_InterpolateAnimation_2To4_Note(), CSQCModel_InterpolateAnimation_2To4_PreNote(), csqcmodel_isdead, csqcmodel_predraw_run, CSQCMODEL_PROPERTY_FRAME, CSQCMODEL_PROPERTY_FRAME2, CSQCMODEL_PROPERTY_LERPFRAC, csqcplayer, CSQCPlayer_FallbackFrame_Apply(), CSQCPlayer_LOD_Apply(), CSQCPlayer_ModelAppearance_Apply(), drawmask, flags, frame, frame1time, frame2, frame2time, framecount, free_skeleton_from_frames(), IS_ONGROUND, ISPLAYER_LOCAL, ISPLAYER_MODEL, isplayermodel, lerpfrac, lerpfrac4, MASK_NORMAL, maxs, mins, model, modelindex, MOVE_NORMAL, origin, skeleton_from_frames(), skeleton_loadinfo(), snd_looping, sound, trace_fraction, trace_startsolid, and VOL_BASE.

Referenced by CSQCModel_AutoTagIndex_Apply(), and CSQCModel_Draw().

645 {
647  return;
649 
650  if(!this.modelindex || this.model == "null")
651  {
652  this.drawmask = 0;
653  if(this.snd_looping > 0)
654  {
656  this.snd_looping = 0;
657  }
658  return;
659  }
660  else
661  this.drawmask = MASK_NORMAL;
662 
663  if((this.isplayermodel & ISPLAYER_MODEL) && this.drawmask) // this checks if it's a player MODEL!
664  {
666  CSQCPlayer_LOD_Apply(this);
667 
668  if(!isplayer)
669  {
670  skeleton_loadinfo(this);
671  bool doblend = (this.bone_upperbody >= 0);
673  if(doblend)
674  {
676  }
677  else
678  {
680  // just in case, clear these (we're animating in frame and frame3)
681  this.lerpfrac = 0;
682  this.lerpfrac4 = 0;
683  }
684  }
685  else
686  {
687  // we know that frame3 and frame4 fields, used by InterpolateAnimation, are left alone - but that is all we know!
688  skeleton_loadinfo(this);
689  bool doblend = (this.bone_upperbody >= 0);
690  bool onground = 0;
691  if(this == csqcplayer)
692  {
693  if(IS_ONGROUND(this))
694  onground = 1;
695  this.anim_prev_pmove_flags = this.flags;
696  if(this.flags & FL_DUCKED)
697  animdecide_setstate(this, this.anim_state | ANIMSTATE_DUCK, false);
698  else if(this.anim_state & ANIMSTATE_DUCK)
699  animdecide_setstate(this, this.anim_state - ANIMSTATE_DUCK, false);
700  }
701  else
702  {
703  tracebox(this.origin + '0 0 1', this.mins, this.maxs, this.origin - '0 0 4', MOVE_NORMAL, this);
705  onground = 1;
706  // predicted clients handle smoothing in the prediction code
707  this.origin = CSQCModel_ApplyStairSmoothing(this, onground, this.origin);
708  }
710  animdecide_setimplicitstate(this, onground);
712  int sf = 0;
713  if(this.anim_saveframe != this.anim_frame || this.anim_saveframe1time != this.anim_frame1time)
715  if(this.anim_saveframe2 != this.anim_frame2 || this.anim_saveframe2time != this.anim_frame2time)
717  this.anim_saveframe = this.anim_frame;
719  this.anim_saveframe2 = this.anim_frame2;
721  // Note: we always consider lerpfrac "changed", as it uses fixed values every time anyway.
722  // This ensures that .frame etc. are always written.
724  this.lerpfrac = (doblend ? 0.5 : 0);
725  this.frame = this.anim_frame;
726  this.frame1time = this.anim_frame1time;
727  this.frame2 = this.anim_frame2;
728  this.frame2time = this.anim_frame2time;
731  if(doblend)
732  {
734  }
735  else
736  {
738  // just in case, clear these (we're animating in frame and frame3)
739  this.lerpfrac = 0;
740  this.lerpfrac4 = 0;
741  }
742  }
743  }
744 
746 
748 }
int anim_frame2
void CSQCModel_Effects_Apply(entity this)
int anim_saveframe2time
int anim_frame2time
void animdecide_setframes(entity e, float support_blending,.float fld_frame,.float fld_frame1time,.float fld_frame2,.float fld_frame2time)
Definition: animdecide.qc:296
void animdecide_setstate(entity e, int newstate, float restart)
Definition: animdecide.qc:330
bool csqcmodel_isdead
float modelindex
Definition: csprogsdefs.qc:91
float frame2
secondary framegroup animation (strength = lerpfrac)
Definition: anim.qh:8
int isplayermodel
float autocvar_cl_jetpack_attenuation
void animdecide_load_if_needed(entity e)
Definition: animdecide.qc:53
const float MOVE_NORMAL
Definition: csprogsdefs.qc:252
#define IS_ONGROUND(s)
Definition: movetypes.qh:16
vector maxs
Definition: csprogsdefs.qc:113
float frame2time
start time of framegroup animation
Definition: anim.qh:24
origin
Definition: ent_cs.qc:114
void CSQCModel_InterpolateAnimation_2To4_Do(entity this)
Definition: cl_model.qc:109
void CSQCModel_AutoTagIndex_Apply(entity this)
const int CSQCMODEL_PROPERTY_FRAME2
Definition: common.qh:67
string model
Definition: csprogsdefs.qc:108
int anim_saveframe1time
void CSQCPlayer_LOD_Apply(entity this)
void CSQCPlayer_FallbackFrame_Apply(entity this)
vector mins
Definition: csprogsdefs.qc:113
const int ISPLAYER_LOCAL
Definition: common.qh:58
int anim_frame
float lerpfrac
strength of framegroup blend
Definition: anim.qh:15
void animdecide_setimplicitstate(entity e, float onground)
Definition: animdecide.qc:248
void CSQCPlayer_ModelAppearance_Apply(entity this, bool islocalplayer)
float lerpfrac4
strength of framegroup blend
Definition: anim.qh:19
const float VOL_BASE
Definition: sound.qh:36
void CSQCModel_InterpolateAnimation_2To4_PreNote(entity this, int sf)
Definition: cl_model.qc:37
int anim_prev_pmove_flags
int anim_state
Definition: animdecide.qh:108
const float MASK_NORMAL
Definition: csprogsdefs.qc:164
float drawmask
Definition: csprogsdefs.qc:95
const int CSQCMODEL_PROPERTY_LERPFRAC
Definition: common.qh:68
int anim_saveframe2
float flags
Definition: csprogsdefs.qc:129
const int CSQCMODEL_PROPERTY_FRAME
Definition: common.qh:61
void free_skeleton_from_frames(entity e)
int anim_frame1time
float frame
primary framegroup animation (strength = 1 - lerpfrac - lerpfrac3 - lerpfrac4)
Definition: anim.qh:6
vector CSQCModel_ApplyStairSmoothing(entity this, bool isonground, vector v)
Definition: cl_player.qc:245
int csqcmodel_predraw_run
entity csqcplayer
Definition: cl_player.qh:26
float trace_startsolid
Definition: csprogsdefs.qc:35
#define sound(e, c, s, v, a)
Definition: sound.qh:52
int framecount
Definition: main.qh:149
int anim_saveframe
void CSQCModel_InterpolateAnimation_2To4_Note(entity this, int sf, bool set_times)
Definition: cl_model.qc:73
const int ISPLAYER_MODEL
Definition: common.qh:56
const int ANIMSTATE_DUCK
Definition: animdecide.qh:127
void skeleton_from_frames(entity e, bool is_dead)
float trace_fraction
Definition: csprogsdefs.qc:36
void skeleton_loadinfo(entity e)
float frame1time
start time of framegroup animation
Definition: anim.qh:22
int snd_looping
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Variable Documentation

◆ autocvar__cl_color

int autocvar__cl_color

Definition at line 14 of file csqcmodel_hooks.qh.

Referenced by CSQCPlayer_ModelAppearance_Apply().

◆ autocvar__cl_playermodel

string autocvar__cl_playermodel

Definition at line 16 of file csqcmodel_hooks.qh.

Referenced by CSQCPlayer_ModelAppearance_Apply().

◆ autocvar__cl_playerskin

int autocvar__cl_playerskin

Definition at line 15 of file csqcmodel_hooks.qh.

Referenced by CSQCPlayer_ModelAppearance_Apply().

◆ autocvar_cl_deathglow

float autocvar_cl_deathglow

Definition at line 17 of file csqcmodel_hooks.qh.

Referenced by CSQCPlayer_ModelAppearance_Apply().

◆ autocvar_cl_deathglow_min

float autocvar_cl_deathglow_min = 0.5

Definition at line 18 of file csqcmodel_hooks.qh.

Referenced by CSQCPlayer_ModelAppearance_Apply().

◆ autocvar_cl_forcemyplayercolors

int autocvar_cl_forcemyplayercolors

Definition at line 13 of file csqcmodel_hooks.qh.

Referenced by CSQCPlayer_ModelAppearance_Apply().

◆ autocvar_cl_forcemyplayermodel

string autocvar_cl_forcemyplayermodel

Definition at line 11 of file csqcmodel_hooks.qh.

Referenced by CSQCPlayer_ModelAppearance_Apply().

◆ autocvar_cl_forcemyplayerskin

int autocvar_cl_forcemyplayerskin

Definition at line 12 of file csqcmodel_hooks.qh.

Referenced by CSQCPlayer_ModelAppearance_Apply().

◆ autocvar_cl_forceplayercolors

bool autocvar_cl_forceplayercolors

Definition at line 9 of file csqcmodel_hooks.qh.

◆ autocvar_cl_forceplayermodels

bool autocvar_cl_forceplayermodels

Definition at line 8 of file csqcmodel_hooks.qh.

Referenced by CSQCPlayer_ModelAppearance_Apply().

◆ autocvar_cl_forceuniqueplayercolors

bool autocvar_cl_forceuniqueplayercolors

Definition at line 10 of file csqcmodel_hooks.qh.

Referenced by CSQCPlayer_ModelAppearance_Apply().

◆ autocvar_cl_jetpack_attenuation

float autocvar_cl_jetpack_attenuation = 2

Definition at line 19 of file csqcmodel_hooks.qh.

Referenced by CSQCModel_Effects_Apply(), CSQCModel_Hook_PreDraw(), and Ent_Remove().

◆ autocvar_cl_loddistance1

float autocvar_cl_loddistance1 = 768

Definition at line 6 of file csqcmodel_hooks.qh.

Referenced by CSQCPlayer_LOD_Apply().

◆ autocvar_cl_loddistance2

float autocvar_cl_loddistance2 = 2048

Definition at line 7 of file csqcmodel_hooks.qh.

Referenced by CSQCPlayer_LOD_Apply().

◆ autocvar_cl_modeldetailreduction

int autocvar_cl_modeldetailreduction

Definition at line 5 of file csqcmodel_hooks.qh.

◆ autocvar_cl_playerdetailreduction

int autocvar_cl_playerdetailreduction

Definition at line 4 of file csqcmodel_hooks.qh.

Referenced by CSQCPlayer_LOD_Apply().

◆ autocvar_cl_respawn_ghosts_keepcolors

bool autocvar_cl_respawn_ghosts_keepcolors

Definition at line 3 of file csqcmodel_hooks.qh.

Referenced by CSQCPlayer_ModelAppearance_Apply().

◆ csqcmodel_effects

◆ csqcmodel_isdead

◆ csqcmodel_modelflags

int csqcmodel_modelflags

◆ csqcmodel_traileffect

int csqcmodel_traileffect

◆ EF_BRIGHTFIELD

const int EF_BRIGHTFIELD = BIT(0)

Definition at line 22 of file csqcmodel_hooks.qh.

Referenced by CSQCModel_Effects_Apply(), and W_Nexball_Attack2().

◆ EF_BRIGHTLIGHT

const int EF_BRIGHTLIGHT = BIT(2)

Definition at line 23 of file csqcmodel_hooks.qh.

Referenced by CSQCModel_Effects_Apply().

◆ EF_DIMLIGHT

const int EF_DIMLIGHT = BIT(3)

Definition at line 24 of file csqcmodel_hooks.qh.

Referenced by CSQCModel_Effects_Apply(), ctf_FlagSetup(), and Monster_Spawn_Setup().

◆ EF_DOUBLESIDED

const int EF_DOUBLESIDED = BIT(15)

◆ EF_DYNAMICMODELLIGHT

const int EF_DYNAMICMODELLIGHT = BIT(17)

Definition at line 27 of file csqcmodel_hooks.qh.

Referenced by CSQCModel_Effects_Apply().

◆ EF_NOSELFSHADOW

const int EF_NOSELFSHADOW = BIT(16)

Definition at line 26 of file csqcmodel_hooks.qh.

Referenced by CSQCModel_Effects_Apply().

◆ EF_RESTARTANIM_BIT

const int EF_RESTARTANIM_BIT = BIT(20)

◆ EF_TELEPORT_BIT

◆ isplayermodel

◆ MF_GIB

const int MF_GIB = BIT(2)

Definition at line 33 of file csqcmodel_hooks.qh.

Referenced by CSQCModel_Effects_Apply().

◆ MF_GRENADE

const int MF_GRENADE = BIT(1)

Definition at line 32 of file csqcmodel_hooks.qh.

Referenced by CSQCModel_Effects_Apply().

◆ MF_ROCKET

const int MF_ROCKET = BIT(0)

Definition at line 31 of file csqcmodel_hooks.qh.

Referenced by CSQCModel_Effects_Apply(), IsFlying(), player_powerups(), and PlayerThink().

◆ MF_ROTATE

const int MF_ROTATE = BIT(3)

Definition at line 34 of file csqcmodel_hooks.qh.

Referenced by CSQCModel_Effects_Apply().

◆ MF_TRACER

const int MF_TRACER = BIT(4)

Definition at line 35 of file csqcmodel_hooks.qh.

Referenced by CSQCModel_Effects_Apply().

◆ MF_TRACER2

const int MF_TRACER2 = BIT(6)

Definition at line 37 of file csqcmodel_hooks.qh.

Referenced by CSQCModel_Effects_Apply().

◆ MF_TRACER3

const int MF_TRACER3 = BIT(7)

Definition at line 38 of file csqcmodel_hooks.qh.

Referenced by CSQCModel_Effects_Apply().

◆ MF_ZOMGIB

const int MF_ZOMGIB = BIT(5)

Definition at line 36 of file csqcmodel_hooks.qh.

Referenced by CSQCModel_Effects_Apply().