diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | src/game-server/character.cpp | 7 |
2 files changed, 9 insertions, 3 deletions
@@ -1,3 +1,8 @@ +2008-07-27 Roderic Morris <roderic@ccs.neu.edu> + + * src/game-server/character.cpp: take into account weapon skills + in damage calculation. + 2008-07-24 David Athay <ko2fan@gmail.com> * src/defines.h, src/game-server/movingobject.cpp, diff --git a/src/game-server/character.cpp b/src/game-server/character.cpp index 3fb938c8..b2420c31 100644 --- a/src/game-server/character.cpp +++ b/src/game-server/character.cpp @@ -95,11 +95,12 @@ void Character::perform() int type = ic ? ic->getModifiers().getValue(MOD_WEAPON_TYPE) : WPNTYPE_NONE; Damage damage; - damage.base = getModifiedAttribute(BASE_ATTR_PHY_ATK_MIN); + damage.base = getModifiedAttribute(BASE_ATTR_PHY_ATK_MIN) + + (rand() % getModifiedAttribute(CHAR_SKILL_WEAPON_BEGIN + type)); damage.delta = getModifiedAttribute(BASE_ATTR_PHY_ATK_DELTA); damage.type = DAMAGE_PHYSICAL; - damage.cth = getModifiedAttribute(BASE_ATTR_HIT) - + getModifiedAttribute(CHAR_SKILL_WEAPON_BEGIN + type); + damage.cth = getModifiedAttribute(BASE_ATTR_HIT) + + getModifiedAttribute(CHAR_SKILL_WEAPON_BEGIN + type); damage.usedSkill = CHAR_SKILL_WEAPON_BEGIN + type; if (type) { |