summaryrefslogtreecommitdiffstats
path: root/sigencore/TeamMember.cpp
diff options
context:
space:
mode:
authorBen Boeckel <MathStuf@gmail.com>2009-02-21 22:20:10 -0500
committerBen Boeckel <MathStuf@gmail.com>2009-02-21 22:20:10 -0500
commitd8c428412b2206efee4a4fff10794841ca32bf39 (patch)
treee62eda763a9c394c7003b903c786244938715d53 /sigencore/TeamMember.cpp
parentba85cc4415a2f8c169ae6fa1aa5ab9c36bab426c (diff)
downloadsigen-d8c428412b2206efee4a4fff10794841ca32bf39.tar.gz
sigen-d8c428412b2206efee4a4fff10794841ca32bf39.tar.xz
sigen-d8c428412b2206efee4a4fff10794841ca32bf39.zip
Added initial move initialization
Diffstat (limited to 'sigencore/TeamMember.cpp')
-rw-r--r--sigencore/TeamMember.cpp16
1 files changed, 12 insertions, 4 deletions
diff --git a/sigencore/TeamMember.cpp b/sigencore/TeamMember.cpp
index 4639bc09..1007adf0 100644
--- a/sigencore/TeamMember.cpp
+++ b/sigencore/TeamMember.cpp
@@ -94,7 +94,7 @@ int Sigencore::actionPriority(TeamMember* teamMember, const TeamMember::Action&
return priority;
}
-Sigencore::TeamMember::TeamMember(Sigscript::SpeciesWrapper* species, const int level, Containment* containment, const bool suppressInitialization) :
+Sigencore::TeamMember::TeamMember(Sigscript::SpeciesWrapper* species, const int level, Containment* containment, const bool isWild, const bool suppressInitialization) :
Sigscript::Config(containment),
m_sigmod(containment->sigmod()),
m_containment(containment),
@@ -113,7 +113,7 @@ Sigencore::TeamMember::TeamMember(Sigscript::SpeciesWrapper* species, const int
for (int i = 0; i < (Sigmod::ST_SpecialDefense - Sigmod::ST_Attack + 1); ++i)
m_stages[i] = 0;
if (!suppressInitialization)
- completeData();
+ completeData(isWild);
}
Sigencore::TeamMember::~TeamMember()
@@ -675,7 +675,7 @@ void Sigencore::TeamMember::exitArena()
m_arena = NULL;
}
-void Sigencore::TeamMember::completeData()
+void Sigencore::TeamMember::completeData(const bool useWild)
{
// TODO
if (!m_name.isEmpty())
@@ -716,7 +716,15 @@ void Sigencore::TeamMember::completeData()
else
++i;
}
- // TODO: Move choosing
+ QMap<int, Sigscript::MoveWrapper*> moves;
+ for (i = 0; i < m_species->moveCount(); ++i)
+ {
+ Sigscript::SpeciesMoveWrapper* move = m_species->move(i);
+ const int level = useWild ? move->wild() : move->level();
+ if ((0 <= level) && (level <= m_level))
+ moves[level] = move->move();
+ }
+ // TODO: give the moves to the creature
Sigcore::Hat<Sigscript::NatureWrapper*> natureHat = sigmod()->natureHat();
while ((m_natures.size() < m_sigmod->rules()->maxNatures()) && natureHat.count())
addNature(natureHat.takeAndClear());