diff options
author | Andrei Karas <akaras@inbox.ru> | 2014-12-10 12:43:12 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2014-12-10 12:43:12 +0300 |
commit | b4de7c68b240dd1b63ac1b78feb0721977cdb171 (patch) | |
tree | 83a96195df384fd0a9535d3e477f76879934b6c9 | |
parent | 248c845b6a09c436f3d8d69a859f1c34d91b7508 (diff) | |
download | manaverse-b4de7c68b240dd1b63ac1b78feb0721977cdb171.tar.gz manaverse-b4de7c68b240dd1b63ac1b78feb0721977cdb171.tar.bz2 manaverse-b4de7c68b240dd1b63ac1b78feb0721977cdb171.tar.xz manaverse-b4de7c68b240dd1b63ac1b78feb0721977cdb171.zip |
Add default npc menu items if missing in configuration.
-rw-r--r-- | src/resources/beinginfo.cpp | 5 | ||||
-rw-r--r-- | src/resources/beinginfo.h | 2 | ||||
-rw-r--r-- | src/resources/db/npcdb.cpp | 9 |
3 files changed, 15 insertions, 1 deletions
diff --git a/src/resources/beinginfo.cpp b/src/resources/beinginfo.cpp index 8b9d72376..ad10f5628 100644 --- a/src/resources/beinginfo.cpp +++ b/src/resources/beinginfo.cpp @@ -219,3 +219,8 @@ void BeingInfo::addMenu(const std::string &name, const std::string &command) { mMenu.push_back(BeingMenuItem(name, command)); } + +const std::vector<BeingMenuItem> &BeingInfo::getMenu() const +{ + return mMenu; +} diff --git a/src/resources/beinginfo.h b/src/resources/beinginfo.h index aefd7a5ca..4dfea8bac 100644 --- a/src/resources/beinginfo.h +++ b/src/resources/beinginfo.h @@ -318,6 +318,8 @@ class BeingInfo final void addMenu(const std::string &name, const std::string &command); + const std::vector<BeingMenuItem> &getMenu() const; + static void init(); static void clear(); diff --git a/src/resources/db/npcdb.cpp b/src/resources/db/npcdb.cpp index 542724e27..5f7c48b0b 100644 --- a/src/resources/db/npcdb.cpp +++ b/src/resources/db/npcdb.cpp @@ -22,6 +22,7 @@ #include "resources/db/npcdb.h" +#include "configuration.h" #include "logger.h" #include "resources/beingcommon.h" @@ -29,7 +30,7 @@ #include "resources/spritereference.h" #include "utils/dtor.h" -#include "configuration.h" +#include "utils/gettext.h" #include "debug.h" @@ -137,6 +138,12 @@ void NPCDB::loadXmlFile(const std::string &fileName) } currentInfo->setDisplay(display); + if (currentInfo->getMenu().empty()) + { + currentInfo->addMenu(_("Talk"), "/talk <NPCNAME>"); + currentInfo->addMenu(_("Buy"), "/buy <NPCNAME>"); + currentInfo->addMenu(_("Sell"), "/sell <NPCNAME>"); + } mNPCInfos[id] = currentInfo; } } |