summaryrefslogtreecommitdiffstats
path: root/sigencore/TeamMember.cpp
diff options
context:
space:
mode:
authorBen Boeckel <MathStuf@gmail.com>2009-02-13 17:47:55 -0500
committerBen Boeckel <MathStuf@gmail.com>2009-02-13 17:47:55 -0500
commit73f372aacccfc6e35b30817ad4c6f52a0f4e630a (patch)
treef68e567d4c939907d4c24970cc9866f89af9a2bc /sigencore/TeamMember.cpp
parente247d49bd20fbbf6c2b275c86370300b0f36bb39 (diff)
downloadsigen-73f372aacccfc6e35b30817ad4c6f52a0f4e630a.tar.gz
sigen-73f372aacccfc6e35b30817ad4c6f52a0f4e630a.tar.xz
sigen-73f372aacccfc6e35b30817ad4c6f52a0f4e630a.zip
Add recalc stat methods
Diffstat (limited to 'sigencore/TeamMember.cpp')
-rw-r--r--sigencore/TeamMember.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/sigencore/TeamMember.cpp b/sigencore/TeamMember.cpp
index 089df76f..76f95062 100644
--- a/sigencore/TeamMember.cpp
+++ b/sigencore/TeamMember.cpp
@@ -486,6 +486,28 @@ int Sigencore::TeamMember::calcStat(Sigscript::SigmodWrapper* sigmod, const Sigm
return statValue * multiplier;
}
+void Sigencore::TeamMember::recalcStats()
+{
+ // FIXME?
+ recalcStat(Sigmod::ST_HP);
+ recalcStat(Sigmod::ST_Attack);
+ recalcStat(Sigmod::ST_Defense);
+ recalcStat(Sigmod::ST_Speed);
+ if (m_sigmod->rules()->specialSplit())
+ {
+ recalcStat(Sigmod::ST_SpecialAttack);
+ recalcStat(Sigmod::ST_SpecialDefense);
+ }
+ else
+ recalcStat(Sigmod::ST_Special);
+}
+
+void Sigencore::TeamMember::recalcStat(const Sigmod::Stat stat)
+{
+ // FIXME?
+ emit(statValueChanged(stat, statValue(stat)));
+}
+
bool Sigencore::TeamMember::addAbility(Sigscript::AbilityWrapper* ability)
{
if ((m_abilities.size() < m_sigmod->rules()->maxAbilities()) && !m_abilities.contains(ability))