summaryrefslogtreecommitdiffstats
path: root/source/packets/cPacket_InventorySlot.cpp
diff options
context:
space:
mode:
authorlapayo94@gmail.com <lapayo94@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6>2011-12-21 21:42:34 +0100
committerlapayo94@gmail.com <lapayo94@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6>2011-12-21 21:42:34 +0100
commit02f05f749645d3ef211676e6745d3feda2cd0513 (patch)
tree2b4c08e1ff7eab1d69f1dad4a00ef2d4d4fbcd3c /source/packets/cPacket_InventorySlot.cpp
parentChanged 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)
downloadcuberite-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_InventorySlot.cpp')
-rw-r--r--source/packets/cPacket_InventorySlot.cpp20
1 files changed, 12 insertions, 8 deletions
diff --git a/source/packets/cPacket_InventorySlot.cpp b/source/packets/cPacket_InventorySlot.cpp
index 13b41b7b1..3c3a40210 100644
--- a/source/packets/cPacket_InventorySlot.cpp
+++ b/source/packets/cPacket_InventorySlot.cpp
@@ -1,21 +1,25 @@
#include "cPacket_InventorySlot.h"
+#include "cPacket_WholeInventory.h"
+#include "cPacket_ItemData.h"
bool cPacket_InventorySlot::Send(cSocket & a_Socket)
{
unsigned int TotalSize = c_Size;
- if( m_ItemID > -1 ) TotalSize += 1 + 2;
+
+ cPacket_ItemData Item;
+
+ TotalSize += Item.GetSize(m_ItemID);
+
char* Message = new char[TotalSize];
unsigned int i = 0;
- AppendByte ( (char)m_PacketID, Message, i );
+ AppendByte ( (char)m_PacketID, Message, i );
AppendByte ( m_WindowID, Message, i );
AppendShort ( m_SlotNum, Message, i );
- AppendShort ( m_ItemID, Message, i );
- if( m_ItemID > -1 )
- {
- AppendByte ( m_ItemCount, Message, i );
- AppendShort ( m_ItemUses, Message, i );
- }
+
+
+ Item.AppendItem(Message, i, m_ItemID, m_ItemCount, m_ItemUses);
+
bool RetVal = !cSocket::IsSocketError( SendData( a_Socket, Message, TotalSize, 0 ) );
delete [] Message;