diff options
author | Loic Blot <loic.blot@unix-experience.fr> | 2015-03-04 11:29:34 +0100 |
---|---|---|
committer | Loic Blot <loic.blot@unix-experience.fr> | 2015-03-04 11:29:39 +0100 |
commit | 1b2f64473ed4f222d3b7f02df853730d4382105e (patch) | |
tree | 820e24b348438ce79dc5e183774e4bd091d2d3a9 /src/script/lua_api | |
parent | 038d3a31dfa6c382a5a5a57f2ce367d1cd67fb9f (diff) | |
download | minetest-1b2f64473ed4f222d3b7f02df853730d4382105e.tar.gz minetest-1b2f64473ed4f222d3b7f02df853730d4382105e.tar.bz2 minetest-1b2f64473ed4f222d3b7f02df853730d4382105e.zip |
Send Inventory packet on event, don't check it at each AsyncRunStep.
* Call UpdateCrafting into SendInventory because this functions is only called before SendInventory
* Use Player* instead of peer_id for UpdateCrafting because SendInventory already has the Player* pointer, then don't loop for searching Player* per peer_id
* m_env_mutex don't need to be used with this modification because it's already locked before the calls
Diffstat (limited to 'src/script/lua_api')
-rw-r--r-- | src/script/lua_api/l_object.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/script/lua_api/l_object.cpp b/src/script/lua_api/l_object.cpp index 0bc6c0bbc..0f3848aac 100644 --- a/src/script/lua_api/l_object.cpp +++ b/src/script/lua_api/l_object.cpp @@ -355,6 +355,9 @@ int ObjectRef::l_set_wielded_item(lua_State *L) // Do it ItemStack item = read_item(L, 2, getServer(L)); bool success = co->setWieldedItem(item); + if (success && co->getType() == ACTIVEOBJECT_TYPE_PLAYER) { + getServer(L)->SendInventory(((PlayerSAO*)co)->getPeerID()); + } lua_pushboolean(L, success); return 1; } |