summaryrefslogtreecommitdiff
path: root/src/script/cpp_api/s_item.cpp
diff options
context:
space:
mode:
authorSmallJoker <SmallJoker@users.noreply.github.com>2017-10-07 15:11:07 +0200
committerSmallJoker <mk939@ymail.com>2018-06-03 17:31:59 +0200
commit0034abb56075b841da441b1c8ad2e7779f42eac9 (patch)
tree21297ed33ffb0a062f0d868ab4aa5d2873a1c923 /src/script/cpp_api/s_item.cpp
parent200e9cc4a25dd6161ace40c6a222bac2810ea104 (diff)
downloadminetest-0034abb56075b841da441b1c8ad2e7779f42eac9.tar.gz
minetest-0034abb56075b841da441b1c8ad2e7779f42eac9.tar.bz2
minetest-0034abb56075b841da441b1c8ad2e7779f42eac9.zip
Unkown nodes: Provide position on interact (#6505)
* Unkown nodes: Provide position on interact
Diffstat (limited to 'src/script/cpp_api/s_item.cpp')
-rw-r--r--src/script/cpp_api/s_item.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/script/cpp_api/s_item.cpp b/src/script/cpp_api/s_item.cpp
index e13da1c86..0654ca3dc 100644
--- a/src/script/cpp_api/s_item.cpp
+++ b/src/script/cpp_api/s_item.cpp
@@ -211,7 +211,8 @@ bool ScriptApiItem::item_CraftPredict(ItemStack &item, ServerActiveObject *user,
// function onto the stack
// If core.registered_items[name] doesn't exist, core.nodedef_default
// is tried instead so unknown items can still be manipulated to some degree
-bool ScriptApiItem::getItemCallback(const char *name, const char *callbackname)
+bool ScriptApiItem::getItemCallback(const char *name, const char *callbackname,
+ const v3s16 *p)
{
lua_State* L = getStack();
@@ -222,10 +223,12 @@ bool ScriptApiItem::getItemCallback(const char *name, const char *callbackname)
lua_getfield(L, -1, name);
lua_remove(L, -2); // Remove registered_items
// Should be a table
- if(lua_type(L, -1) != LUA_TTABLE)
- {
+ if (lua_type(L, -1) != LUA_TTABLE) {
// Report error and clean up
- errorstream << "Item \"" << name << "\" not defined" << std::endl;
+ errorstream << "Item \"" << name << "\" not defined";
+ if (p)
+ errorstream << " at position " << PP(*p);
+ errorstream << std::endl;
lua_pop(L, 1);
// Try core.nodedef_default instead