From 91615f9588420fd716978552fdacf1323b8df11c Mon Sep 17 00:00:00 2001 From: rubenwardy Date: Fri, 6 Apr 2018 09:52:29 +0100 Subject: Add player:get_meta(), deprecate player attributes (#7202) * Add player:get_meta(), deprecate player attributes --- src/metadata.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'src/metadata.cpp') diff --git a/src/metadata.cpp b/src/metadata.cpp index 6ad65e007..453ac1c9a 100644 --- a/src/metadata.cpp +++ b/src/metadata.cpp @@ -27,6 +27,7 @@ with this program; if not, write to the Free Software Foundation, Inc., void Metadata::clear() { m_stringvars.clear(); + m_modified = true; } bool Metadata::empty() const @@ -68,6 +69,18 @@ const std::string &Metadata::getString(const std::string &name, u16 recursion) c return resolveString(it->second, recursion); } +bool Metadata::getStringToRef( + const std::string &name, std::string &str, u16 recursion) const +{ + StringMap::const_iterator it = m_stringvars.find(name); + if (it == m_stringvars.end()) { + return false; + } + + str = resolveString(it->second, recursion); + return true; +} + /** * Sets var to name key in the metadata storage * @@ -88,6 +101,7 @@ bool Metadata::setString(const std::string &name, const std::string &var) } m_stringvars[name] = var; + m_modified = true; return true; } -- cgit v1.2.3