1
0
cuberite-2a/source/packets/cPacket_Respawn.cpp
faketruth a2f6ab93b6 Chunks are successfully streamed to clients (in a bad a slow way, but whatever)
Fixed respawn packet for 1.2.2

git-svn-id: http://mc-server.googlecode.com/svn/trunk@350 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-01 18:56:56 +00:00

58 lines
1.5 KiB
C++

#include "Globals.h" // NOTE: MSVC stupidness requires this to be the same across all modules
#include "cPacket_Respawn.h"
void cPacket_Respawn::Serialize(AString & a_Data) const
{
AppendByte (a_Data, m_PacketID);
#if (MINECRAFT_1_2_2 == 1)
AppendInteger (a_Data, m_Dimension);
AppendByte (a_Data, m_Difficulty);
AppendByte (a_Data, m_CreativeMode);
AppendShort (a_Data, m_WorldHeight);
AppendString16(a_Data, m_LevelType);
#else
AppendByte (a_Data, m_World);
AppendByte (a_Data, m_Difficulty);
AppendByte (a_Data, m_CreativeMode);
AppendShort (a_Data, m_WorldHeight);
AppendLong (a_Data, m_MapSeed);
AppendString16(a_Data, m_LevelType);
#endif
}
int cPacket_Respawn::Parse(const char * a_Data, int a_Size)
{
int TotalBytes = 0;
#if (MINECRAFT_1_2_2 == 1)
HANDLE_PACKET_READ(ReadInteger, m_Dimension, TotalBytes);
HANDLE_PACKET_READ(ReadByte, m_Difficulty, TotalBytes);
HANDLE_PACKET_READ(ReadByte, m_CreativeMode, TotalBytes);
HANDLE_PACKET_READ(ReadShort, m_WorldHeight, TotalBytes);
HANDLE_PACKET_READ(ReadString16, m_LevelType, TotalBytes);
#else
HANDLE_PACKET_READ(ReadByte, m_World, TotalBytes);
HANDLE_PACKET_READ(ReadByte, m_Difficulty, TotalBytes);
HANDLE_PACKET_READ(ReadByte, m_CreativeMode, TotalBytes);
HANDLE_PACKET_READ(ReadShort, m_WorldHeight, TotalBytes);
HANDLE_PACKET_READ(ReadLong, m_MapSeed, TotalBytes);
HANDLE_PACKET_READ(ReadString16, m_LevelType, TotalBytes);
#endif
return TotalBytes;
}