summaryrefslogtreecommitdiffstats
path: root/src/Protocol/Protocol18x.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/Protocol/Protocol18x.h')
-rw-r--r--src/Protocol/Protocol18x.h76
1 files changed, 76 insertions, 0 deletions
diff --git a/src/Protocol/Protocol18x.h b/src/Protocol/Protocol18x.h
new file mode 100644
index 000000000..11a376b17
--- /dev/null
+++ b/src/Protocol/Protocol18x.h
@@ -0,0 +1,76 @@
+
+// Protocol18x.h
+
+/*
+Declares the 1.8.x protocol classes:
+ - cProtocol180
+ - release 1.8 protocol (#47)
+(others may be added later in the future for the 1.8 release series)
+*/
+
+
+
+
+
+#pragma once
+
+#include "Protocol.h"
+#include "Protocol17x.h"
+#include "../ByteBuffer.h"
+
+#ifdef _MSC_VER
+ #pragma warning(push)
+ #pragma warning(disable:4127)
+ #pragma warning(disable:4244)
+ #pragma warning(disable:4231)
+ #pragma warning(disable:4189)
+ #pragma warning(disable:4702)
+#endif
+
+#ifdef _MSC_VER
+ #pragma warning(pop)
+#endif
+
+
+
+
+
+// fwd:
+namespace Json
+{
+ class Value;
+}
+
+
+
+
+
+class cProtocol180 :
+ public cProtocol176
+{
+ typedef cProtocol176 super;
+
+public:
+
+ cProtocol180(cClientHandle * a_Client, const AString & a_ServerAddress, UInt16 a_ServerPort, UInt32 a_State);
+
+ virtual void SendBlockChange(int a_BlockX, int a_BlockY, int a_BlockZ, BLOCKTYPE a_BlockType, NIBBLETYPE a_BlockMeta) override;
+ virtual void SendBlockChanges(int a_ChunkX, int a_ChunkZ, const sSetBlockVector & a_Changes) override;
+ virtual void SendChat(const AString & a_Message) override;
+ virtual void SendChat(const cCompositeChat & a_Message) override;
+ virtual void SendPlayerListItem(const cPlayer & a_Player, bool a_IsOnline) override {}
+ virtual void SendEntityEquipment(const cEntity & a_Entity, short a_SlotNum, const cItem & a_Item) override;
+ virtual void SendLogin(const cPlayer & a_Player, const cWorld & a_World) override;
+
+protected:
+
+ virtual void HandlePacketStatusRequest(cByteBuffer & a_ByteBuffer) override;
+
+ // Packet handlers while in the Login state (m_State == 2):
+ virtual void HandlePacketLoginStart(cByteBuffer & a_ByteBuffer) override;
+ virtual void HandlePacketLoginEncryptionResponse(cByteBuffer & a_ByteBuffer) override;
+} ;
+
+
+
+