From 9834ea2f8f8ea736c53d9686393f50ccc72a982b Mon Sep 17 00:00:00 2001 From: Ben Boeckel Date: Sat, 10 Jan 2009 18:05:23 -0500 Subject: Updated code to support new MapTrainerTeamMember item representation --- sigbattle/TeamMember.cpp | 8 +++++++- sigmodr/MapTrainerTeamMemberUI.cpp | 2 ++ sigscript/MapTrainerTeamMemberWrapper.cpp | 9 +++++---- sigscript/MapTrainerTeamMemberWrapper.h | 2 +- 4 files changed, 15 insertions(+), 6 deletions(-) diff --git a/sigbattle/TeamMember.cpp b/sigbattle/TeamMember.cpp index 7bdff1d8..afaa9cfb 100644 --- a/sigbattle/TeamMember.cpp +++ b/sigbattle/TeamMember.cpp @@ -138,7 +138,13 @@ Sigbattle::TeamMember::TeamMember(Sigscript::MapTrainerTeamMemberWrapper* teamMe setSpecies(teamMember->species()); setName(m_species->name()); setLevel(teamMember->level()); - m_items = teamMember->items(); + const QMap& itemMap = teamMember->items(); + QList items = itemMap.keys(); + foreach (Sigscript::ItemWrapper* item, items) + { + for (int i = 0; i < itemMap[item]; ++i) + m_items.append(item); + } initAbilities(teamMember->abilities()); initMoves(teamMember->moves()); initNatures(teamMember->natures()); diff --git a/sigmodr/MapTrainerTeamMemberUI.cpp b/sigmodr/MapTrainerTeamMemberUI.cpp index 275b135d..6491adeb 100644 --- a/sigmodr/MapTrainerTeamMemberUI.cpp +++ b/sigmodr/MapTrainerTeamMemberUI.cpp @@ -28,6 +28,8 @@ #include "../sigmod/Sigmod.h" #include "../sigmod/Species.h" +// FIXME: Update GUI to new item storage + Sigmodr::MapTrainerTeamMemberUI::MapTrainerTeamMemberUI(Sigmod::MapTrainerTeamMember* teamMember, QWidget* parent) : ObjectUI(parent) { diff --git a/sigscript/MapTrainerTeamMemberWrapper.cpp b/sigscript/MapTrainerTeamMemberWrapper.cpp index 6309c1d7..d7b97cc4 100644 --- a/sigscript/MapTrainerTeamMemberWrapper.cpp +++ b/sigscript/MapTrainerTeamMemberWrapper.cpp @@ -56,12 +56,13 @@ QList Sigscript::MapTrainerTeamMemberWrapper::abilit return abilities; } -QList Sigscript::MapTrainerTeamMemberWrapper::items() +QMap Sigscript::MapTrainerTeamMemberWrapper::items() { - QList itemIds = m_teamMember->item(); - QList items; + const QMap& itemMap = m_teamMember->item(); + QList itemIds = itemMap.keys(); + QMap items; foreach (int id, itemIds) - items.append(sigmod()->item(id)); + items[sigmod()->item(id)] = itemMap[id]; return items; } diff --git a/sigscript/MapTrainerTeamMemberWrapper.h b/sigscript/MapTrainerTeamMemberWrapper.h index f39259d5..e7c33235 100644 --- a/sigscript/MapTrainerTeamMemberWrapper.h +++ b/sigscript/MapTrainerTeamMemberWrapper.h @@ -44,7 +44,7 @@ class SIGSCRIPT_EXPORT MapTrainerTeamMemberWrapper : public ObjectWrapper Q_SCRIPTABLE SpeciesWrapper* species(); Q_SCRIPTABLE int level() const; Q_SCRIPTABLE QList abilities(); - Q_SCRIPTABLE QList items(); + Q_SCRIPTABLE QMap items(); Q_SCRIPTABLE QList moves(); Q_SCRIPTABLE QList natures(); private: -- cgit