1
0
mirror of https://github.com/luanti-org/luanti.git synced 2025-10-24 05:15:22 +02:00

Entirely new version of pull request #3962

Changes to be committed:
	modified:   builtin/game/register.lua
	modified:   src/content_nodemeta.cpp
	modified:   src/content_nodemeta.h
	modified:   src/game.cpp
	modified:   src/inventory.cpp
	modified:   src/inventory.h
	modified:   src/inventorymanager.cpp
	modified:   src/inventorymanager.h
	modified:   src/mapblock.cpp
	modified:   src/network/clientpackethandler.cpp
	modified:   src/nodemetadata.cpp
	modified:   src/nodemetadata.h
	modified:   src/player.cpp
	modified:   src/player.h
	modified:   src/rollback_interface.cpp
	modified:   src/script/common/c_content.cpp
	modified:   src/script/cpp_api/s_inventory.cpp
	modified:   src/script/cpp_api/s_inventory.h
	modified:   src/script/cpp_api/s_nodemeta.cpp
	modified:   src/script/cpp_api/s_nodemeta.h
	modified:   src/script/cpp_api/s_player.cpp
	modified:   src/script/cpp_api/s_player.h
	modified:   src/script/lua_api/l_inventory.cpp
	modified:   src/script/lua_api/l_nodemeta.cpp
	modified:   src/server.cpp
	modified:   src/serverobject.cpp
	modified:   src/unittest/test_inventory.cpp
This commit is contained in:
Foghrye4
2016-04-18 21:33:28 +03:00
parent d82c5da0dc
commit b5dca28ca3
28 changed files with 509 additions and 125 deletions

View File

@@ -197,7 +197,7 @@ int InvRef::l_set_stack(lua_State *L)
ItemStack newitem = read_item(L, 4, getServer(L));
InventoryList *list = getlist(L, ref, listname);
if(list != NULL && i >= 0 && i < (int) list->getSize()){
list->changeItem(i, newitem);
list->changeItem(getServer(L)->getScriptIface(), i, newitem);
reportInventoryChange(L, ref);
lua_pushboolean(L, true);
} else {
@@ -298,7 +298,7 @@ int InvRef::l_add_item(lua_State *L)
ItemStack item = read_item(L, 3, getServer(L));
InventoryList *list = getlist(L, ref, listname);
if(list){
ItemStack leftover = list->addItem(item);
ItemStack leftover = list->addItem(getServer(L)->getScriptIface(), item);
if(leftover.count != item.count)
reportInventoryChange(L, ref);
LuaItemStack::create(L, leftover);
@@ -352,7 +352,7 @@ int InvRef::l_remove_item(lua_State *L)
ItemStack item = read_item(L, 3, getServer(L));
InventoryList *list = getlist(L, ref, listname);
if(list){
ItemStack removed = list->removeItem(item);
ItemStack removed = list->removeItem(getServer(L)->getScriptIface(), item);
if(!removed.empty())
reportInventoryChange(L, ref);
LuaItemStack::create(L, removed);

View File

@@ -44,7 +44,7 @@ NodeMetadata* NodeMetaRef::getmeta(NodeMetaRef *ref, bool auto_create)
{
NodeMetadata *meta = ref->m_env->getMap().getNodeMetadata(ref->m_p);
if(meta == NULL && auto_create) {
meta = new NodeMetadata(ref->m_env->getGameDef()->idef());
meta = new NodeMetadata(ref->m_env->getGameDef()->idef(), ref->m_p);
if(!ref->m_env->getMap().setNodeMetadata(ref->m_p, meta)) {
delete meta;
return NULL;