summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Boeckel <MathStuf@gmail.com>2009-02-13 01:49:03 -0500
committerBen Boeckel <MathStuf@gmail.com>2009-02-13 01:49:03 -0500
commitd5fd32b0ebef68d6f9baedf2bb9a44c1309ff004 (patch)
treed3612f9e4f3c22cd8aa080381a669850c2f316e9
parent5baf68cc3b202e2e3049cb2d6b58d6a3ed3fe2de (diff)
downloadsigen-d5fd32b0ebef68d6f9baedf2bb9a44c1309ff004.tar.gz
sigen-d5fd32b0ebef68d6f9baedf2bb9a44c1309ff004.tar.xz
sigen-d5fd32b0ebef68d6f9baedf2bb9a44c1309ff004.zip
Added item and move methods
-rw-r--r--sigencore/TeamMember.cpp49
-rw-r--r--sigencore/TeamMember.h2
2 files changed, 50 insertions, 1 deletions
diff --git a/sigencore/TeamMember.cpp b/sigencore/TeamMember.cpp
index 7d9145f5..089df76f 100644
--- a/sigencore/TeamMember.cpp
+++ b/sigencore/TeamMember.cpp
@@ -520,6 +520,55 @@ bool Sigencore::TeamMember::hasAbility(Sigscript::AbilityWrapper* ability) const
return m_abilities.contains(ability);
}
+bool Sigencore::TeamMember::addItems(Sigscript::ItemWrapper* item, const int count, const bool allOrNothing)
+{
+ // TODO
+}
+
+QList<Sigscript::ItemWrapper*> Sigencore::TeamMember::items() const
+{
+ return m_items;
+}
+
+int Sigencore::TeamMember::hasItem(Sigscript::ItemWrapper* item) const
+{
+ return m_items.count(item);
+}
+
+bool Sigencore::TeamMember::addMove(Sigscript::MoveWrapper* move)
+{
+ // TODO: Check if move can be learned
+ if ((m_moves.size() < m_sigmod->rules()->maxMoves()) && !m_moves.contains(move))
+ {
+ m_moves.append(move);
+ emit(moveAdded(move));
+ return true;
+ }
+ return false;
+}
+
+bool Sigencore::TeamMember::removeMove(Sigscript::MoveWrapper* move)
+{
+ if (m_moves.contains(move) && (1 < m_moves.size()))
+ {
+ // TODO: Update stats
+ m_moves.removeOne(move);
+ emit(moveRemoved(move));
+ return true;
+ }
+ return false;
+}
+
+QList<Sigscript::MoveWrapper*> Sigencore::TeamMember::moves() const
+{
+ return m_moves;
+}
+
+bool Sigencore::TeamMember::hasMove(Sigscript::MoveWrapper* move) const
+{
+ return m_moves.contains(move);
+}
+
bool Sigencore::TeamMember::addNature(Sigscript::NatureWrapper* nature)
{
if ((m_natures.size() < m_sigmod->rules()->maxNatures()) && !m_natures.contains(nature))
diff --git a/sigencore/TeamMember.h b/sigencore/TeamMember.h
index 18105ebe..f7dd2bb5 100644
--- a/sigencore/TeamMember.h
+++ b/sigencore/TeamMember.h
@@ -152,7 +152,7 @@ class SIGENCORE_EXPORT TeamMember : public Sigscript::Config
bool addAbility(Sigscript::AbilityWrapper* ability);
bool removeAbility(Sigscript::AbilityWrapper* ability);
- bool addItems(Sigscript::ItemWrapper* item, const int count);
+ bool addItems(Sigscript::ItemWrapper* item, const int count, const bool allOrNothing = false);
bool addMove(Sigscript::MoveWrapper* move);
bool removeMove(Sigscript::MoveWrapper* move);