summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Boeckel <MathStuf@gmail.com>2008-05-14 21:15:28 +0000
committerBen Boeckel <MathStuf@gmail.com>2008-05-14 21:15:28 +0000
commit612529f1c447674dae5863edd6b2074b404759a9 (patch)
tree3a6345c5467c5e634efba1c376d4f73e8521ac7f
parent56f272b11d13bbc5d829283ccf2813d3a7e41dbc (diff)
downloadsigen-612529f1c447674dae5863edd6b2074b404759a9.tar.gz
sigen-612529f1c447674dae5863edd6b2074b404759a9.tar.xz
sigen-612529f1c447674dae5863edd6b2074b404759a9.zip
[ADD] MapTrainerUI logic
[FIX] MapTrainer UI now uses the PointWidget [FIX] Unnecessary static_casts removed [FIX] MapTrainer API changed a bit [FIX] PointWidget::setMaximum slot [FIX] spec file now for F9 (qt and kdelibs are now 4, not 3) git-svn-id: https://pokegen.svn.sourceforge.net/svnroot/pokegen/trunk@129 6ecfd1a5-f3ed-3746-8530-beee90d26b22
-rw-r--r--Changelog12
-rw-r--r--general/Matrix.h7
-rw-r--r--pokegen.spec4
-rw-r--r--pokemod/Map.cpp5
-rw-r--r--pokemod/Map.h1
-rw-r--r--pokemod/MapTrainer.cpp38
-rw-r--r--pokemod/MapTrainer.h12
-rw-r--r--pokemodr/BadgeUI.cpp4
-rw-r--r--pokemodr/CoinListObjectUI.cpp8
-rw-r--r--pokemodr/CoinListUI.cpp4
-rw-r--r--pokemodr/ItemUI.cpp6
-rw-r--r--pokemodr/MapTrainerTeamMemberUI.cpp18
-rw-r--r--pokemodr/MapUI.cpp2
-rw-r--r--pokemodr/MapWarpUI.cpp13
-rw-r--r--pokemodr/MapWildListEncounterUI.cpp6
-rw-r--r--pokemodr/MapWildListUI.cpp8
-rw-r--r--pokemodr/MoveUI.cpp6
-rw-r--r--pokemodr/NatureUI.cpp2
-rw-r--r--pokemodr/PointWidget.cpp10
-rw-r--r--pokemodr/PointWidget.h5
-rw-r--r--pokemodr/SpeciesAbilityUI.cpp4
-rw-r--r--pokemodr/SpeciesEvolutionUI.cpp10
-rw-r--r--pokemodr/SpeciesItemUI.cpp4
-rw-r--r--pokemodr/SpeciesMoveUI.cpp8
-rw-r--r--pokemodr/SpeciesUI.cpp28
-rw-r--r--pokemodr/StoreUI.cpp4
-rw-r--r--pokemodr/TODO4
-rw-r--r--pokemodr/TileUI.cpp4
-rw-r--r--pokemodr/gui/maptrainer.ui39
-rw-r--r--pokemodr/gui/trainer.ui42
-rw-r--r--pokemodr/pokemodr.pro2
31 files changed, 146 insertions, 174 deletions
diff --git a/Changelog b/Changelog
index 5c6583a5..d44ec563 100644
--- a/Changelog
+++ b/Changelog
@@ -1,4 +1,16 @@
-----------------
+Rev: 129
+Date: 14 May 2008
+User: MathStuf
+-----------------
+[ADD] MapTrainerUI logic
+[FIX] MapTrainer UI now uses the PointWidget
+[FIX] Unnecessary static_casts removed
+[FIX] MapTrainer API changed a bit
+[FIX] PointWidget::setMaximum slot
+[FIX] spec file now for F9 (qt and kdelibs are now 4, not 3)
+
+-----------------
Rev: 128
Date: 13 May 2008
User: MathStuf
diff --git a/general/Matrix.h b/general/Matrix.h
index 5ba0d4e8..d8e76ea5 100644
--- a/general/Matrix.h
+++ b/general/Matrix.h
@@ -18,6 +18,9 @@
#ifndef __MATRIX__
#define __MATRIX__
+// General includes
+#include "Point.h"
+
// Qt includes
#include <QVector>
@@ -150,6 +153,10 @@ template<class T> class Matrix
{
return m_width;
}
+ Point size() const
+ {
+ return Point(m_width, m_height);
+ }
T& operator()(const int row, const int column)
{
diff --git a/pokegen.spec b/pokegen.spec
index 09b2d613..dbaaa894 100644
--- a/pokegen.spec
+++ b/pokegen.spec
@@ -10,8 +10,8 @@ Source0: pokegen-%{version}.tar.bz2
Source1: pokemodr.desktop
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-BuildRequires: qt4-devel kdelibs4-devel tetex-latex
-Requires: qt4 kdelibs4
+BuildRequires: qt-devel kdelibs-devel tetex-latex
+Requires: qt kdelibs
%description
PokéGen is a game engine aiming to emulate the original Pokémon games.
diff --git a/pokemod/Map.cpp b/pokemod/Map.cpp
index db12de34..7a3899f1 100644
--- a/pokemod/Map.cpp
+++ b/pokemod/Map.cpp
@@ -255,6 +255,11 @@ int Map::height() const
return m_tile.height();
}
+Point Map::size() const
+{
+ return m_tile.size();
+}
+
const MapEffect* Map::effect(const int index) const
{
if (effectCount() <= index)
diff --git a/pokemod/Map.h b/pokemod/Map.h
index d09d684f..355257f4 100644
--- a/pokemod/Map.h
+++ b/pokemod/Map.h
@@ -80,6 +80,7 @@ class Map : public Object
int tile(const int row, const int column) const;
int width() const;
int height() const;
+ Point size() const;
const MapEffect* effect(const int index) const;
MapEffect* effect(const int index);
diff --git a/pokemod/MapTrainer.cpp b/pokemod/MapTrainer.cpp
index 898c7a99..03d0fcba 100644
--- a/pokemod/MapTrainer.cpp
+++ b/pokemod/MapTrainer.cpp
@@ -40,8 +40,8 @@ MapTrainer::MapTrainer(const Map* parent, const int id) :
m_coordinate(0, 0),
m_sight(0),
m_direction(INT_MAX),
- m_numFight(1),
- m_appearFlag(0, 0),
+ m_numberFight(1),
+ m_flag(0, 0),
m_dialog(INT_MAX),
m_leadTeamMember(INT_MAX)
{
@@ -71,7 +71,7 @@ void MapTrainer::validate()
TEST(setTrainerClass, trainerClass);
TEST(setCoordinate, coordinate);
TEST(setDirection, direction);
- TEST(setNumFight, numFight);
+ TEST(setNumberFight, numberFight);
TEST(setDialog, dialog);
TEST(setLeadTeamMember, leadTeamMember);
if (!teamMemberCount())
@@ -94,8 +94,8 @@ void MapTrainer::load(const QDomElement& xml, int id)
LOAD(Point, coordinate);
LOAD(int, sight);
LOAD(int, direction);
- LOAD(int, numFight);
- LOAD(Flag, appearFlag);
+ LOAD(int, numberFight);
+ LOAD(Flag, flag);
LOAD(int, dialog);
LOAD_SUB(newTeamMember, MapTrainerTeamMember);
LOAD(int, leadTeamMember);
@@ -109,8 +109,8 @@ QDomElement MapTrainer::save() const
SAVE(Point, coordinate);
SAVE(int, sight);
SAVE(int, direction);
- SAVE(int, numFight);
- SAVE(Flag, appearFlag);
+ SAVE(int, numberFight);
+ SAVE(Flag, flag);
SAVE(int, dialog);
SAVE_SUB(MapTrainerTeamMember, teamMember);
return xml;
@@ -156,19 +156,19 @@ void MapTrainer::setDirection(const int direction)
m_direction = direction;
}
-void MapTrainer::setNumFight(const int numFight)
+void MapTrainer::setNumberFight(const int numberFight)
{
- if (!numFight || (static_cast<const Pokemod*>(pokemod())->rules()->maxFight() < numFight))
+ if (!numberFight || (static_cast<const Pokemod*>(pokemod())->rules()->maxFight() < numberFight))
{
- emit(error(bounds("numFight")));
+ emit(error(bounds("numberFight")));
return;
}
- m_numFight = numFight;
+ m_numberFight = numberFight;
}
-void MapTrainer::setAppearFlag(const Flag& appearFlag)
+void MapTrainer::setFlag(const Flag& flag)
{
- m_appearFlag = appearFlag;
+ m_flag = flag;
}
void MapTrainer::setDialog(const int dialog)
@@ -216,14 +216,14 @@ int MapTrainer::direction() const
return m_direction;
}
-int MapTrainer::numFight() const
+int MapTrainer::numberFight() const
{
- return m_numFight;
+ return m_numberFight;
}
-Flag MapTrainer::appearFlag() const
+Flag MapTrainer::flag() const
{
- return m_appearFlag;
+ return m_flag;
}
int MapTrainer::dialog() const
@@ -327,8 +327,8 @@ MapTrainer& MapTrainer::operator=(const MapTrainer& rhs)
COPY(coordinate);
COPY(sight);
COPY(direction);
- COPY(numFight);
- COPY(appearFlag);
+ COPY(numberFight);
+ COPY(flag);
COPY(dialog);
COPY(leadTeamMember);
COPY_SUB(MapTrainerTeamMember, teamMember);
diff --git a/pokemod/MapTrainer.h b/pokemod/MapTrainer.h
index eb4b9970..02a9eb2e 100644
--- a/pokemod/MapTrainer.h
+++ b/pokemod/MapTrainer.h
@@ -53,8 +53,8 @@ class MapTrainer : public Object
void setCoordinate(const Point& coordinate);
void setSight(const int sight);
void setDirection(const int direction);
- void setNumFight(const int numFight);
- void setAppearFlag(const Flag& appearFlag);
+ void setNumberFight(const int numberFight);
+ void setFlag(const Flag& flag);
void setDialog(const int dialog);
void setLeadTeamMember(const int leadMember);
@@ -63,8 +63,8 @@ class MapTrainer : public Object
Point coordinate() const;
int sight() const;
int direction() const;
- int numFight() const;
- Flag appearFlag() const;
+ int numberFight() const;
+ Flag flag() const;
int dialog() const;
int leadTeamMember() const;
@@ -92,8 +92,8 @@ class MapTrainer : public Object
Point m_coordinate;
int m_sight;
int m_direction;
- int m_numFight;
- Flag m_appearFlag;
+ int m_numberFight;
+ Flag m_flag;
int m_dialog;
int m_leadTeamMember;
QList<MapTrainerTeamMember*> m_teamMember;
diff --git a/pokemodr/BadgeUI.cpp b/pokemodr/BadgeUI.cpp
index 19a76039..89dbd1d9 100644
--- a/pokemodr/BadgeUI.cpp
+++ b/pokemodr/BadgeUI.cpp
@@ -52,9 +52,9 @@ void BadgeUI::initGui()
void BadgeUI::refreshGui()
{
varStat->clear();
- const bool isSplit = static_cast<const Pokemod*>(static_cast<Badge*>(original())->pokemod())->rules()->specialSplit();
+ const bool isSplit = static_cast<const Pokemod*>(original()->pokemod())->rules()->specialSplit();
varStat->addItems((isSplit ? Pokemod::StatGSCStr : Pokemod::StatRBYStr).mid(0, isSplit ? Pokemod::ST_End_GSC : Pokemod::ST_End_RBY));
- varObey->setMaximum(static_cast<const Pokemod*>(static_cast<Badge*>(original())->pokemod())->rules()->maxLevel());
+ varObey->setMaximum(static_cast<const Pokemod*>(original()->pokemod())->rules()->maxLevel());
}
void BadgeUI::setGui()
diff --git a/pokemodr/CoinListObjectUI.cpp b/pokemodr/CoinListObjectUI.cpp
index a214b258..77bd8744 100644
--- a/pokemodr/CoinListObjectUI.cpp
+++ b/pokemodr/CoinListObjectUI.cpp
@@ -60,18 +60,18 @@ void CoinListObjectUI::setGui()
varObject->clear();
if (static_cast<CoinListObject*>(modified())->type() == CoinListObject::Item)
{
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<CoinListObject*>(original())->pokemod())->itemCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->itemCount(); ++i)
{
- const Item* item = static_cast<const Pokemod*>(static_cast<CoinListObject*>(original())->pokemod())->item(i);
+ const Item* item = static_cast<const Pokemod*>(original()->pokemod())->item(i);
varObject->addItem(item->name());
varObject->setItemData(i, item->id());
}
}
else
{
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<CoinListObject*>(original())->pokemod())->speciesCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->speciesCount(); ++i)
{
- const Species* species = static_cast<const Pokemod*>(static_cast<CoinListObject*>(original())->pokemod())->species(i);
+ const Species* species = static_cast<const Pokemod*>(original()->pokemod())->species(i);
varObject->addItem(species->name());
varObject->setItemData(i, species->id());
}
diff --git a/pokemodr/CoinListUI.cpp b/pokemodr/CoinListUI.cpp
index 8e7737a9..b0febfa0 100644
--- a/pokemodr/CoinListUI.cpp
+++ b/pokemodr/CoinListUI.cpp
@@ -45,9 +45,9 @@ CoinListUI::~CoinListUI()
void CoinListUI::refreshGui()
{
varValue->clear();
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<CoinList*>(original())->pokemod())->itemCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->itemCount(); ++i)
{
- const Item* item = static_cast<const Pokemod*>(static_cast<CoinList*>(original())->pokemod())->item(i);
+ const Item* item = static_cast<const Pokemod*>(original()->pokemod())->item(i);
for (int j = 0; j < item->effectCount(); ++j)
{
const ItemEffect* effect = item->effect(j);
diff --git a/pokemodr/ItemUI.cpp b/pokemodr/ItemUI.cpp
index da6de440..276de03c 100644
--- a/pokemodr/ItemUI.cpp
+++ b/pokemodr/ItemUI.cpp
@@ -44,13 +44,13 @@ ItemUI::~ItemUI()
void ItemUI::refreshGui()
{
varType->clear();
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<Item*>(original())->pokemod())->itemTypeCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->itemTypeCount(); ++i)
{
- const ItemType* itemType = static_cast<const Pokemod*>(static_cast<Item*>(original())->pokemod())->itemType(i);
+ const ItemType* itemType = static_cast<const Pokemod*>(original()->pokemod())->itemType(i);
varType->addItem(itemType->name());
varType->setItemData(i, itemType->id());
}
- varPrice->setMaximum(static_cast<const Pokemod*>(static_cast<Item*>(original())->pokemod())->rules()->maxMoney());
+ varPrice->setMaximum(static_cast<const Pokemod*>(original()->pokemod())->rules()->maxMoney());
}
void ItemUI::setGui()
diff --git a/pokemodr/MapTrainerTeamMemberUI.cpp b/pokemodr/MapTrainerTeamMemberUI.cpp
index 90096dd5..c997a1f0 100644
--- a/pokemodr/MapTrainerTeamMemberUI.cpp
+++ b/pokemodr/MapTrainerTeamMemberUI.cpp
@@ -46,13 +46,13 @@ MapTrainerTeamMemberUI::~MapTrainerTeamMemberUI()
void MapTrainerTeamMemberUI::refreshGui()
{
varSpecies->clear();
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<MapTrainerTeamMember*>(original())->pokemod())->speciesCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->speciesCount(); ++i)
{
- const Species* species = static_cast<const Pokemod*>(static_cast<MapTrainerTeamMember*>(original())->pokemod())->species(i);
+ const Species* species = static_cast<const Pokemod*>(original()->pokemod())->species(i);
varSpecies->addItem(species->name());
varSpecies->setItemData(i, species->id());
}
- varLevel->setMaximum(static_cast<const Pokemod*>(static_cast<MapTrainerTeamMember*>(original())->pokemod())->rules()->maxLevel());
+ varLevel->setMaximum(static_cast<const Pokemod*>(original()->pokemod())->rules()->maxLevel());
}
void MapTrainerTeamMemberUI::setGui()
@@ -66,11 +66,11 @@ void MapTrainerTeamMemberUI::setGui()
widgetItem->setSelected(static_cast<MapTrainerTeamMember*>(modified())->item(widgetItem->data(Qt::UserRole).toInt()));
}
varNature->clear();
- if (static_cast<const Pokemod*>(static_cast<MapTrainerTeamMember*>(original())->pokemod())->rules()->natureAllowed())
+ if (static_cast<const Pokemod*>(original()->pokemod())->rules()->natureAllowed())
{
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<MapTrainerTeamMember*>(original())->pokemod())->natureCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->natureCount(); ++i)
{
- const Nature* nature = static_cast<const Pokemod*>(static_cast<MapTrainerTeamMember*>(original())->pokemod())->nature(i);
+ const Nature* nature = static_cast<const Pokemod*>(original()->pokemod())->nature(i);
varNature->addItem(nature->name());
varNature->setItemData(i, nature->id());
}
@@ -78,11 +78,11 @@ void MapTrainerTeamMemberUI::setGui()
else
boxNature->setEnabled(false);
varItems->clear();
- if (static_cast<const Pokemod*>(static_cast<MapTrainerTeamMember*>(original())->pokemod())->rules()->holdItems())
+ if (static_cast<const Pokemod*>(original()->pokemod())->rules()->holdItems())
{
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<MapTrainerTeamMember*>(original())->pokemod())->itemCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->itemCount(); ++i)
{
- const Item* item = static_cast<const Pokemod*>(static_cast<MapTrainerTeamMember*>(original())->pokemod())->item(i);
+ const Item* item = static_cast<const Pokemod*>(original()->pokemod())->item(i);
QListWidgetItem* widgetItem = new QListWidgetItem(item->name(), varItems);
widgetItem->setData(Qt::UserRole, item->id());
}
diff --git a/pokemodr/MapUI.cpp b/pokemodr/MapUI.cpp
index e954085a..75436eee 100644
--- a/pokemodr/MapUI.cpp
+++ b/pokemodr/MapUI.cpp
@@ -40,7 +40,7 @@ MapUI::MapUI(Map* map, QWidget* parent) :
setupUi(this);
QMetaObject::connectSlotsByName(this);
setObjects(map, new Map(*map));
- m_model = new TilemapModel(this, static_cast<Map*>(modified())->map(), static_cast<const Pokemod*>(static_cast<Map*>(original())->pokemod()));
+ m_model = new TilemapModel(this, static_cast<Map*>(modified())->map(), static_cast<const Pokemod*>(original()->pokemod()));
connect(this, SIGNAL(changed(bool)), boxButtons, SLOT(setEnabled(bool)));
connect(modified(), SIGNAL(error(const QString&)), this, SLOT(setGui()));
connect(modified(), SIGNAL(error(const QString&)), this, SLOT(errorMessage(const QString&)));
diff --git a/pokemodr/MapWarpUI.cpp b/pokemodr/MapWarpUI.cpp
index d7388bfd..b95f1a4f 100644
--- a/pokemodr/MapWarpUI.cpp
+++ b/pokemodr/MapWarpUI.cpp
@@ -51,17 +51,18 @@ void MapWarpUI::initGui()
void MapWarpUI::refreshGui()
{
+ varCoordinate->setMaximum(static_cast<const Map*>(original()->parent())->size());
varToMap->clear();
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<MapWarp*>(original())->pokemod())->mapCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->mapCount(); ++i)
{
- const Map* map = static_cast<const Pokemod*>(static_cast<MapWarp*>(original())->pokemod())->map(i);
+ const Map* map = static_cast<const Pokemod*>(original()->pokemod())->map(i);
varToMap->addItem(map->name());
varToMap->setItemData(i, map->id());
}
varDialog->clear();
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<MapWarp*>(original())->pokemod())->dialogCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->dialogCount(); ++i)
{
- const Dialog* dialog = static_cast<const Pokemod*>(static_cast<MapWarp*>(original())->pokemod())->dialog(i);
+ const Dialog* dialog = static_cast<const Pokemod*>(original()->pokemod())->dialog(i);
varDialog->addItem(dialog->dialog().mid(0, 25));
varDialog->setItemData(i, dialog->id());
}
@@ -84,10 +85,10 @@ void MapWarpUI::setGui()
if (resetWarps)
{
varToWarp->clear();
- int index = static_cast<const Pokemod*>(static_cast<MapWarp*>(original())->pokemod())->mapIndex(static_cast<MapWarp*>(modified())->toMap());
+ int index = static_cast<const Pokemod*>(original()->pokemod())->mapIndex(static_cast<MapWarp*>(modified())->toMap());
if (index != INT_MAX)
{
- const Map* map = static_cast<const Pokemod*>(static_cast<MapWarp*>(original())->pokemod())->map(index);
+ const Map* map = static_cast<const Pokemod*>(original()->pokemod())->map(index);
if (map)
{
for (int i = 0; i < map->warpCount(); ++i)
diff --git a/pokemodr/MapWildListEncounterUI.cpp b/pokemodr/MapWildListEncounterUI.cpp
index 89eec7b5..8fb17fa6 100644
--- a/pokemodr/MapWildListEncounterUI.cpp
+++ b/pokemodr/MapWildListEncounterUI.cpp
@@ -44,13 +44,13 @@ MapWildListEncounterUI::~MapWildListEncounterUI()
void MapWildListEncounterUI::refreshGui()
{
varSpecies->clear();
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<MapWildListEncounter*>(original())->pokemod())->speciesCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->speciesCount(); ++i)
{
- const Species* species = static_cast<const Pokemod*>(static_cast<MapWildListEncounter*>(original())->pokemod())->species(i);
+ const Species* species = static_cast<const Pokemod*>(original()->pokemod())->species(i);
varSpecies->addItem(species->name());
varSpecies->setItemData(i, species->id());
}
- varLevel->setMaximum(static_cast<const Pokemod*>(static_cast<MapWildListEncounter*>(original())->pokemod())->rules()->maxLevel());
+ varLevel->setMaximum(static_cast<const Pokemod*>(original()->pokemod())->rules()->maxLevel());
}
void MapWildListEncounterUI::setGui()
diff --git a/pokemodr/MapWildListUI.cpp b/pokemodr/MapWildListUI.cpp
index 721e97d7..1931277e 100644
--- a/pokemodr/MapWildListUI.cpp
+++ b/pokemodr/MapWildListUI.cpp
@@ -52,9 +52,9 @@ void MapWildListUI::refreshGui()
{
varValue->clear();
varScope->clear();
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<MapWildList*>(original())->pokemod())->itemCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->itemCount(); ++i)
{
- const Item* item = static_cast<const Pokemod*>(static_cast<MapWildList*>(original())->pokemod())->item(i);
+ const Item* item = static_cast<const Pokemod*>(original()->pokemod())->item(i);
for (int j = 0; j < item->effectCount(); ++j)
{
const ItemEffect* effect = item->effect(j);
@@ -71,9 +71,9 @@ void MapWildListUI::refreshGui()
}
}
varTimes->clear();
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<MapWildList*>(original())->pokemod())->timeCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->timeCount(); ++i)
{
- const Time* time = static_cast<const Pokemod*>(static_cast<MapWildList*>(original())->pokemod())->time(i);
+ const Time* time = static_cast<const Pokemod*>(original()->pokemod())->time(i);
QListWidgetItem* widgetItem = new QListWidgetItem(time->name(), varTimes);
widgetItem->setData(Qt::UserRole, time->id());
}
diff --git a/pokemodr/MoveUI.cpp b/pokemodr/MoveUI.cpp
index 71b7007b..df0c4e72 100644
--- a/pokemodr/MoveUI.cpp
+++ b/pokemodr/MoveUI.cpp
@@ -50,13 +50,13 @@ void MoveUI::initGui()
void MoveUI::refreshGui()
{
varType->clear();
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<Move*>(original())->pokemod())->typeCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->typeCount(); ++i)
{
- const Type* type = static_cast<const Pokemod*>(static_cast<Move*>(original())->pokemod())->type(i);
+ const Type* type = static_cast<const Pokemod*>(original()->pokemod())->type(i);
varType->addItem(type->name());
varType->setItemData(i, type->id());
}
- varNumTargets->setMaximum(static_cast<const Pokemod*>(static_cast<Move*>(original())->pokemod())->rules()->maxFight());
+ varNumTargets->setMaximum(static_cast<const Pokemod*>(original()->pokemod())->rules()->maxFight());
}
void MoveUI::setGui()
diff --git a/pokemodr/NatureUI.cpp b/pokemodr/NatureUI.cpp
index 98af9ede..525fa65e 100644
--- a/pokemodr/NatureUI.cpp
+++ b/pokemodr/NatureUI.cpp
@@ -48,7 +48,7 @@ void NatureUI::initGui()
void NatureUI::refreshGui()
{
varStat->clear();
- const bool isSplit = static_cast<const Pokemod*>(static_cast<Nature*>(original())->pokemod())->rules()->specialSplit();
+ const bool isSplit = static_cast<const Pokemod*>(original()->pokemod())->rules()->specialSplit();
varStat->addItems((isSplit ? Pokemod::StatRBYStr : Pokemod::StatGSCStr).mid(0, isSplit ? Pokemod::ST_End_RBY : Pokemod::ST_End_GSC));
}
diff --git a/pokemodr/PointWidget.cpp b/pokemodr/PointWidget.cpp
index d3694d7b..8fa61091 100644
--- a/pokemodr/PointWidget.cpp
+++ b/pokemodr/PointWidget.cpp
@@ -26,6 +26,11 @@ PointWidget::PointWidget(QWidget* parent, const Point& value) :
QMetaObject::connectSlotsByName(this);
}
+Point PointWidget::value() const
+{
+ return m_value;
+}
+
void PointWidget::setValue(const Point& value)
{
m_value = value;
@@ -34,9 +39,10 @@ void PointWidget::setValue(const Point& value)
emit(valueChanged(true));
}
-Point PointWidget::value() const
+void PointWidget::setMaximum(const Point& maximum)
{
- return m_value;
+ varX->setMaximum(maximum.x());
+ varY->setMaximum(maximum.y());
}
void PointWidget::on_varX_valueChanged(const int& x)
diff --git a/pokemodr/PointWidget.h b/pokemodr/PointWidget.h
index c316f1e1..711bb74a 100644
--- a/pokemodr/PointWidget.h
+++ b/pokemodr/PointWidget.h
@@ -34,12 +34,13 @@ class PointWidget : public QWidget, private Ui::formPoint
public:
PointWidget(QWidget* parent, const Point& value = Point(0, 0));
- void setValue(const Point& value);
-
Point value() const;
signals:
void valueChanged(bool);
public slots:
+ void setValue(const Point& value);
+ void setMaximum(const Point& maximum);
+
void on_varX_valueChanged(const int& x);
void on_varY_valueChanged(const int& y);
private:
diff --git a/pokemodr/SpeciesAbilityUI.cpp b/pokemodr/SpeciesAbilityUI.cpp
index fe78706b..37b4c9d4 100644
--- a/pokemodr/SpeciesAbilityUI.cpp
+++ b/pokemodr/SpeciesAbilityUI.cpp
@@ -44,9 +44,9 @@ SpeciesAbilityUI::~SpeciesAbilityUI()
void SpeciesAbilityUI::refreshGui()
{
varAbility->clear();
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<SpeciesAbility*>(original())->pokemod())->abilityCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->abilityCount(); ++i)
{
- const Ability* a = static_cast<const Pokemod*>(static_cast<SpeciesAbility*>(original())->pokemod())->ability(i);
+ const Ability* a = static_cast<const Pokemod*>(original()->pokemod())->ability(i);
varAbility->addItem(a->name());
varAbility->setItemData(i, a->id());
}
diff --git a/pokemodr/SpeciesEvolutionUI.cpp b/pokemodr/SpeciesEvolutionUI.cpp
index 49049830..a963b505 100644
--- a/pokemodr/SpeciesEvolutionUI.cpp
+++ b/pokemodr/SpeciesEvolutionUI.cpp
@@ -52,9 +52,9 @@ void SpeciesEvolutionUI::initGui()
void SpeciesEvolutionUI::refreshGui()
{
varSpecies->clear();
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<SpeciesEvolution*>(original())->pokemod())->speciesCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->speciesCount(); ++i)
{
- const Species* species = static_cast<const Pokemod*>(static_cast<SpeciesEvolution*>(original())->pokemod())->species(i);
+ const Species* species = static_cast<const Pokemod*>(original()->pokemod())->species(i);
varSpecies->addItem(species->name());
varSpecies->setItemData(i, species->id());
}
@@ -85,9 +85,9 @@ void SpeciesEvolutionUI::setGui()
case SpeciesEvolution::S_Item:
case SpeciesEvolution::S_TradeItem:
varValue1->setEnabled(true);
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<SpeciesEvolution*>(original())->pokemod())->itemCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->itemCount(); ++i)
{
- const Item* item = static_cast<const Pokemod*>(static_cast<SpeciesEvolution*>(original())->pokemod())->item(i);
+ const Item* item = static_cast<const Pokemod*>(original()->pokemod())->item(i);
for (int j = 0; j < item->effectCount(); ++j)
{
if (item->effect(i)->effect() == ItemEffect::E_Evolution)
@@ -99,7 +99,7 @@ void SpeciesEvolutionUI::setGui()
}
break;
}
- const bool isSplit = static_cast<const Pokemod*>(static_cast<SpeciesEvolution*>(original())->pokemod())->rules()->specialSplit();
+ const bool isSplit = static_cast<const Pokemod*>(original()->pokemod())->rules()->specialSplit();
switch (static_cast<SpeciesEvolution*>(modified())->style())
{
case SpeciesEvolution::S_Stat:
diff --git a/pokemodr/SpeciesItemUI.cpp b/pokemodr/SpeciesItemUI.cpp
index e2ad80d7..449cee22 100644
--- a/pokemodr/SpeciesItemUI.cpp
+++ b/pokemodr/SpeciesItemUI.cpp
@@ -44,9 +44,9 @@ SpeciesItemUI::~SpeciesItemUI()
void SpeciesItemUI::refreshGui()
{
varItem->clear();
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<SpeciesItem*>(original())->pokemod())->itemCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->itemCount(); ++i)
{
- const Item* item = static_cast<const Pokemod*>(static_cast<SpeciesItem*>(original())->pokemod())->item(i);
+ const Item* item = static_cast<const Pokemod*>(original()->pokemod())->item(i);
varItem->addItem(item->name());
varItem->setItemData(i, item->id());
}
diff --git a/pokemodr/SpeciesMoveUI.cpp b/pokemodr/SpeciesMoveUI.cpp
index e3b8a17f..272a9d1d 100644
--- a/pokemodr/SpeciesMoveUI.cpp
+++ b/pokemodr/SpeciesMoveUI.cpp
@@ -44,14 +44,14 @@ SpeciesMoveUI::~SpeciesMoveUI()
void SpeciesMoveUI::refreshGui()
{
varMove->clear();
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<SpeciesMove*>(original())->pokemod())->moveCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->moveCount(); ++i)
{
- const Move* move = static_cast<const Pokemod*>(static_cast<SpeciesMove*>(original())->pokemod())->move(i);
+ const Move* move = static_cast<const Pokemod*>(original()->pokemod())->move(i);
varMove->addItem(move->name());
varMove->setItemData(i, move->id());
}
- varLevel->setMaximum(static_cast<const Pokemod*>(static_cast<SpeciesMove*>(original())->pokemod())->rules()->maxLevel());
- varWildLevel->setMaximum(static_cast<const Pokemod*>(static_cast<SpeciesMove*>(original())->pokemod())->rules()->maxLevel());
+ varLevel->setMaximum(static_cast<const Pokemod*>(original()->pokemod())->rules()->maxLevel());
+ varWildLevel->setMaximum(static_cast<const Pokemod*>(original()->pokemod())->rules()->maxLevel());
}
void SpeciesMoveUI::setGui()
diff --git a/pokemodr/SpeciesUI.cpp b/pokemodr/SpeciesUI.cpp
index 35e453e8..a913c7c3 100644
--- a/pokemodr/SpeciesUI.cpp
+++ b/pokemodr/SpeciesUI.cpp
@@ -56,29 +56,29 @@ void SpeciesUI::refreshGui()
{
varBaseStat->clear();
varEVStat->clear();
- const bool isSplit = static_cast<const Pokemod*>(static_cast<Species*>(original())->pokemod())->rules()->specialSplit();
+ const bool isSplit = static_cast<const Pokemod*>(original()->pokemod())->rules()->specialSplit();
varBaseStat->addItems((isSplit ? Pokemod::StatGSCStr : Pokemod::StatRBYStr).mid(0, isSplit ? Pokemod::ST_End_GSC : Pokemod::ST_End_RBY));
- if (static_cast<const Pokemod*>(static_cast<Species*>(original())->pokemod())->rules()->effortValuesAllowed())
+ if (static_cast<const Pokemod*>(original()->pokemod())->rules()->effortValuesAllowed())
varEVStat->addItems((isSplit ? Pokemod::StatGSCStr : Pokemod::StatRBYStr).mid(0, isSplit ? Pokemod::ST_End_GSC : Pokemod::ST_End_RBY));
else
boxEffortValues->setEnabled(false);
- if (!static_cast<const Pokemod*>(static_cast<Species*>(original())->pokemod())->rules()->holdItems())
+ if (!static_cast<const Pokemod*>(original()->pokemod())->rules()->holdItems())
boxItemChance->setEnabled(false);
- if (static_cast<const Pokemod*>(static_cast<Species*>(original())->pokemod())->rules()->genderAllowed())
+ if (static_cast<const Pokemod*>(original()->pokemod())->rules()->genderAllowed())
{
varEggSpecies->clear();
varEggGroups->clear();
- if (static_cast<const Pokemod*>(static_cast<Species*>(original())->pokemod())->rules()->breedingAllowed())
+ if (static_cast<const Pokemod*>(original()->pokemod())->rules()->breedingAllowed())
{
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<Species*>(original())->pokemod())->speciesCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->speciesCount(); ++i)
{
- const Species* species = static_cast<const Pokemod*>(static_cast<Species*>(original())->pokemod())->species(i);
+ const Species* species = static_cast<const Pokemod*>(original()->pokemod())->species(i);
varEggSpecies->addItem(species->name());
varEggSpecies->setItemData(i, species->id());
}
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<Species*>(original())->pokemod())->eggGroupCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->eggGroupCount(); ++i)
{
- const EggGroup* eggGroup = static_cast<const Pokemod*>(static_cast<Species*>(original())->pokemod())->eggGroup(i);
+ const EggGroup* eggGroup = static_cast<const Pokemod*>(original()->pokemod())->eggGroup(i);
QListWidgetItem* widgetItem = new QListWidgetItem(eggGroup->name(), varEggGroups);
widgetItem->setData(Qt::UserRole, eggGroup->id());
}
@@ -97,9 +97,9 @@ void SpeciesUI::refreshGui()
boxFemaleSprites->setEnabled(false);
}
varTypes->clear();
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<Species*>(original())->pokemod())->typeCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->typeCount(); ++i)
{
- const Type* type = static_cast<const Pokemod*>(static_cast<Species*>(original())->pokemod())->type(i);
+ const Type* type = static_cast<const Pokemod*>(original()->pokemod())->type(i);
QListWidgetItem* widgetItem = new QListWidgetItem(type->name(), varTypes);
widgetItem->setData(Qt::UserRole, type->id());
}
@@ -122,10 +122,10 @@ void SpeciesUI::setGui()
varPokedexEntry->setText(static_cast<Species*>(modified())->pokedexEntry());
varMaleFront->setIcon(static_cast<Species*>(modified())->frontMaleSprite());
varMaleBack->setIcon(static_cast<Species*>(modified())->backMaleSprite());
- if (static_cast<const Pokemod*>(static_cast<Species*>(original())->pokemod())->rules()->genderAllowed())
+ if (static_cast<const Pokemod*>(original()->pokemod())->rules()->genderAllowed())
{
- varFemaleFront->setIcon(static_cast<Species*>(modified())->frontFemaleSprite());
- varFemaleBack->setIcon(static_cast<Species*>(modified())->backFemaleSprite());
+ varFemaleFront->setIcon(static_cast<Species*>(modified())->frontFemaleSprite());
+ varFemaleBack->setIcon(static_cast<Species*>(modified())->backFemaleSprite());
}
varList->setIcon(static_cast<Species*>(modified())->listSprite());
boxGenderChance->setChecked(static_cast<Species*>(modified())->genderFactor() == -1);
diff --git a/pokemodr/StoreUI.cpp b/pokemodr/StoreUI.cpp
index 80f6f635..e354c966 100644
--- a/pokemodr/StoreUI.cpp
+++ b/pokemodr/StoreUI.cpp
@@ -44,9 +44,9 @@ StoreUI::~StoreUI()
void StoreUI::refreshGui()
{
varItems->clear();
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<Store*>(original())->pokemod())->itemCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->itemCount(); ++i)
{
- const Item* item = static_cast<const Pokemod*>(static_cast<Store*>(original())->pokemod())->item(i);
+ const Item* item = static_cast<const Pokemod*>(original()->pokemod())->item(i);
QListWidgetItem* widgetItem = new QListWidgetItem(item->name(), varItems);
widgetItem->setData(Qt::UserRole, item->id());
}
diff --git a/pokemodr/TODO b/pokemodr/TODO
index 3d69e480..502f8be6 100644
--- a/pokemodr/TODO
+++ b/pokemodr/TODO
@@ -2,11 +2,7 @@ AbilityEffect
Dialog (with command dialogs)
ItemEffect
MapEffect
-MapTrainer
MoveEffect
-Sound
-
-Update GUI to see new methods
Set sub class stuff by passing it on to subclasses via setData
diff --git a/pokemodr/TileUI.cpp b/pokemodr/TileUI.cpp
index cae50262..56889285 100644
--- a/pokemodr/TileUI.cpp
+++ b/pokemodr/TileUI.cpp
@@ -54,9 +54,9 @@ void TileUI::initGui()
void TileUI::refreshGui()
{
varHMUnder->clear();
- for (int i = 0; i < static_cast<const Pokemod*>(static_cast<Tile*>(original())->pokemod())->tileCount(); ++i)
+ for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->tileCount(); ++i)
{
- const Tile* tile = static_cast<const Pokemod*>(static_cast<Tile*>(original())->pokemod())->tile(i);
+ const Tile* tile = static_cast<const Pokemod*>(original()->pokemod())->tile(i);
if (tile->id() != static_cast<Tile*>(original())->id())
{
varHMUnder->addItem(tile->sprite(), tile->name());
diff --git a/pokemodr/gui/maptrainer.ui b/pokemodr/gui/maptrainer.ui
index a573c906..57663bad 100644
--- a/pokemodr/gui/maptrainer.ui
+++ b/pokemodr/gui/maptrainer.ui
@@ -70,30 +70,7 @@
</property>
<layout class="QVBoxLayout" >
<item>
- <widget class="KIntNumInput" name="varCoordinateX" >
- <property name="toolTip" >
- <string>x coordinate of the trainer</string>
- </property>
- <property name="label" >
- <string>x</string>
- </property>
- <property name="minimum" >
- <number>0</number>
- </property>
- </widget>
- </item>
- <item>
- <widget class="KIntNumInput" name="varCoordinateY" >
- <property name="toolTip" >
- <string>y coordinate of the trainer</string>
- </property>
- <property name="label" >
- <string>y</string>
- </property>
- <property name="minimum" >
- <number>0</number>
- </property>
- </widget>
+ <widget class="PointWidget" native="1" name="varCoordinate" />
</item>
</layout>
</widget>
@@ -134,13 +111,13 @@
</widget>
</item>
<item>
- <widget class="QGroupBox" name="boxNumFight" >
+ <widget class="QGroupBox" name="boxNumberFight" >
<property name="title" >
<string>Number Fight</string>
</property>
<layout class="QHBoxLayout" >
<item>
- <widget class="KIntNumInput" name="varNumFight" >
+ <widget class="KIntNumInput" name="varNumberFight" >
<property name="toolTip" >
<string>How many team members from each side fight at a time</string>
</property>
@@ -153,7 +130,7 @@
</widget>
</item>
<item>
- <widget class="QGroupBox" name="boxAppearFlag" >
+ <widget class="QGroupBox" name="boxFlag" >
<property name="title" >
<string>Appear Flag</string>
</property>
@@ -172,7 +149,7 @@
</widget>
</item>
<item>
- <widget class="QCheckBox" name="varFlagState" >
+ <widget class="QCheckBox" name="varState" >
<property name="toolTip" >
<string>Whether the flag has to be on, off, or is ignored</string>
</property>
@@ -239,6 +216,12 @@
<extends>QPushButton</extends>
<header>kpushbutton.h</header>
</customwidget>
+ <customwidget>
+ <class>PointWidget</class>
+ <extends>QWidget</extends>
+ <header>../PointWidget.h</header>
+ <container>1</container>
+ </customwidget>
</customwidgets>
<resources/>
<connections/>
diff --git a/pokemodr/gui/trainer.ui b/pokemodr/gui/trainer.ui
index 3652c327..b6ffc82a 100644
--- a/pokemodr/gui/trainer.ui
+++ b/pokemodr/gui/trainer.ui
@@ -108,48 +108,6 @@
</layout>
</widget>
</item>
- <item>
- <widget class="QGroupBox" name="boxAI" >
- <property name="title" >
- <string>AI</string>
- </property>
- <layout class="QHBoxLayout" >
- <item>
- <spacer>
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" >
- <size>
- <width>20</width>
- <height>40</height>
- </size>
- </property>
- </spacer>
- </item>
- <item>
- <widget class="KPushButton" name="varAI" >
- <property name="toolTip" >
- <string>The AI profile used</string>
- </property>
- </widget>
- </item>
- <item>
- <spacer>
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" >
- <size>
- <width>20</width>
- <height>40</height>
- </size>
- </property>
- </spacer>
- </item>
- </layout>
- </widget>
- </item>
</layout>
</widget>
<customwidgets>
diff --git a/pokemodr/pokemodr.pro b/pokemodr/pokemodr.pro
index ae021254..38115fb9 100644
--- a/pokemodr/pokemodr.pro
+++ b/pokemodr/pokemodr.pro
@@ -75,6 +75,7 @@ SOURCES += AbilityUI.cpp \
ItemUI.cpp \
ItemTypeUI.cpp \
MapUI.cpp \
+ MapTrainerUI.cpp \
MapTrainerTeamMemberUI.cpp \
MapWarpUI.cpp \
MapWildListUI.cpp \
@@ -149,6 +150,7 @@ HEADERS += AbilityUI.h \
ItemUI.h \
ItemTypeUI.h \
MapUI.h \
+ MapTrainerUI.h \
MapTrainerTeamMemberUI.h \
MapWarpUI.h \
MapWildListUI.h \