From acf169219a3f51db82750851cf1dad44ff331de5 Mon Sep 17 00:00:00 2001 From: Michael Levin Date: Sat, 3 Oct 2009 11:15:10 +0000 Subject: * MAX()/MIN() macros need to be wrapped in parenthesis to work as expected! * Armour and local damage processing merged * Armour and local damage scripts now accept a "name" parameter for debug output * Norfenstein's non-locational damage formula now perfectly implemented -- there are restrictions! There can only be ONE layer of armour and all locational damage region files must cover the entire body and cannot overlap! * Turning on g_debugDamage to 2 or 3 provides additional information on how the damage modifier was calculated --- models/players/human_base/locdamage.cfg | 30 ++++++++++++++++++++++++++---- models/players/human_bsuit/locdamage.cfg | 16 ++++++++++++++-- 2 files changed, 40 insertions(+), 6 deletions(-) (limited to 'models') diff --git a/models/players/human_base/locdamage.cfg b/models/players/human_base/locdamage.cfg index cc4fd655..7dfb6fea 100644 --- a/models/players/human_base/locdamage.cfg +++ b/models/players/human_base/locdamage.cfg @@ -1,5 +1,8 @@ -// legs +// These regions must cover the entire body and cannot overlap otherwise +// the non-locational damage calculation will not be correct! + { + name "legs" minHeight 0.0 maxHeight 0.5 minAngle 0 @@ -7,8 +10,17 @@ modifier 0.5 } -// head { + name "torso" + minHeight 0.5 + maxHeight 0.9 + minAngle 0 + maxAngle 360 + modifier 1.0 +} + +{ + name "head" minHeight 0.9 maxHeight 1.0 minAngle 0 @@ -16,8 +28,8 @@ modifier 1.5 } -// legs, crouched { + name "legs crouch" minHeight 0.0 maxHeight 0.3 minAngle 0 @@ -26,8 +38,18 @@ crouch } -// head, crouched { + name "torso crouch" + minHeight 0.3 + maxHeight 0.86 + minAngle 0 + maxAngle 360 + modifier 1.0 + crouch +} + +{ + name "head crouch" minHeight 0.86 maxHeight 1.0 minAngle 0 diff --git a/models/players/human_bsuit/locdamage.cfg b/models/players/human_bsuit/locdamage.cfg index 53545954..63a6264b 100644 --- a/models/players/human_bsuit/locdamage.cfg +++ b/models/players/human_bsuit/locdamage.cfg @@ -1,5 +1,8 @@ -// legs +// These regions must cover the entire body and cannot overlap otherwise +// the non-locational damage calculation will not be correct! + { + name "legs" minHeight 0.0 maxHeight 0.5 minAngle 0 @@ -7,8 +10,17 @@ modifier 0.5 } -// head { + name "torso" + minHeight 0.5 + maxHeight 0.9 + minAngle 0 + maxAngle 360 + modifier 1.0 +} + +{ + name "head" minHeight 0.9 maxHeight 1.0 minAngle 0 -- cgit