diff options
author | RealBadAngel <maciej.kasatkin@o2.pl> | 2016-01-08 15:59:36 +0100 |
---|---|---|
committer | paramat <mat.gregory@virginmedia.com> | 2016-01-18 17:21:41 +0000 |
commit | 87291ea44a61614d5bd9efc0657926da3f867b5f (patch) | |
tree | c5c046e5dc74211532f0fd88434283e49e190d98 /src | |
parent | eb6e2c11b16c9ef5287bda224fa965a37ef49131 (diff) | |
download | minetest-87291ea44a61614d5bd9efc0657926da3f867b5f.tar.gz minetest-87291ea44a61614d5bd9efc0657926da3f867b5f.tar.bz2 minetest-87291ea44a61614d5bd9efc0657926da3f867b5f.zip |
Show infotext with description for item entities
Diffstat (limited to 'src')
-rw-r--r-- | src/content_cao.h | 5 | ||||
-rw-r--r-- | src/game.cpp | 7 | ||||
-rw-r--r-- | src/object_properties.cpp | 2 | ||||
-rw-r--r-- | src/object_properties.h | 1 | ||||
-rw-r--r-- | src/script/common/c_content.cpp | 3 |
5 files changed, 16 insertions, 2 deletions
diff --git a/src/content_cao.h b/src/content_cao.h index d9145c5f1..abb242aa4 100644 --- a/src/content_cao.h +++ b/src/content_cao.h @@ -201,6 +201,11 @@ public: float time_from_last_punch=1000000); std::string debugInfoText(); + + std::string infoText() + { + return m_prop.infotext; + } }; diff --git a/src/game.cpp b/src/game.cpp index 92d919931..3902c50bb 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -3732,8 +3732,11 @@ void Game::handlePointingAtObject(GameRunData *runData, { infotext = utf8_to_wide(runData->selected_object->infoText()); - if (infotext == L"" && show_debug) { - infotext = utf8_to_wide(runData->selected_object->debugInfoText()); + if (show_debug) { + if (infotext != L"") { + infotext += L"\n"; + } + infotext += utf8_to_wide(runData->selected_object->debugInfoText()); } if (input->getLeftState()) { diff --git a/src/object_properties.cpp b/src/object_properties.cpp index abd1bbd09..89ca26274 100644 --- a/src/object_properties.cpp +++ b/src/object_properties.cpp @@ -118,6 +118,7 @@ void ObjectProperties::serialize(std::ostream &os) const os << serializeString(nametag); writeARGB8(os, nametag_color); writeF1000(os, automatic_face_movement_max_rotation_per_sec); + os << serializeString(infotext); // Add stuff only at the bottom. // Never remove anything, because we don't want new versions of this @@ -159,6 +160,7 @@ void ObjectProperties::deSerialize(std::istream &is) nametag = deSerializeString(is); nametag_color = readARGB8(is); automatic_face_movement_max_rotation_per_sec = readF1000(is); + infotext = deSerializeString(is); }catch(SerializationError &e){} } else diff --git a/src/object_properties.h b/src/object_properties.h index 47698cff7..02ec9d1f7 100644 --- a/src/object_properties.h +++ b/src/object_properties.h @@ -51,6 +51,7 @@ struct ObjectProperties std::string nametag; video::SColor nametag_color; f32 automatic_face_movement_max_rotation_per_sec; + std::string infotext; ObjectProperties(); std::string dump(); diff --git a/src/script/common/c_content.cpp b/src/script/common/c_content.cpp index 62de2c968..275b22bb8 100644 --- a/src/script/common/c_content.cpp +++ b/src/script/common/c_content.cpp @@ -216,6 +216,7 @@ void read_object_properties(lua_State *L, int index, prop->automatic_face_movement_max_rotation_per_sec = luaL_checknumber(L, -1); } lua_pop(L, 1); + getstringfield(L, -1, "infotext", prop->infotext); } /******************************************************************************/ @@ -282,6 +283,8 @@ void push_object_properties(lua_State *L, ObjectProperties *prop) lua_setfield(L, -2, "nametag_color"); lua_pushnumber(L, prop->automatic_face_movement_max_rotation_per_sec); lua_setfield(L, -2, "automatic_face_movement_max_rotation_per_sec"); + lua_pushlstring(L, prop->infotext.c_str(), prop->infotext.size()); + lua_setfield(L, -2, "infotext"); } /******************************************************************************/ |