summaryrefslogtreecommitdiffstats
path: root/pokescripting/MapTrainerTeamMemberWrapper.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'pokescripting/MapTrainerTeamMemberWrapper.cpp')
-rw-r--r--pokescripting/MapTrainerTeamMemberWrapper.cpp80
1 files changed, 80 insertions, 0 deletions
diff --git a/pokescripting/MapTrainerTeamMemberWrapper.cpp b/pokescripting/MapTrainerTeamMemberWrapper.cpp
new file mode 100644
index 00000000..38609e3d
--- /dev/null
+++ b/pokescripting/MapTrainerTeamMemberWrapper.cpp
@@ -0,0 +1,80 @@
+/*
+ * Copyright 2008 Ben Boeckel <MathStuf@gmail.com>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+// Header include
+#include "MapTrainerTeamMemberWrapper.h"
+
+// Pokescripting includes
+#include "AbilityWrapper.h"
+#include "ItemWrapper.h"
+#include "MoveWrapper.h"
+#include "NatureWrapper.h"
+#include "SpeciesWrapper.h"
+
+Pokescripting::MapTrainerTeamMemberWrapper::MapTrainerTeamMemberWrapper(const Pokemod::MapTrainerTeamMember* teamMember, QObject* parent) :
+ ObjectWrapper(teamMember, parent),
+ m_teamMember(teamMember)
+{
+}
+
+Pokescripting::SpeciesWrapper* Pokescripting::MapTrainerTeamMemberWrapper::species()
+{
+ return SpeciesWrapper::create(pokemod()->speciesById(m_teamMember->species()), this);
+}
+
+int Pokescripting::MapTrainerTeamMemberWrapper::level() const
+{
+ if (value("level").canConvert<int>())
+ return value("level").toInt();
+ return m_teamMember->level();
+}
+
+QList<Pokescripting::AbilityWrapper*> Pokescripting::MapTrainerTeamMemberWrapper::abilities()
+{
+ QList<int> abilityIds = m_teamMember->abilities();
+ QList<AbilityWrapper*> abilities;
+ foreach (int id, abilityIds)
+ abilities.append(AbilityWrapper::create(pokemod()->abilityById(id), this));
+ return abilities;
+}
+
+QList<Pokescripting::ItemWrapper*> Pokescripting::MapTrainerTeamMemberWrapper::items()
+{
+ QList<int> itemIds = m_teamMember->items();
+ QList<ItemWrapper*> items;
+ foreach (int id, itemIds)
+ items.append(ItemWrapper::create(pokemod()->itemById(id), this));
+ return items;
+}
+
+QList<Pokescripting::MoveWrapper*> Pokescripting::MapTrainerTeamMemberWrapper::moves()
+{
+ QList<int> moveIds = m_teamMember->moves();
+ QList<MoveWrapper*> moves;
+ foreach (int id, moveIds)
+ moves.append(MoveWrapper::create(pokemod()->moveById(id), this));
+ return moves;
+}
+
+QList<Pokescripting::NatureWrapper*> Pokescripting::MapTrainerTeamMemberWrapper::natures()
+{
+ QList<int> natureIds = m_teamMember->natures();
+ QList<NatureWrapper*> natures;
+ foreach (int id, natureIds)
+ natures.append(NatureWrapper::create(pokemod()->natureById(id), this));
+ return natures;
+}