From 46106e962bee32271ee644224c5ac525eb32f888 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Mon, 4 Mar 2013 02:58:12 +0300 Subject: Add different effects to npc depend on qests status (evol only) --- src/gui/questswindow.h | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'src/gui/questswindow.h') diff --git a/src/gui/questswindow.h b/src/gui/questswindow.h index 884b488c4..ad02c5397 100644 --- a/src/gui/questswindow.h +++ b/src/gui/questswindow.h @@ -32,15 +32,21 @@ #include #include +class Being; class Button; class BrowserBox; class ExtendedListBox; class ItemLinkHandler; +class Map; class ScrollArea; +class QuestEffect; class QuestsModel; struct QuestItem; +typedef std::map NpcQuestEffectMap; +typedef NpcQuestEffectMap::const_iterator NpcQuestEffectMapCIter; + class QuestsWindow final : public Window, public gcn::ActionListener { public: @@ -66,11 +72,19 @@ class QuestsWindow final : public Window, public gcn::ActionListener void showQuest(const QuestItem *const quest); + void setMap(const Map *const map); + + void updateEffects(); + + void addEffect(Being *const being); + private: void loadXml(); void loadQuest(const int var, const XmlNodePtr node); + void loadEffect(const int var, const XmlNodePtr node); + QuestsModel *mQuestsModel; ExtendedListBox *mQuestsListBox; ScrollArea *mQuestScrollArea; @@ -78,13 +92,20 @@ class QuestsWindow final : public Window, public gcn::ActionListener BrowserBox *mText; ScrollArea *mTextScrollArea; Button *mCloseButton; + //quest variables: var, value std::map mVars; + //quests: var, quests std::map > mQuests; + std::vector mAllEffects; + std::vector mMapEffects; + //npc effects for current map and values: npc, effect + NpcQuestEffectMap mNpcEffects; std::vector mQuestLinks; Image *mCompleteIcon; Image *mIncompleteIcon; int mNewQuestEffectId; int mCompleteQuestEffectId; + const Map *mMap; }; extern QuestsWindow *questsWindow; -- cgit v1.2.3-70-g09d2