diff options
| author | Ben Boeckel <MathStuf@gmail.com> | 2009-02-22 22:52:19 -0500 |
|---|---|---|
| committer | Ben Boeckel <MathStuf@gmail.com> | 2009-02-22 22:52:19 -0500 |
| commit | 2cf202f25626b96703a5f7dab5cfebec32125a21 (patch) | |
| tree | de483d0feebc7b42b16a6cf1a9c31190b9ac5c64 /sigencore/Creature.cpp | |
| parent | c43f66f7697a783944a6f81805609dff16735cc6 (diff) | |
Add completeStats method to Creature
Diffstat (limited to 'sigencore/Creature.cpp')
| -rw-r--r-- | sigencore/Creature.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/sigencore/Creature.cpp b/sigencore/Creature.cpp index db2950b6..11affb49 100644 --- a/sigencore/Creature.cpp +++ b/sigencore/Creature.cpp @@ -610,6 +610,21 @@ void Sigencore::Creature::completeData() emit(initialized()); } +void Sigencore::Creature::completeStats() +{ + if (m_sigmod->rules()->specialSplit() && m_sigmod->rules()->specialDVSplit()) + { + for (int i = Sigmod::ST_HP; i <= Sigmod::ST_SpecialDefense; ++i) + m_dv[i] = qrand() & 31; + } + else + { + for (int i = Sigmod::ST_Attack; i <= Sigmod::ST_Special; ++i) + m_dv[i] = qrand() & 15; + m_dv[Sigmod::ST_HP] = ((m_dv[Sigmod::ST_Attack] & 1) << 3) + ((m_dv[Sigmod::ST_Defense] & 1) << 2) + ((m_dv[Sigmod::ST_Speed] & 1) << 1) + (m_dv[Sigmod::ST_Special] & 1); + } +} + void Sigencore::Creature::completeAbilities() { Sigcore::Hat<Sigscript::AbilityWrapper*> abilityHat = m_species->abilityHat(); |
