diff options
| author | Ben Boeckel <MathStuf@gmail.com> | 2008-08-05 06:10:55 +0000 |
|---|---|---|
| committer | Ben Boeckel <MathStuf@gmail.com> | 2008-08-05 06:10:55 +0000 |
| commit | cf49a16b29ac412cfea125f7216a0e51e79aa4de (patch) | |
| tree | fc3eb0271f3de0d7900c2a33ab5eafa259d8d250 /pokescripting/MapTrainerTeamMemberWrapper.cpp | |
| parent | 56b91df6010a9f3d304438cf95816399a6e46622 (diff) | |
| download | sigen-cf49a16b29ac412cfea125f7216a0e51e79aa4de.tar.gz sigen-cf49a16b29ac412cfea125f7216a0e51e79aa4de.tar.xz sigen-cf49a16b29ac412cfea125f7216a0e51e79aa4de.zip | |
[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
Diffstat (limited to 'pokescripting/MapTrainerTeamMemberWrapper.cpp')
| -rw-r--r-- | pokescripting/MapTrainerTeamMemberWrapper.cpp | 80 |
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; +} |
