diff --git a/server/gameserver/ability.cc b/server/gameserver/ability.cc index 24f0789b..f739cf75 100644 --- a/server/gameserver/ability.cc +++ b/server/gameserver/ability.cc @@ -493,3 +493,19 @@ void Ability::RecalcAttrRuduce(int attr_id) } std::get<0>(attr_dec_[attr_id]) = new_val; } + +float Ability::GetAttrAddition(int attr_id) +{ + if (!IsValidHumanAttr(attr_id)) { + return 0.0f; + } + return std::get<0>(attr_add_[attr_id]); +} + +float Ability::GetAttrRuduce(int attr_id) +{ + if (!IsValidHumanAttr(attr_id)) { + return 0.0f; + } + return std::get<0>(attr_dec_[attr_id]); +} diff --git a/server/gameserver/ability.h b/server/gameserver/ability.h index 6b7965e7..3db1b28c 100644 --- a/server/gameserver/ability.h +++ b/server/gameserver/ability.h @@ -73,6 +73,8 @@ class Ability void RemoveAttrRuduce(AttrRuduceHandle handler); void RecalcAttrAddition(int attr_id); void RecalcAttrRuduce(int attr_id); + float GetAttrAddition(int attr_id); + float GetAttrRuduce(int attr_id); private: CreatureWeakPtr owner_;