20 entity expef = EFFECT_NADE_EXPLODE;
42 randomp.x = randomr *
cos(randomw);
43 randomp.y = randomr *
sin(randomw);
54 float current_dark_time = this.
ltime -
time - 0.1;
65 case 1:
if(it == this.
realowner)
continue;
67 STAT(NADE_DARKNESS_TIME, it) =
time + 0.1;
73 entity fountain =
new(nade_darkness_fountain);
74 fountain.owner = this.
owner;
76 fountain.origin = this.
origin;
77 setorigin(fountain, fountain.origin);
79 fountain.nextthink =
time;
81 fountain.team = this.
team;
83 fountain.projectiledeathtype = DEATH_NADE.m_id;
84 fountain.bot_dodge =
false;
85 setsize(fountain,
'-16 -16 -16',
'16 16 16');
86 fountain.nade_special_time =
time + 0.3;
87 fountain.angles = this.
angles;
91 setmodel(fountain, MDL_PROJECTILE_GRENADE);
94 setattachment(
timer, fountain,
"");
99 timer.wait = fountain.wait;
101 timer.owner = fountain;
121 if (
STAT(NADE_DARKNESS_TIME) >
time)
146 PAR(_(
"The %s detonates after a short delay, creating a dark field which temporarily blinds enemies who enter it."),
COLORED_NAME(
this));
147 PAR(_(
"This is sort of the opposite of the %s."),
COLORED_NAME(NADE_TYPE_VEIL));
#define MUTATOR_HOOKFUNCTION(...)
var entity(vector mins, vector maxs,.entity tofield) findbox_tofield_OrFallback
float GetResource(entity e, Resource res_type)
Returns the current amount of resource the given entity has.
#define drawfill(position, size, rgb, alpha, flag)
#define COLORED_NAME(this)
#define setmodel(this, m)
const float DRAWFLAG_NORMAL
void nade_darkness_boom(entity this)
void nade_darkness_think(entity this)
bool autocvar_g_nades_darkness_teamcheck
bool autocvar_g_nades_darkness_explode
float autocvar_g_nades_darkness_time
void Send_Effect(entity eff, vector eff_loc, vector eff_vel, int eff_cnt)
void Send_Effect_Except(entity eff, vector eff_loc, vector eff_vel, int eff_cnt, vector eff_col_min, vector eff_col_max, entity ignore)
#define FOREACH_ENTITY_RADIUS(org, dist, cond, body)
noref float vid_conheight
void set_movetype(entity this, int mt)
void nade_normal_boom(entity this)
#define METHOD(cname, name, prototype)
#define round_handler_IsActive()
#define round_handler_IsRoundStarted()
#define sound(e, c, s, v, a)
#define PAR(...)
Adds an individually translatable paragraph to PAGE_TEXT without having to deal with strcat and sprin...
vector nades_PlayerColor(entity this, bool isPants)
void nade_timer_think(entity this)
float autocvar_g_nades_nade_radius
#define IS_REAL_CLIENT(v)