From: JosiahWI <41302989+JosiahWI@users.noreply.github.com> Date: Tue, 13 Oct 2020 15:36:01 +0000 (-0500) Subject: Pass ContentFeatures as reference to read_content_features (#10464) X-Git-Tag: 03-12-2020~13^2~71 X-Git-Url: https://git.lizzy.rs/?a=commitdiff_plain;h=11f3deb9c4512b918de8f5e778bc8b9535bd62c7;p=dragonfireclient.git Pass ContentFeatures as reference to read_content_features (#10464) --- diff --git a/src/script/common/c_content.cpp b/src/script/common/c_content.cpp index 147f6e3ed..a95cf94a1 100644 --- a/src/script/common/c_content.cpp +++ b/src/script/common/c_content.cpp @@ -491,13 +491,11 @@ TileDef read_tiledef(lua_State *L, int index, u8 drawtype) } /******************************************************************************/ -ContentFeatures read_content_features(lua_State *L, int index) +void read_content_features(lua_State *L, ContentFeatures &f, int index) { if(index < 0) index = lua_gettop(L) + 1 + index; - ContentFeatures f; - /* Cache existence of some callbacks */ lua_getfield(L, index, "on_construct"); if(!lua_isnil(L, -1)) f.has_on_construct = true; @@ -800,7 +798,6 @@ ContentFeatures read_content_features(lua_State *L, int index) getstringfield(L, index, "node_dig_prediction", f.node_dig_prediction); - return f; } void push_content_features(lua_State *L, const ContentFeatures &c) diff --git a/src/script/common/c_content.h b/src/script/common/c_content.h index 8f32e58eb..29d576355 100644 --- a/src/script/common/c_content.h +++ b/src/script/common/c_content.h @@ -67,7 +67,8 @@ struct collisionMoveResult; extern struct EnumString es_TileAnimationType[]; -ContentFeatures read_content_features (lua_State *L, int index); +void read_content_features (lua_State *L, ContentFeatures &f, + int index); void push_content_features (lua_State *L, const ContentFeatures &c); diff --git a/src/script/lua_api/l_item.cpp b/src/script/lua_api/l_item.cpp index 2d1124a4d..9e0da4034 100644 --- a/src/script/lua_api/l_item.cpp +++ b/src/script/lua_api/l_item.cpp @@ -570,7 +570,8 @@ int ModApiItemMod::l_register_item_raw(lua_State *L) // Read the node definition (content features) and register it if (def.type == ITEM_NODE) { - ContentFeatures f = read_content_features(L, table); + ContentFeatures f; + read_content_features(L, f, table); // when a mod reregisters ignore, only texture changes and such should // be done if (f.name == "ignore")