}
void crosshair_trace_plusvisibletriggers(entity pl)
+{
+ crosshair_trace_plusvisibletriggers__is_wz(pl, false);
+}
+
+void WarpZone_crosshair_trace_plusvisibletriggers(entity pl)
+{
+ crosshair_trace_plusvisibletriggers__is_wz(pl, true);
+}
+
+void crosshair_trace_plusvisibletriggers__is_wz(entity pl, bool is_wz)
{
FOREACH_ENTITY_FLOAT(solid, SOLID_TRIGGER,
{
}
});
- crosshair_trace(pl);
+ if (is_wz)
+ WarpZone_crosshair_trace(pl);
+ else
+ crosshair_trace(pl);
IL_EACH(g_ctrace_changed, true, { it.solid = SOLID_TRIGGER; });
return ammoitems;
}
-.int solid_prev;
string formatmessage(entity this, string msg)
{
float p, p1, p2;
if(!traced)
{
- IL_EACH(g_items, true,
- {
- it.solid_prev = it.solid;
- it.solid = SOLID_BSP;
- });
- WarpZone_crosshair_trace(this);
- IL_EACH(g_items, true,
- {
- it.solid = it.solid_prev;
- it.solid_prev = 0;
- });
+ WarpZone_crosshair_trace_plusvisibletriggers(this);
cursor = trace_endpos;
cursor_ent = trace_ent;
traced = true;
REPLICATE(cvar_g_xonoticversion, string, "g_xonoticversion");
+REPLICATE(cvar_cl_cts_noautoswitch, bool, "cl_cts_noautoswitch");
+
/**
* @param f -1: cleanup, 0: request, 1: receive
*/
for (i = 0; i < t; ++i)
{
s = argv(i);
- FOREACH(Weapons, it != WEP_Null, {
- if(it.netname == s)
- {
- g_weaponarena_weapons |= (it.m_wepset);
- g_weaponarena_list = strcat(g_weaponarena_list, it.m_name, " & ");
- break;
- }
- });
+ Weapon wep = Weapons_fromstr(s);
+ if(wep != WEP_Null)
+ {
+ g_weaponarena_weapons |= (wep.m_wepset);
+ g_weaponarena_list = strcat(g_weaponarena_list, wep.m_name, " & ");
+ }
}
g_weaponarena_list = strzone(substring(g_weaponarena_list, 0, strlen(g_weaponarena_list) - 3));
}
});
}
+ if(cvar("g_balance_superweapons_time") < 0)
+ start_items |= IT_UNLIMITED_SUPERWEAPONS;
+
if(!cvar("g_use_ammunition"))
start_items |= IT_UNLIMITED_AMMO;
builtin_remove(e);
}
-void InitializeEntity(entity e, void(entity this) func, float order)
+void InitializeEntity(entity e, void(entity this) func, int order)
{
entity prev, cur;