summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRealBadAngel <maciej.kasatkin@o2.pl>2016-01-08 15:59:36 +0100
committerparamat <mat.gregory@virginmedia.com>2016-01-18 17:21:41 +0000
commit87291ea44a61614d5bd9efc0657926da3f867b5f (patch)
treec5c046e5dc74211532f0fd88434283e49e190d98 /src
parenteb6e2c11b16c9ef5287bda224fa965a37ef49131 (diff)
downloadminetest-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.h5
-rw-r--r--src/game.cpp7
-rw-r--r--src/object_properties.cpp2
-rw-r--r--src/object_properties.h1
-rw-r--r--src/script/common/c_content.cpp3
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");
}
/******************************************************************************/