summaryrefslogtreecommitdiff
path: root/src/client.cpp
diff options
context:
space:
mode:
authorPerttu Ahola <celeron55@gmail.com>2012-07-19 14:09:16 +0300
committerPerttu Ahola <celeron55@gmail.com>2012-07-19 14:09:16 +0300
commit16ad10e62f4dcf620f9a962b07aa39f1c561f8dc (patch)
treef82e70e1d3d1c54b179ef4b3bc4b06bd702316dc /src/client.cpp
parent02fb912a955c9e5baa86ecd4206eefaa88f3e60a (diff)
downloadminetest-16ad10e62f4dcf620f9a962b07aa39f1c561f8dc.tar.gz
minetest-16ad10e62f4dcf620f9a962b07aa39f1c561f8dc.tar.bz2
minetest-16ad10e62f4dcf620f9a962b07aa39f1c561f8dc.zip
Allow defining player's inventory form in Lua
Diffstat (limited to 'src/client.cpp')
-rw-r--r--src/client.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/client.cpp b/src/client.cpp
index 1327feb1f..fdfb49c84 100644
--- a/src/client.cpp
+++ b/src/client.cpp
@@ -1688,6 +1688,16 @@ void Client::ProcessData(u8 *data, u32 datasize, u16 sender_peer_id)
}
infostream<<std::endl;
}
+ else if(command == TOCLIENT_INVENTORY_FORMSPEC)
+ {
+ std::string datastring((char*)&data[2], datasize-2);
+ std::istringstream is(datastring, std::ios_base::binary);
+
+ // Store formspec in LocalPlayer
+ Player *player = m_env.getLocalPlayer();
+ assert(player != NULL);
+ player->inventory_formspec = deSerializeLongString(is);
+ }
else
{
infostream<<"Client: Ignoring unknown command "