REPLICATE(cvar_cl_allow_uid2name, bool, "cl_allow_uid2name");
+REPLICATE(cvar_cl_allow_uidranking, bool, "cl_allow_uidranking");
+
REPLICATE(cvar_cl_autoscreenshot, int, "cl_autoscreenshot");
REPLICATE(cvar_cl_autotaunt, float, "cl_autotaunt");
REPLICATE(cvar_cl_handicap, float, "cl_handicap");
+REPLICATE(cvar_cl_gunalign, int, "cl_gunalign");
+
REPLICATE(cvar_cl_jetpack_jump, bool, "cl_jetpack_jump");
REPLICATE(cvar_cl_movement_track_canjump, bool, "cl_movement_track_canjump");
{
string s = string_null;
+ if (f == 0)
+ LOG_INFO("Warning: requesting cvar values is deprecated. Client should send them automatically using REPLICATE.\n");
+
if (f > 0)
s = strcat1(argv(f));
allow_mutatorblocked = M_ARGV(3, bool);
if(allguns)
- d = boolean((weaponinfo.spawnflags & WEP_FLAG_NORMAL) && !(weaponinfo.spawnflags & WEP_FLAG_HIDDEN));
+ d = boolean((weaponinfo.spawnflags & WEP_FLAG_NORMAL) && !(weaponinfo.spawnflags & (WEP_FLAG_HIDDEN | WEP_FLAG_SPECIALATTACK)));
else if(!mutator_returnvalue)
d = !(!weaponinfo.weaponstart);
WepSet ret = '0 0 0';
FOREACH(Weapons, it != WEP_Null, {
int w = want_weapon(it, false);
- if(w & 1)
+ if (w & 1)
ret |= it.m_wepset;
});
return ret;
{
WepSet ret = '0 0 0';
FOREACH(Weapons, it != WEP_Null, {
- if(!(it.spawnflags & WEP_FLAG_MUTATORBLOCKED))
+ if (!(it.spawnflags & (WEP_FLAG_MUTATORBLOCKED | WEP_FLAG_SPECIALATTACK)))
ret |= it.m_wepset;
});
return ret;
{
WepSet ret = '0 0 0';
FOREACH(Weapons, it != WEP_Null, {
- if(!(it.spawnflags & WEP_FLAG_MUTATORBLOCKED) && (it.spawnflags & WEP_FLAG_NORMAL) && !(it.spawnflags & WEP_FLAG_HIDDEN))
+ if ((it.spawnflags & WEP_FLAG_NORMAL) && !(it.spawnflags & (WEP_FLAG_MUTATORBLOCKED | WEP_FLAG_HIDDEN | WEP_FLAG_SPECIALATTACK)))
ret |= it.m_wepset;
});
return ret;
return false; // no checks here
else if(this.classname == "grapplinghook")
RemoveHook(this);
- else if(this.classname == "spike")
- {
- W_Crylink_Dequeue(this);
- delete(this);
- }
else
delete(this);
return true;