locs_enable 0
pausable 0
set g_spawnshieldtime 1 "number of seconds you are invincible after you spawned, this shield is lost after you fire"
+set g_spawnshield_blockdamage 1 "how much spawn shield protects you from damage (1 = full protection)"
set g_antilag 2 "AntiLag (0 = no AntiLag, 1 = verified client side hit scan, 2 = server side hit scan in the past, 3 = unverified client side hit scan)"
set g_antilag_nudge 0 "don't touch"
set g_shootfromeye 0 "shots are fired from your eye/crosshair; visual gun position can still be influenced by cl_gunalign 1 and 2"
bool autocvar_g_spawn_useallspawns;
bool autocvar_g_spawnpoints_auto_move_out_of_solid;
#define autocvar_g_spawnshieldtime cvar("g_spawnshieldtime")
+float autocvar_g_spawnshield_blockdamage;
float autocvar_g_teamdamage_resetspeed;
float autocvar_g_teamdamage_threshold;
bool autocvar_g_telefrags;
this.istypefrag = 0;
}
+ if (time < this.spawnshieldtime && autocvar_g_spawnshield_blockdamage < 1)
+ {
+ vector v = healtharmor_applydamage(this.armorvalue, max(0, autocvar_g_spawnshield_blockdamage), deathtype, damage);
+ take = v.x;
+ save = v.y;
+ }
+
frag_damage = damage;
MUTATOR_CALLHOOK(PlayerDamage_SplitHealthArmor, inflictor, attacker, this, force, take, save);
take = bound(0, damage_take, this.health);
if (take > 100)
Violence_GibSplash_At(hitloc, force * -0.2, 3, 1, this, attacker);
- if (time >= this.spawnshieldtime)
+ if (time >= this.spawnshieldtime || autocvar_g_spawnshield_blockdamage < 1)
{
if (!(this.flags & FL_GODMODE))
{