diff options
Diffstat (limited to 'pokescripting/SpeciesMoveWrapper.cpp')
| -rw-r--r-- | pokescripting/SpeciesMoveWrapper.cpp | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/pokescripting/SpeciesMoveWrapper.cpp b/pokescripting/SpeciesMoveWrapper.cpp index 671f0e43..d1c33864 100644 --- a/pokescripting/SpeciesMoveWrapper.cpp +++ b/pokescripting/SpeciesMoveWrapper.cpp @@ -19,9 +19,17 @@ #include "SpeciesMoveWrapper.h" // Pokescripting includes -#include "MoveWrapper.h" +#include "PokemodWrapper.h" +#include "SpeciesWrapper.h" -Pokescripting::SpeciesMoveWrapper::SpeciesMoveWrapper(const Pokemod::SpeciesMove* move, QObject* parent) : +Pokescripting::SpeciesMoveWrapper* Pokescripting::SpeciesMoveWrapper::create(const Pokemod::SpeciesMove* move, SpeciesWrapper* parent) +{ + if (!m_instances.contains(Signiture(parent, move->id()))) + m_instances[Signiture(parent, move->id())] = new SpeciesMoveWrapper(move, parent); + return qobject_cast<SpeciesMoveWrapper*>(m_instances[Signiture(parent, move->id())]); +} + +Pokescripting::SpeciesMoveWrapper::SpeciesMoveWrapper(const Pokemod::SpeciesMove* move, SpeciesWrapper* parent) : ObjectWrapper(move, parent), m_move(move) { @@ -29,7 +37,7 @@ Pokescripting::SpeciesMoveWrapper::SpeciesMoveWrapper(const Pokemod::SpeciesMove Pokescripting::MoveWrapper* Pokescripting::SpeciesMoveWrapper::move() { - return MoveWrapper::create(pokemod()->moveById(m_move->move()), this); + return pokemod()->move(m_move->move()); } int Pokescripting::SpeciesMoveWrapper::level() const |
