diff options
author | Tiger Wang <ziwei.tiger@hotmail.co.uk> | 2014-01-19 01:55:08 +0100 |
---|---|---|
committer | Tiger Wang <ziwei.tiger@hotmail.co.uk> | 2014-01-19 01:55:08 +0100 |
commit | 71b01234a2eadbf3512e8efcdd28b2728d720628 (patch) | |
tree | 87df1817b753e6298242cda4ac5f0d86614c99c6 /Tools/ProtoProxy | |
parent | Improved command blocks (diff) | |
download | cuberite-71b01234a2eadbf3512e8efcdd28b2728d720628.tar cuberite-71b01234a2eadbf3512e8efcdd28b2728d720628.tar.gz cuberite-71b01234a2eadbf3512e8efcdd28b2728d720628.tar.bz2 cuberite-71b01234a2eadbf3512e8efcdd28b2728d720628.tar.lz cuberite-71b01234a2eadbf3512e8efcdd28b2728d720628.tar.xz cuberite-71b01234a2eadbf3512e8efcdd28b2728d720628.tar.zst cuberite-71b01234a2eadbf3512e8efcdd28b2728d720628.zip |
Diffstat (limited to 'Tools/ProtoProxy')
-rw-r--r-- | Tools/ProtoProxy/Connection.cpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/Tools/ProtoProxy/Connection.cpp b/Tools/ProtoProxy/Connection.cpp index 34da9b700..cd66e2dfd 100644 --- a/Tools/ProtoProxy/Connection.cpp +++ b/Tools/ProtoProxy/Connection.cpp @@ -2496,7 +2496,8 @@ bool cConnection::HandleServerUpdateTileEntity(void) HANDLE_SERVER_PACKET_READ(ReadBEShort, short, BlockY); HANDLE_SERVER_PACKET_READ(ReadBEInt, int, BlockZ); HANDLE_SERVER_PACKET_READ(ReadByte, Byte, Action); - HANDLE_SERVER_PACKET_READ(ReadBEShort, short, DataLength); + HANDLE_SERVER_PACKET_READ(ReadBEShort, short, DataLength); + AString Data; if ((DataLength > 0) && !m_ServerBuffer.ReadString(Data, DataLength)) { @@ -2506,6 +2507,18 @@ bool cConnection::HandleServerUpdateTileEntity(void) Log(" Block = {%d, %d, %d}", BlockX, BlockY, BlockZ); Log(" Action = %d", Action); DataLog(Data.data(), Data.size(), " Data (%u bytes)", Data.size()); + + // Save metadata to a file: + AString fnam; + Printf(fnam, "%s_item_%08x.nbt", m_LogNameBase.c_str(), m_ItemIdx++); + FILE * f = fopen(fnam.c_str(), "wb"); + if (f != NULL) + { + fwrite(Data.data(), 1, Data.size(), f); + fclose(f); + Log("(saved to file \"%s\")", fnam.c_str()); + } + COPY_TO_CLIENT(); return true; } |