From 35ad701382a6fa80b7d9edf4b51c7e1c7e5ef55f Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Tue, 6 Sep 2022 10:48:58 +0800 Subject: [PATCH] 1 --- server/gameserver/attr.cc | 20 ++++++++++++++++++++ server/gameserver/attr.h | 3 +++ 2 files changed, 23 insertions(+) diff --git a/server/gameserver/attr.cc b/server/gameserver/attr.cc index c4b12970..adf4d4fe 100644 --- a/server/gameserver/attr.cc +++ b/server/gameserver/attr.cc @@ -2,10 +2,19 @@ #include "attr.h" +#include "creature.h" + float Attr::CalcDmg(Creature* target, int weapon_uniid) { float total_atk = (GetTotalAtk() / 100 + 1) * GetWeaponAtk(); float normal_dmg = total_atk * (1 - target->attr->GetDef() / 1000); + float crit = IsCrit() ? 1 + GetCritRate() : 1; + float dodge = IsDodge() ? 1 + GetDodgeRate() : 1; + } + +float Attr::GetTotalAtk() +{ + return 0; } float Attr::GetDef() @@ -33,3 +42,14 @@ bool Attr::IsDodge() { return true; } + +float Attr::GetCritRate() +{ + return 0; +} + + +float Attr::GetDodgeRate() +{ + return 0; +} diff --git a/server/gameserver/attr.h b/server/gameserver/attr.h index de6896d4..802f7330 100644 --- a/server/gameserver/attr.h +++ b/server/gameserver/attr.h @@ -21,10 +21,13 @@ class Attr float GetDef(); private: + float GetTotalAtk(); float GetHeroTotalAtk(); float GetWeaponAtk(); bool IsCrit(); + float GetCritRate(); bool IsDodge(); + float GetDodgeRate(); private: CreatureWeakPtr owner_;