From cf49a16b29ac412cfea125f7216a0e51e79aa4de Mon Sep 17 00:00:00 2001 From: Ben Boeckel Date: Tue, 5 Aug 2008 06:10:55 +0000 Subject: [FIX] List members of pokemod classes now can be returned in their entirety [FIX] Reworked pokescripting for ease of use [FIX] Now (selected) pokemod values can be overridden in pokescripting git-svn-id: https://pokegen.svn.sourceforge.net/svnroot/pokegen/trunk@237 6ecfd1a5-f3ed-3746-8530-beee90d26b22 --- pokescripting/MapTrainerTeamMemberWrapper.cpp | 80 +++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 pokescripting/MapTrainerTeamMemberWrapper.cpp (limited to 'pokescripting/MapTrainerTeamMemberWrapper.cpp') 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 + * + * 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 . + */ + +// 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()) + return value("level").toInt(); + return m_teamMember->level(); +} + +QList Pokescripting::MapTrainerTeamMemberWrapper::abilities() +{ + QList abilityIds = m_teamMember->abilities(); + QList abilities; + foreach (int id, abilityIds) + abilities.append(AbilityWrapper::create(pokemod()->abilityById(id), this)); + return abilities; +} + +QList Pokescripting::MapTrainerTeamMemberWrapper::items() +{ + QList itemIds = m_teamMember->items(); + QList items; + foreach (int id, itemIds) + items.append(ItemWrapper::create(pokemod()->itemById(id), this)); + return items; +} + +QList Pokescripting::MapTrainerTeamMemberWrapper::moves() +{ + QList moveIds = m_teamMember->moves(); + QList moves; + foreach (int id, moveIds) + moves.append(MoveWrapper::create(pokemod()->moveById(id), this)); + return moves; +} + +QList Pokescripting::MapTrainerTeamMemberWrapper::natures() +{ + QList natureIds = m_teamMember->natures(); + QList natures; + foreach (int id, natureIds) + natures.append(NatureWrapper::create(pokemod()->natureById(id), this)); + return natures; +} -- cgit