diff options
author | lapayo94@gmail.com <lapayo94@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6> | 2011-12-21 21:42:34 +0100 |
---|---|---|
committer | lapayo94@gmail.com <lapayo94@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6> | 2011-12-21 21:42:34 +0100 |
commit | 02f05f749645d3ef211676e6745d3feda2cd0513 (patch) | |
tree | 2b4c08e1ff7eab1d69f1dad4a00ef2d4d4fbcd3c /source/packets/cPacket_WholeInventory.cpp | |
parent | Changed chunk generation so any surface sand with air underneath it will turn into sandstone to prevent most sand cave-ins due to odd cave placement. (diff) | |
download | cuberite-02f05f749645d3ef211676e6745d3feda2cd0513.tar cuberite-02f05f749645d3ef211676e6745d3feda2cd0513.tar.gz cuberite-02f05f749645d3ef211676e6745d3feda2cd0513.tar.bz2 cuberite-02f05f749645d3ef211676e6745d3feda2cd0513.tar.lz cuberite-02f05f749645d3ef211676e6745d3feda2cd0513.tar.xz cuberite-02f05f749645d3ef211676e6745d3feda2cd0513.tar.zst cuberite-02f05f749645d3ef211676e6745d3feda2cd0513.zip |
Diffstat (limited to 'source/packets/cPacket_WholeInventory.cpp')
-rw-r--r-- | source/packets/cPacket_WholeInventory.cpp | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/source/packets/cPacket_WholeInventory.cpp b/source/packets/cPacket_WholeInventory.cpp index 3ee047239..4bc68ed0b 100644 --- a/source/packets/cPacket_WholeInventory.cpp +++ b/source/packets/cPacket_WholeInventory.cpp @@ -2,6 +2,7 @@ #include "../cItem.h"
#include "../cInventory.h"
#include "../cWindow.h"
+#include "cPacket_ItemData.h"
cPacket_WholeInventory::cPacket_WholeInventory( const cPacket_WholeInventory & a_Clone )
{
@@ -39,11 +40,11 @@ bool cPacket_WholeInventory::Send(cSocket & a_Socket) {
unsigned int TotalSize = c_Size;
+ cPacket_ItemData Item;
+
for(int i = 0; i < m_Count; i++)
{
- if( m_Items[i].m_ItemID > -1 )
- TotalSize+=3;
- TotalSize+=2;
+ TotalSize += Item.GetSize(m_Items[i].m_ItemID);
}
char* Message = new char[TotalSize];
@@ -51,18 +52,16 @@ bool cPacket_WholeInventory::Send(cSocket & a_Socket) unsigned int i = 0;
AppendByte ( (char)m_PacketID, Message, i );
AppendByte ( m_WindowID, Message, i );
- AppendShort ( m_Count, Message, i );
+ AppendShort ( m_Count, Message, i );
+
for(int j = 0; j < m_Count; j++)
{
- AppendShort ( (short)m_Items[j].m_ItemID, Message, i );
- if( m_Items[j].m_ItemID > -1 )
- {
- AppendByte ( m_Items[j].m_ItemCount, Message, i );
- AppendShort ( m_Items[j].m_ItemHealth, Message, i );
- }
+ Item.AppendItem(Message, i, &(m_Items[j]));
}
bool RetVal = !cSocket::IsSocketError( SendData( a_Socket, Message, TotalSize, 0 ) );
delete [] Message;
return RetVal;
-}
\ No newline at end of file +}
+
+
\ No newline at end of file |