1
0
Fork 0
mirror of https://github.com/luanti-org/luanti.git synced 2025-06-27 16:36:03 +00:00

Automatic item and node colorization (#5640)

* Automatic item and node colorization

Now nodes with a palette yield colored item stacks, and colored items
place colored nodes by default. The client predicts the colorization.

* Backwards compatibility

* Use nil

* Style fixes

* Fix code style

* Document changes
This commit is contained in:
Dániel Juhász 2017-06-20 09:19:56 +00:00 committed by Loïc Blot
parent 7c07cb4ec2
commit 0fcaf9fb1b
8 changed files with 114 additions and 38 deletions

View file

@ -325,8 +325,8 @@ int InvRef::l_room_for_item(lua_State *L)
return 1;
}
// contains_item(self, listname, itemstack or itemstring or table or nil) -> true/false
// Returns true if the list contains the given count of the given item name
// contains_item(self, listname, itemstack or itemstring or table or nil, [match_meta]) -> true/false
// Returns true if the list contains the given count of the given item
int InvRef::l_contains_item(lua_State *L)
{
NO_MAP_LOCK_REQUIRED;
@ -334,8 +334,11 @@ int InvRef::l_contains_item(lua_State *L)
const char *listname = luaL_checkstring(L, 2);
ItemStack item = read_item(L, 3, getServer(L)->idef());
InventoryList *list = getlist(L, ref, listname);
if(list){
lua_pushboolean(L, list->containsItem(item));
bool match_meta = false;
if (lua_isboolean(L, 4))
match_meta = lua_toboolean(L, 4);
if (list) {
lua_pushboolean(L, list->containsItem(item, match_meta));
} else {
lua_pushboolean(L, false);
}

View file

@ -93,7 +93,7 @@ private:
// Returns true if the item completely fits into the list
static int l_room_for_item(lua_State *L);
// contains_item(self, listname, itemstack or itemstring or table or nil) -> true/false
// contains_item(self, listname, itemstack or itemstring or table or nil, [match_meta]) -> true/false
// Returns true if the list contains the given count of the given item name
static int l_contains_item(lua_State *L);