mirror of
				https://github.com/luanti-org/luanti.git
				synced 2025-11-04 09:15:29 +01:00 
			
		
		
		
	Pass ContentFeatures as reference to read_content_features (#10464)
This commit is contained in:
		@@ -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)
 | 
			
		||||
 
 | 
			
		||||
@@ -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);
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -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")
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user