]> git.rm.cloudns.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Add a cvar to prevent mirroring damage if the attack wasn't from a weapon (burning...
authorMario <mario@smbclan.net>
Wed, 13 Apr 2016 05:02:09 +0000 (15:02 +1000)
committerMario <mario@smbclan.net>
Wed, 13 Apr 2016 05:02:09 +0000 (15:02 +1000)
defaultXonotic.cfg
qcsrc/server/autocvars.qh
qcsrc/server/g_damage.qc

index e1531205ec0ced6ebe6f48f9b599e680eaaf7fb1..bdb24adef226949246566deb7aa60f23e473e275 100644 (file)
@@ -490,6 +490,7 @@ set g_tdm_on_dm_maps 0 "when this is set, all DM maps automatically support TDM"
 seta teamplay_mode 4 "default teamplay setting in team games. 1 = no friendly fire, self damage. 2 = friendly fire and self damage enabled. 3 = no friendly fire, but self damage enabled. 4 = obey the cvars g_mirrordamage*, g_friendlyfire* and g_teamdamage_threshold*"
 seta g_mirrordamage 0.700000   "for teamplay 4: mirror damage factor"
 seta g_mirrordamage_virtual 1  "for teamplay 4: do not actually apply mirror damage, just show graphics effect for it"
+seta g_mirrordamage_onlyweapons 0 "for teamplay 4: only apply mirror damage if the attack was from a weapon"
 seta g_friendlyfire 0.500000   "for teamplay 4: fiendly fire factor"
 seta g_friendlyfire_virtual 1  "for teamplay 4: do not actually apply friendly fire, just show graphics effect for it"
 seta g_friendlyfire_virtual_force 1    "for teamplay 4: apply force even though damage was made virtual only"
index 943efc4042c5ec4008edd322ed42df621f441478..c565298e8f509988b2e6c3d58d2888cda1e6e38a 100644 (file)
@@ -224,6 +224,7 @@ bool autocvar_g_instagib_mirrordamage;
 bool autocvar_g_instagib_friendlypush = true;
 #define autocvar_g_mirrordamage cvar("g_mirrordamage")
 #define autocvar_g_mirrordamage_virtual cvar("g_mirrordamage_virtual")
+bool autocvar_g_mirrordamage_onlyweapons;
 
 float autocvar_g_movement_highspeed = 1;
 string autocvar_g_mutatormsg;
index 208ae62e59365a347c18e3477c863bca8f506d06..86e260e9f9f5643a557a69c06b6c686698e46318 100644 (file)
@@ -873,6 +873,7 @@ void Damage (entity targ, entity inflictor, entity attacker, float damage, int d
        setself(this);
 
        // apply mirror damage if any
+       if(!autocvar_g_mirrordamage_onlyweapons || DEATH_WEAPONOF(deathtype) != WEP_Null)
        if(mirrordamage > 0 || mirrorforce > 0)
        {
                attacker = attacker_save;