From 07fa8313b184e2a9d7666cf6f7b10d5def8dc928 Mon Sep 17 00:00:00 2001 From: madmaxoft Date: Fri, 8 Nov 2013 21:32:14 +0100 Subject: cProtocol::SendWindowOpen() signature changed. This implements #313. --- source/Protocol/Protocol17x.cpp | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) (limited to 'source/Protocol/Protocol17x.cpp') diff --git a/source/Protocol/Protocol17x.cpp b/source/Protocol/Protocol17x.cpp index a2b3a7a56..eee4f7d0e 100644 --- a/source/Protocol/Protocol17x.cpp +++ b/source/Protocol/Protocol17x.cpp @@ -841,21 +841,24 @@ void cProtocol172::SendWindowClose(const cWindow & a_Window) -void cProtocol172::SendWindowOpen(char a_WindowID, char a_WindowType, const AString & a_WindowTitle, char a_NumSlots) +void cProtocol172::SendWindowOpen(const cWindow & a_Window) { + if (a_Window.GetWindowType() < 0) + { + // Do not send this packet for player inventory windows + return; + } + cPacketizer Pkt(*this, 0x2d); - Pkt.WriteChar(a_WindowID); - Pkt.WriteChar(a_WindowType); - Pkt.WriteString(a_WindowTitle); - Pkt.WriteChar(a_NumSlots); + Pkt.WriteChar(a_Window.GetWindowID()); + Pkt.WriteChar(a_Window.GetWindowType()); + Pkt.WriteString(a_Window.GetWindowTitle()); + Pkt.WriteChar(a_Window.GetNumNonInventorySlots()); Pkt.WriteBool(true); - /* - // TODO: - if (a_WindowType == cWindow::wtHorse) + if (a_Window.GetWindowType() == cWindow::wtAnimalChest) { - Pkt.WriteInt(HorseID); + Pkt.WriteInt(0); // TODO: The animal's EntityID } - */ } -- cgit v1.2.3