]> de.git.xonotic.org Git - voretournament/voretournament.git/blobdiff - data/qcsrc/server/g_damage.qc
Due to the latest commit, screen flashes require the HUD to be enabled in order to...
[voretournament/voretournament.git] / data / qcsrc / server / g_damage.qc
index 4b304b89eb8fcc4b7da34d84ccd720786b503432..b0270d8cd78545d0ce6b5b946af2b3f0c67ce978 100644 (file)
@@ -730,7 +730,7 @@ void Damage (entity targ, entity inflictor, entity attacker, float damage, float
                                                {\r
                                                        teamdamage0 = max(attacker.dmg_team, cvar("g_teamdamage_threshold"));\r
                                                        attacker.dmg_team = attacker.dmg_team + damage;\r
-                                                       if(attacker.dmg_team > teamdamage0 && !g_ca)\r
+                                                       if(attacker.dmg_team > teamdamage0 && !g_ca && deathtype != DEATH_REGURGITATION)\r
                                                                mirrordamage = cvar("g_mirrordamage") * (attacker.dmg_team - teamdamage0);\r
                                                        mirrorforce = cvar("g_mirrordamage") * vlen(force);\r
                                                        if(g_ca)\r
@@ -798,6 +798,17 @@ void Damage (entity targ, entity inflictor, entity attacker, float damage, float
                        force = force * cvar("g_ctf_flagcarrier_selfforce");\r
                }\r
 \r
+               // skill-based damage offset for bots\r
+               if(skill && cvar("skill_offset"))\r
+               {\r
+                       float ofs;\r
+                       ofs = pow(skill / cvar("skill_offset_center"), cvar("skill_offset"));\r
+                       if(clienttype(attacker) == CLIENTTYPE_BOT)\r
+                               damage *= ofs;\r
+                       if(clienttype(targ) == CLIENTTYPE_BOT)\r
+                               damage /= ofs;\r
+               }\r
+\r
                // count the damage\r
                if(attacker)\r
                if(!targ.deadflag)\r
@@ -849,7 +860,7 @@ void Damage (entity targ, entity inflictor, entity attacker, float damage, float
                                                }\r
                                        }\r
                                }\r
-                               else\r
+                               else if(deathtype != DEATH_REGURGITATION)\r
                                {\r
                                        if(deathtype != DEATH_FIRE)\r
                                                attacker.typehitsound += 1;\r