6 if(!actor.statuseffects)
14 .int flg = statuseffect_flags[this.
m_id];
15 int oldflag = data.(flg);
17 if(oldflag != data.(flg))
18 StatusEffects_update(actor);
22 if(
time > actor.statuseffects.statuseffect_time[
this.m_id])
31 if(!actor.statuseffects)
32 StatusEffects_new(actor);
35 actor.statuseffects.statuseffect_time[this.
m_id] = eff_time;
36 actor.statuseffects.statuseffect_flags[this.
m_id] = eff_flags;
37 StatusEffects_update(actor);
46 if(removal_type ==
STATUSEFFECT_REMOVE_NORMAL && !(data.statuseffect_flags[
this.m_id] & STATUSEFFECT_FLAG_PERSISTENT) &&
this.m_active(
this, actor))
48 data.statuseffect_time[this.
m_id] = 0;
49 data.statuseffect_flags[this.
m_id] = 0;
50 StatusEffects_update(actor);
61 if (it.move_movetype == MOVETYPE_NOCLIP || !it.statuseffects) continue;
62 StatusEffects_tick(it);
87 StatusEffects_clearall(player.statuseffects_store);
90 if(player.statuseffects && player.statuseffects.owner == player)
91 StatusEffects_delete(player);
98 StatusEffects_removeall(it, STATUSEFFECT_REMOVE_NORMAL);
99 StatusEffects_clearall(it.statuseffects);
100 StatusEffects_update(it);
110 client.statuseffects = spectatee.statuseffects;
117 if(player.statuseffects && player.statuseffects.owner == player)
119 StatusEffects_clearall(player.statuseffects);
120 StatusEffects_update(player);
124 StatusEffects_clearall(player.statuseffects_store);
125 player.statuseffects =
NULL;
#define IL_EACH(this, cond, body)
void SpectateCopy(entity this, entity spectatee)
IntrusiveList g_damagedbycontents
#define FOREACH_CLIENT(cond, body)
Effect is being removed by a function, calls regular removal mechanics.
#define METHOD(cname, name, prototype)
Effect is currently being granted passively.
MUTATOR_HOOKFUNCTION(status_effects, SV_StartFrame)
#define BITSET(var, mask, flag)
#define sound(e, c, s, v, a)