summaryrefslogtreecommitdiffstats
path: root/sigencore/TeamMember.cpp
diff options
context:
space:
mode:
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))