summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLoic Blot <loic.blot@unix-experience.fr>2015-03-04 15:27:53 +0100
committerLoic Blot <loic.blot@unix-experience.fr>2015-03-04 15:28:33 +0100
commit7e088fdfe3c77083606bce955624aef1da59bb32 (patch)
tree00d427e45bbcac528b4aa86b3060c09454cb08cc
parentbbed01ab62bf2433e103dd18c6c07ff3f503bc57 (diff)
downloadminetest-7e088fdfe3c77083606bce955624aef1da59bb32.tar.gz
minetest-7e088fdfe3c77083606bce955624aef1da59bb32.tar.bz2
minetest-7e088fdfe3c77083606bce955624aef1da59bb32.zip
We always know playerSAO when calling SendInventory. Using it instead of searching it via peer_id
-rw-r--r--src/network/packethandlers/server.cpp2
-rw-r--r--src/script/lua_api/l_object.cpp2
-rw-r--r--src/server.cpp18
-rw-r--r--src/server.h2
4 files changed, 12 insertions, 12 deletions
diff --git a/src/network/packethandlers/server.cpp b/src/network/packethandlers/server.cpp
index 526c17344..aeaa2f3f3 100644
--- a/src/network/packethandlers/server.cpp
+++ b/src/network/packethandlers/server.cpp
@@ -1391,7 +1391,7 @@ void Server::handleCommand_Interact(NetworkPacket* pkt)
// Apply returned ItemStack
if (playersao->setWieldedItem(item)) {
- SendInventory(pkt->getPeerId());
+ SendInventory(playersao);
}
}
diff --git a/src/script/lua_api/l_object.cpp b/src/script/lua_api/l_object.cpp
index 0f3848aac..d8cfaf82b 100644
--- a/src/script/lua_api/l_object.cpp
+++ b/src/script/lua_api/l_object.cpp
@@ -356,7 +356,7 @@ int ObjectRef::l_set_wielded_item(lua_State *L)
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());
+ getServer(L)->SendInventory(((PlayerSAO*)co));
}
lua_pushboolean(L, success);
return 1;
diff --git a/src/server.cpp b/src/server.cpp
index 625ab2231..51b90ce45 100644
--- a/src/server.cpp
+++ b/src/server.cpp
@@ -1125,7 +1125,7 @@ PlayerSAO* Server::StageTwoClientInit(u16 peer_id)
SendPlayerInventoryFormspec(peer_id);
// Send inventory
- SendInventory(peer_id);
+ SendInventory(playersao);
// Send HP
if(g_settings->getBool("enable_damage"))
@@ -1329,6 +1329,7 @@ Inventory* Server::getInventory(const InventoryLocation &loc)
break;
default:
assert(0);
+ break;
}
return NULL;
}
@@ -1346,7 +1347,7 @@ void Server::setInventoryModified(const InventoryLocation &loc)
if(!playersao)
return;
- SendInventory(playersao->getPeerID());
+ SendInventory(playersao);
}
break;
case InventoryLocation::NODEMETA:
@@ -1367,6 +1368,7 @@ void Server::setInventoryModified(const InventoryLocation &loc)
break;
default:
assert(0);
+ break;
}
}
@@ -1604,23 +1606,21 @@ void Server::SendNodeDef(u16 peer_id,
Non-static send methods
*/
-void Server::SendInventory(u16 peer_id)
+void Server::SendInventory(PlayerSAO* playerSAO)
{
DSTACK(__FUNCTION_NAME);
- PlayerSAO *playersao = getPlayerSAO(peer_id);
- assert(playersao);
-
- UpdateCrafting(playersao->getPlayer());
+ UpdateCrafting(playerSAO->getPlayer());
/*
Serialize it
*/
- NetworkPacket* pkt = new NetworkPacket(TOCLIENT_INVENTORY, 0, peer_id);
+ NetworkPacket* pkt = new NetworkPacket(TOCLIENT_INVENTORY, 0,
+ playerSAO->getPeerID());
std::ostringstream os;
- playersao->getInventory()->serialize(os);
+ playerSAO->getInventory()->serialize(os);
std::string s = os.str();
diff --git a/src/server.h b/src/server.h
index 2fea0db4c..784f1e928 100644
--- a/src/server.h
+++ b/src/server.h
@@ -374,7 +374,7 @@ public:
void SendPlayerHPOrDie(u16 peer_id, bool die) { die ? DiePlayer(peer_id) : SendPlayerHP(peer_id); }
void SendPlayerBreath(u16 peer_id);
- void SendInventory(u16 peer_id);
+ void SendInventory(PlayerSAO* playerSAO);
void SendMovePlayer(u16 peer_id);
// Bind address