summaryrefslogtreecommitdiffstats
path: root/pokescripting/StatusWrapper.h
diff options
context:
space:
mode:
Diffstat (limited to 'pokescripting/StatusWrapper.h')
-rw-r--r--pokescripting/StatusWrapper.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/pokescripting/StatusWrapper.h b/pokescripting/StatusWrapper.h
index e2a77318..d207354b 100644
--- a/pokescripting/StatusWrapper.h
+++ b/pokescripting/StatusWrapper.h
@@ -31,10 +31,16 @@ class POKESCRIPTING_EXPORT StatusWrapper : public ObjectWrapper
Q_OBJECT
public:
- StatusWrapper(const Pokemod::Status* status, QObject* parent);
+ static StatusWrapper* create(const Pokemod::Status* status, QObject* parent)
+ {
+ if (!m_instances.contains(status->id()))
+ m_instances[status->id()] = new StatusWrapper(status, parent);
+ return qobject_cast<StatusWrapper*>(m_instances[status->id()]);
+ }
public slots:
QString name() const;
private:
+ StatusWrapper(const Pokemod::Status* status, QObject* parent);
StatusWrapper& operator=(const StatusWrapper& rhs);
const Pokemod::Status* m_status;