summaryrefslogtreecommitdiffstats
path: root/pokescripting/PokemodWrapper.h
diff options
context:
space:
mode:
Diffstat (limited to 'pokescripting/PokemodWrapper.h')
-rw-r--r--pokescripting/PokemodWrapper.h332
1 files changed, 52 insertions, 280 deletions
diff --git a/pokescripting/PokemodWrapper.h b/pokescripting/PokemodWrapper.h
index c8ea704c..f30891b4 100644
--- a/pokescripting/PokemodWrapper.h
+++ b/pokescripting/PokemodWrapper.h
@@ -19,42 +19,71 @@
#define __POKESCRIPTING_POKEMODWRAPPER__
// Pokescripting includes
-#include "AbilityWrapper.h"
-#include "AuthorWrapper.h"
-#include "BadgeWrapper.h"
-#include "CoinListWrapper.h"
-#include "EggGroupWrapper.h"
-#include "GlobalScriptWrapper.h"
-#include "ItemWrapper.h"
-#include "ItemTypeWrapper.h"
-#include "MapWrapper.h"
-#include "MoveWrapper.h"
-#include "NatureWrapper.h"
#include "ObjectWrapper.h"
-#include "RulesWrapper.h"
-#include "SkinWrapper.h"
-#include "SoundWrapper.h"
-#include "SpeciesWrapper.h"
-#include "SpriteWrapper.h"
-#include "StatusWrapper.h"
-#include "StoreWrapper.h"
-#include "TileWrapper.h"
-#include "TimeWrapper.h"
-#include "TrainerWrapper.h"
-#include "TypeWrapper.h"
-#include "WeatherWrapper.h"
// Pokemod includes
+#include "../pokemod/Hat.h"
#include "../pokemod/Pokemod.h"
namespace Pokescripting
{
+// Forward declarations
+class AbilityWrapper;
+class AuthorWrapper;
+class BadgeWrapper;
+class CoinListWrapper;
+class EggGroupWrapper;
+class GlobalScriptWrapper;
+class ItemWrapper;
+class ItemTypeWrapper;
+class MapWrapper;
+class MapWarpWrapper;
+class MoveWrapper;
+class NatureWrapper;
+class RulesWrapper;
+class SkinWrapper;
+class SoundWrapper;
+class SpeciesWrapper;
+class SpriteWrapper;
+class StatusWrapper;
+class StoreWrapper;
+class TileWrapper;
+class TimeWrapper;
+class TrainerWrapper;
+class TypeWrapper;
+class WeatherWrapper;
+
class POKESCRIPTING_EXPORT PokemodWrapper : public ObjectWrapper
{
Q_OBJECT
public:
PokemodWrapper(const Pokemod::Pokemod* pokemod, QObject* parent);
+
+ Pokemod::Hat<NatureWrapper*> natureHat();
+
+ AbilityWrapper* ability(const int id);
+ AuthorWrapper* author(const int id);
+ BadgeWrapper* badge(const int id);
+ CoinListWrapper* coinList(const int id);
+ EggGroupWrapper* eggGroup(const int id);
+ GlobalScriptWrapper* globalScript(const int id);
+ ItemWrapper* item(const int id);
+ ItemTypeWrapper* itemType(const int id);
+ MapWrapper* map(const int id);
+ MoveWrapper* move(const int id);
+ NatureWrapper* nature(const int id);
+ SkinWrapper* skin(const int id);
+ SoundWrapper* sound(const int id);
+ SpeciesWrapper* species(const int id);
+ SpriteWrapper* sprite(const int id);
+ StatusWrapper* status(const int id);
+ StoreWrapper* store(const int id);
+ TileWrapper* tile(const int id);
+ TimeWrapper* time(const int id);
+ TrainerWrapper* trainer(const int id);
+ TypeWrapper* type(const int id);
+ WeatherWrapper* weather(const int id);
public slots:
QString title() const;
QString version() const;
@@ -90,263 +119,6 @@ class POKESCRIPTING_EXPORT PokemodWrapper : public ObjectWrapper
const Pokemod::Pokemod* m_pokemod;
};
-
-inline PokemodWrapper::PokemodWrapper(const Pokemod::Pokemod* pokemod, QObject* parent) :
- ObjectWrapper(pokemod, parent),
- m_pokemod(pokemod)
-{
-}
-
-inline QString PokemodWrapper::title() const
-{
- return m_pokemod->title();
-}
-
-inline QString PokemodWrapper::version() const
-{
- return m_pokemod->version();
-}
-
-inline QString PokemodWrapper::description() const
-{
- return m_pokemod->description();
-}
-
-inline MapWarpWrapper* PokemodWrapper::startWarp()
-{
- return MapWarpWrapper::create(m_pokemod->mapById(m_pokemod->startMap())->warpById(m_pokemod->startWarp()), this);
-}
-
-inline Pokemod::Fraction PokemodWrapper::effectiveness(const TypeWrapper* attacker, const TypeWrapper* defender) const
-{
- return m_pokemod->typechart(m_pokemod->typeIndex(attacker->id()), m_pokemod->typeIndex(defender->id()));
-}
-
-inline RulesWrapper* PokemodWrapper::rules()
-{
- return RulesWrapper::create(m_pokemod->rules(), this);
-}
-
-inline AbilityWrapper* PokemodWrapper::ability(const QString& name)
-{
- for (int i = 0; i < m_pokemod->abilityCount(); ++i)
- {
- if (m_pokemod->ability(i)->name() == name)
- return AbilityWrapper::create(m_pokemod->ability(i), this);
- }
- return NULL;
-}
-
-inline AuthorWrapper* PokemodWrapper::author(const QString& name)
-{
- for (int i = 0; i < m_pokemod->authorCount(); ++i)
- {
- if (m_pokemod->author(i)->name() == name)
- return AuthorWrapper::create(m_pokemod->author(i), this);
- }
- return NULL;
-}
-
-inline BadgeWrapper* PokemodWrapper::badge(const QString& name)
-{
- for (int i = 0; i < m_pokemod->badgeCount(); ++i)
- {
- if (m_pokemod->badge(i)->name() == name)
- return BadgeWrapper::create(m_pokemod->badge(i), this);
- }
- return NULL;
-}
-
-inline CoinListWrapper* PokemodWrapper::coinList(const QString& name)
-{
- for (int i = 0; i < m_pokemod->coinListCount(); ++i)
- {
- if (m_pokemod->coinList(i)->name() == name)
- return CoinListWrapper::create(m_pokemod->coinList(i), this);
- }
- return NULL;
-}
-
-inline EggGroupWrapper* PokemodWrapper::eggGroup(const QString& name)
-{
- for (int i = 0; i < m_pokemod->eggGroupCount(); ++i)
- {
- if (m_pokemod->eggGroup(i)->name() == name)
- return EggGroupWrapper::create(m_pokemod->eggGroup(i), this);
- }
- return NULL;
-}
-
-inline GlobalScriptWrapper* PokemodWrapper::globalScript(const QString& name)
-{
- for (int i = 0; i < m_pokemod->globalScriptCount(); ++i)
- {
- if (m_pokemod->globalScript(i)->name() == name)
- return GlobalScriptWrapper::create(m_pokemod->globalScript(i), this);
- }
- return NULL;
-}
-
-inline ItemWrapper* PokemodWrapper::item(const QString& name)
-{
- for (int i = 0; i < m_pokemod->itemCount(); ++i)
- {
- if (m_pokemod->item(i)->name() == name)
- return ItemWrapper::create(m_pokemod->item(i), this);
- }
- return NULL;
-}
-
-inline ItemTypeWrapper* PokemodWrapper::itemType(const QString& name)
-{
- for (int i = 0; i < m_pokemod->itemTypeCount(); ++i)
- {
- if (m_pokemod->itemType(i)->name() == name)
- return ItemTypeWrapper::create(m_pokemod->itemType(i), this);
- }
- return NULL;
-}
-
-inline MapWrapper* PokemodWrapper::map(const QString& name)
-{
- for (int i = 0; i < m_pokemod->mapCount(); ++i)
- {
- if (m_pokemod->map(i)->name() == name)
- return MapWrapper::create(m_pokemod->map(i), this);
- }
- return NULL;
-}
-
-inline MoveWrapper* PokemodWrapper::move(const QString& name)
-{
- for (int i = 0; i < m_pokemod->moveCount(); ++i)
- {
- if (m_pokemod->move(i)->name() == name)
- return MoveWrapper::create(m_pokemod->move(i), this);
- }
- return NULL;
-}
-
-inline NatureWrapper* PokemodWrapper::nature(const QString& name)
-{
- for (int i = 0; i < m_pokemod->natureCount(); ++i)
- {
- if (m_pokemod->nature(i)->name() == name)
- return NatureWrapper::create(m_pokemod->nature(i), this);
- }
- return NULL;
-}
-
-inline SkinWrapper* PokemodWrapper::skin(const QString& name)
-{
- for (int i = 0; i < m_pokemod->skinCount(); ++i)
- {
- if (m_pokemod->skin(i)->name() == name)
- return SkinWrapper::create(m_pokemod->skin(i), this);
- }
- return NULL;
-}
-
-inline SoundWrapper* PokemodWrapper::sound(const QString& name)
-{
- for (int i = 0; i < m_pokemod->soundCount(); ++i)
- {
- if (m_pokemod->sound(i)->name() == name)
- return SoundWrapper::create(m_pokemod->sound(i), this);
- }
- return NULL;
-}
-
-inline SpeciesWrapper* PokemodWrapper::species(const QString& name)
-{
- for (int i = 0; i < m_pokemod->speciesCount(); ++i)
- {
- if (m_pokemod->species(i)->name() == name)
- return SpeciesWrapper::create(m_pokemod->species(i), this);
- }
- return NULL;
-}
-
-inline SpriteWrapper* PokemodWrapper::sprite(const QString& name)
-{
- for (int i = 0; i < m_pokemod->spriteCount(); ++i)
- {
- if (m_pokemod->sprite(i)->name() == name)
- return SpriteWrapper::create(m_pokemod->sprite(i), this);
- }
- return NULL;
-}
-
-inline StatusWrapper* PokemodWrapper::status(const QString& name)
-{
- for (int i = 0; i < m_pokemod->statusCount(); ++i)
- {
- if (m_pokemod->status(i)->name() == name)
- return StatusWrapper::create(m_pokemod->status(i), this);
- }
- return NULL;
-}
-
-inline StoreWrapper* PokemodWrapper::store(const QString& name)
-{
- for (int i = 0; i < m_pokemod->storeCount(); ++i)
- {
- if (m_pokemod->store(i)->name() == name)
- return StoreWrapper::create(m_pokemod->store(i), this);
- }
- return NULL;
-}
-
-inline TileWrapper* PokemodWrapper::tile(const QString& name)
-{
- for (int i = 0; i < m_pokemod->tileCount(); ++i)
- {
- if (m_pokemod->tile(i)->name() == name)
- return TileWrapper::create(m_pokemod->tile(i), this);
- }
- return NULL;
-}
-
-inline TimeWrapper* PokemodWrapper::time(const QString& name)
-{
- for (int i = 0; i < m_pokemod->timeCount(); ++i)
- {
- if (m_pokemod->time(i)->name() == name)
- return TimeWrapper::create(m_pokemod->time(i), this);
- }
- return NULL;
-}
-
-inline TrainerWrapper* PokemodWrapper::trainer(const QString& name)
-{
- for (int i = 0; i < m_pokemod->trainerCount(); ++i)
- {
- if (m_pokemod->trainer(i)->name() == name)
- return TrainerWrapper::create(m_pokemod->trainer(i), this);
- }
- return NULL;
-}
-
-inline TypeWrapper* PokemodWrapper::type(const QString& name)
-{
- for (int i = 0; i < m_pokemod->typeCount(); ++i)
- {
- if (m_pokemod->type(i)->name() == name)
- return TypeWrapper::create(m_pokemod->type(i), this);
- }
- return NULL;
-}
-
-inline WeatherWrapper* PokemodWrapper::weather(const QString& name)
-{
- for (int i = 0; i < m_pokemod->weatherCount(); ++i)
- {
- if (m_pokemod->weather(i)->name() == name)
- return WeatherWrapper::create(m_pokemod->weather(i), this);
- }
- return NULL;
-}
-
}
#endif