diff options
author | Ben Boeckel <MathStuf@gmail.com> | 2009-02-13 01:28:11 -0500 |
---|---|---|
committer | Ben Boeckel <MathStuf@gmail.com> | 2009-02-13 01:28:11 -0500 |
commit | 3a8dec31d69ec711cabb4fcea68a765181263e77 (patch) | |
tree | 6af135d6da07cba71cd7f900c01fd5050164c671 /sigencore | |
parent | 928a361019ab4fe98f7432cd7fcccebbc390f9f5 (diff) | |
download | sigen-3a8dec31d69ec711cabb4fcea68a765181263e77.tar.gz sigen-3a8dec31d69ec711cabb4fcea68a765181263e77.tar.xz sigen-3a8dec31d69ec711cabb4fcea68a765181263e77.zip |
Fixed up level methods
Diffstat (limited to 'sigencore')
-rw-r--r-- | sigencore/TeamMember.cpp | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/sigencore/TeamMember.cpp b/sigencore/TeamMember.cpp index eb0aaa02..a01229c5 100644 --- a/sigencore/TeamMember.cpp +++ b/sigencore/TeamMember.cpp @@ -229,8 +229,6 @@ Sigencore::TeamMember::Gender Sigencore::TeamMember::gender() const bool Sigencore::TeamMember::setLevel(const int level) { - if (level == m_level) - return false; if ((level <= 0) || (m_sigmod->rules()->maxLevel() < level)) return false; // TODO: Update stats @@ -241,6 +239,11 @@ bool Sigencore::TeamMember::setLevel(const int level) return true; } +bool Sigencore::TeamMember::giveLevels(const int levels) +{ + return setLevel(m_level + levels); +} + int Sigencore::TeamMember::level() const { return m_level; @@ -256,6 +259,8 @@ int Sigencore::TeamMember::calcLevel(const Sigmod::Species::Style growth, const bool Sigencore::TeamMember::setLevelExperience(const long long levelExp) { + if (levelExp < 0) + return false; const int level = calcLevel(m_species->growth(), levelExp); if ((level <= 0) || (m_sigmod->rules()->maxLevel() < level)) return false; @@ -270,6 +275,11 @@ bool Sigencore::TeamMember::setLevelExperience(const long long levelExp) return true; } +bool Sigencore::TeamMember::giveLevelExperience(const long long levelExp) +{ + return setLevelExperience(m_levelExp + levelExp); +} + long long Sigencore::TeamMember::levelExperience() const { return m_levelExp; |