From 3a8dec31d69ec711cabb4fcea68a765181263e77 Mon Sep 17 00:00:00 2001 From: Ben Boeckel Date: Fri, 13 Feb 2009 01:28:11 -0500 Subject: Fixed up level methods --- sigencore/TeamMember.cpp | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'sigencore/TeamMember.cpp') 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; -- cgit