summaryrefslogtreecommitdiffstats
path: root/pokescripting/AbilityWrapper.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'pokescripting/AbilityWrapper.cpp')
-rw-r--r--pokescripting/AbilityWrapper.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/pokescripting/AbilityWrapper.cpp b/pokescripting/AbilityWrapper.cpp
index d66d4fd7..c7641c87 100644
--- a/pokescripting/AbilityWrapper.cpp
+++ b/pokescripting/AbilityWrapper.cpp
@@ -18,7 +18,17 @@
// header include
#include "AbilityWrapper.h"
-Pokescripting::AbilityWrapper::AbilityWrapper(const Pokemod::Ability* ability, QObject* parent) :
+// Pokescripting includes
+#include "PokemodWrapper.h"
+
+Pokescripting::AbilityWrapper* Pokescripting::AbilityWrapper::create(const Pokemod::Ability* ability, PokemodWrapper* parent)
+{
+ if (!m_instances.contains(Signiture(parent, ability->id())))
+ m_instances[Signiture(parent, ability->id())] = new AbilityWrapper(ability, parent);
+ return qobject_cast<AbilityWrapper*>(m_instances[Signiture(parent, ability->id())]);
+}
+
+Pokescripting::AbilityWrapper::AbilityWrapper(const Pokemod::Ability* ability, PokemodWrapper* parent) :
ObjectWrapper(ability, parent),
m_ability(ability)
{