Notification_GetCvars();
+ ReplicateVars(this, s, f);
+
GetCvars_handleFloat(s, f, autoswitch, "cl_autoswitch");
GetCvars_handleFloat(s, f, cvar_cl_autoscreenshot, "cl_autoscreenshot");
GetCvars_handleFloat(s, f, cvar_cl_jetpack_jump, "cl_jetpack_jump");
MUTATOR_CALLHOOK(SetStartItems);
- if ((start_items & ITEM_Jetpack.m_itemid) || (g_grappling_hook && (start_weapons & WEPSET_HOOK)))
+ if (start_items & ITEM_Jetpack.m_itemid)
{
start_items |= ITEM_JetpackRegen.m_itemid;
start_ammo_fuel = max(start_ammo_fuel, cvar("g_balance_fuel_rotstable"));
{
e = get_weaponinfo(i);
if(precache_weapons & WepSet_FromWeapon(i))
- WEP_ACTION(i, WR_INIT);
+ _WEP_ACTION(i, WR_INIT);
}
start_ammo_shells = max(0, start_ammo_shells);
return true;
}
-#undef sound
-void sound(entity e, float chan, string samp, float vol, float attenu)
-{
- if (!sound_allowed(MSG_BROADCAST, e))
- return;
- sound7(e, chan, samp, vol, attenu, 0, 0);
-}
-
void soundtoat(float _dest, entity e, vector o, float chan, string samp, float vol, float attenu)
{
float entno, idx;
if (entno >= 8192 || chan < 0 || chan > 7)
{
float idx, sflags;
- idx = precache_sound_index("misc/null.wav");
+ idx = precache_sound_index(SND(Null));
sflags = SND_LARGEENTITY;
if (idx >= 256)
sflags |= SND_LARGESOUND;
if (time > e.spamtime)
{
e.spamtime = time;
- sound(e, chan, samp, vol, _atten);
+ _sound(e, chan, samp, vol, _atten);
return true;
}
return false;
if (autocvar_bot_sound_monopoly)
return;
- sound(world, CH_INFO, samp, VOL_BASE, ATTEN_NONE);
+ _sound(world, CH_INFO, samp, VOL_BASE, ATTEN_NONE);
}
void PrecachePlayerSounds(string f);
void precache()
{SELFPARAM();
// gamemode related things
- precache_model ("models/misc/chatbubble.spr");
- precache_model("models/ice/ice.md3");
// Precache all player models if desired
if (autocvar_sv_precacheplayermodels)
}
// gore and miscellaneous sounds
- //precache_sound ("misc/h2ohit.wav");
- precache_model ("models/hook.md3");
- precache_sound ("misc/armorimpact.wav");
- precache_sound ("misc/bodyimpact1.wav");
- precache_sound ("misc/bodyimpact2.wav");
- precache_sound ("misc/gib.wav");
- precache_sound ("misc/gib_splat01.wav");
- precache_sound ("misc/gib_splat02.wav");
- precache_sound ("misc/gib_splat03.wav");
- precache_sound ("misc/gib_splat04.wav");
PrecacheGlobalSound((globalsound_fall = "misc/hitground 4"));
PrecacheGlobalSound((globalsound_metalfall = "misc/metalhitground 4"));
- precache_sound ("misc/null.wav");
- precache_sound ("misc/spawn.wav");
- precache_sound ("misc/talk.wav");
- precache_sound ("misc/teleport.wav");
- precache_sound ("misc/poweroff.wav");
- precache_sound ("player/lava.wav");
- precache_sound ("player/slime.wav");
-
- precache_model ("models/sprites/0.spr32");
- precache_model ("models/sprites/1.spr32");
- precache_model ("models/sprites/2.spr32");
- precache_model ("models/sprites/3.spr32");
- precache_model ("models/sprites/4.spr32");
- precache_model ("models/sprites/5.spr32");
- precache_model ("models/sprites/6.spr32");
- precache_model ("models/sprites/7.spr32");
- precache_model ("models/sprites/8.spr32");
- precache_model ("models/sprites/9.spr32");
- precache_model ("models/sprites/10.spr32");
-
- // common weapon precaches
- precache_sound (W_Sound("reload")); // until weapons have individual reload sounds, precache the reload sound here
- precache_sound (W_Sound("weapon_switch"));
- precache_sound (W_Sound("weaponpickup"));
- precache_sound (W_Sound("unavailable"));
- precache_sound (W_Sound("dryfire"));
- if (g_grappling_hook)
- {
- precache_sound (W_Sound("hook_fire")); // hook
- precache_sound (W_Sound("hook_impact")); // hook
- }
-
- precache_model("models/elaser.mdl");
- precache_model("models/laser.mdl");
- precache_model("models/ebomb.mdl");
#if 0
// Disabled this code because it simply does not work (e.g. ignores bgmvolume, overlaps with "cd loop" controlled tracks).
ambientsound ('0 0 0', self.noise, VOL_BASE, ATTEN_NONE);
}
#endif
-
-#include "precache-for-csqc.inc"
}
if (!e || e.initialize_entity)
{
// make a proxy initializer entity
- entity e_old;
- e_old = e;
- e = spawn();
- e.classname = "initialize_entity";
+ entity e_old = e;
+ e = new(initialize_entity);
e.enemy = e_old;
}
}
void InitializeEntitiesRun()
{SELFPARAM();
- entity startoflist;
- startoflist = initialize_entity_first;
- initialize_entity_first = world;
+ entity startoflist = initialize_entity_first;
+ initialize_entity_first = NULL;
remove = remove_except_protected;
- for (self = startoflist; self; self = self.initialize_entity_next)
+ for (entity e = startoflist; e; e = e.initialize_entity_next)
{
- self.remove_except_protected_forbidden = 1;
+ e.remove_except_protected_forbidden = 1;
}
- for (self = startoflist; self; )
+ for (entity e = startoflist; e; )
{
- entity e;
- var void(void) func;
- e = self.initialize_entity_next;
- func = self.initialize_entity;
- self.initialize_entity_order = 0;
- self.initialize_entity = func_null;
- self.initialize_entity_next = world;
- self.remove_except_protected_forbidden = 0;
- if (self.classname == "initialize_entity")
+ e.remove_except_protected_forbidden = 0;
+ e.initialize_entity_order = 0;
+ entity next = e.initialize_entity_next;
+ e.initialize_entity_next = NULL;
+ var void() func = e.initialize_entity;
+ e.initialize_entity = func_null;
+ if (e.classname == "initialize_entity")
{
- entity e_old;
- e_old = self.enemy;
- builtin_remove(self);
- self = e_old;
+ entity wrappee = e.enemy;
+ builtin_remove(e);
+ e = wrappee;
+ }
+ //dprint("Delayed initialization: ", e.classname, "\n");
+ if (func)
+ {
+ WITH(entity, self, e, func());
}
- //dprint("Delayed initialization: ", self.classname, "\n");
- if(func)
- func();
else
{
- eprint(self);
- backtrace(strcat("Null function in: ", self.classname, "\n"));
+ eprint(e);
+ backtrace(strcat("Null function in: ", e.classname, "\n"));
}
- self = e;
+ e = next;
}
remove = remove_unsafely;
}
void UncustomizeEntitiesRun()
{SELFPARAM();
- entity oldself;
- oldself = self;
- for (self = world; (self = findfloat(self, uncustomizeentityforclient_set, 1)); )
- self.uncustomizeentityforclient();
- self = oldself;
+ for (entity e = NULL; (e = findfloat(e, uncustomizeentityforclient_set, 1)); )
+ {
+ WITH(entity, self, e, e.uncustomizeentityforclient());
+ }
}
void SetCustomizer(entity e, float(void) customizer, void(void) uncustomizer)
{
{
mi = e.mins;
ma = e.maxs;
- setmodel(e, "null");
+ setmodel(e, MDL_Null);
setsize(e, mi, ma);
}
float sz;
e = spawn();
e.classname = "modeleffect";
- setmodel(e, m);
+ _setmodel(e, m);
e.frame = f;
setorigin(e, o);
e.velocity = v;