diff options
author | Loïc Blot <nerzhul@users.noreply.github.com> | 2017-01-27 08:59:30 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-01-27 08:59:30 +0100 |
commit | b7a98e98500402c3bbdb6d56d0fe42b4f5b3cedb (patch) | |
tree | cc45c9609f5e0fe7714e33615b0defe5d42f4840 /src/remoteplayer.h | |
parent | 2a8953107181b4df6ff55d0ae214490575609f49 (diff) | |
download | minetest-b7a98e98500402c3bbdb6d56d0fe42b4f5b3cedb.tar.gz minetest-b7a98e98500402c3bbdb6d56d0fe42b4f5b3cedb.tar.bz2 minetest-b7a98e98500402c3bbdb6d56d0fe42b4f5b3cedb.zip |
Implement player attribute backend (#4155)
* This backend permit mods to store extra players attributes to a common interface.
* Add the obj:set_attribute(attr, value) Lua call
* Add the obj:get_attribute(attr) Lua call
Examples:
* player:set_attribute("home:home", "10,25,-78")
* player:get_attribute("default:mana")
Attributes are saved as a json in the player file in extended_attributes
key
They are saved only if a modification on the attributes occurs and loaded
when emergePlayer is called (they are attached to PlayerSAO).
Diffstat (limited to 'src/remoteplayer.h')
-rw-r--r-- | src/remoteplayer.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/remoteplayer.h b/src/remoteplayer.h index 61b5a23de..f44fb9332 100644 --- a/src/remoteplayer.h +++ b/src/remoteplayer.h @@ -25,11 +25,13 @@ with this program; if not, write to the Free Software Foundation, Inc., class PlayerSAO; -enum RemotePlayerChatResult { +enum RemotePlayerChatResult +{ RPLAYER_CHATRESULT_OK, RPLAYER_CHATRESULT_FLOODING, RPLAYER_CHATRESULT_KICK, }; + /* Player on the server */ @@ -135,6 +137,7 @@ private: deSerialize stops reading exactly at the right point. */ void serialize(std::ostream &os); + void serializeExtraAttributes(std::string &output); PlayerSAO *m_sao; bool m_dirty; |