b974b1ea59
git-svn-id: http://mc-server.googlecode.com/svn/trunk@413 0a769ca7-a7f5-676a-18bf-c427514a06d6
70 lines
1.4 KiB
C++
70 lines
1.4 KiB
C++
|
|
#pragma once
|
|
|
|
#include "cPacket.h"
|
|
#include "../ChunkDef.h"
|
|
|
|
|
|
|
|
|
|
|
|
class cPacket_MapChunk :
|
|
public cPacket
|
|
{
|
|
public:
|
|
cPacket_MapChunk()
|
|
#if (MINECRAFT_1_2_2 == 1 )
|
|
: m_PosX( 0 )
|
|
, m_PosZ( 0 )
|
|
, m_bContiguous( false )
|
|
, m_BitMap1( 0 )
|
|
, m_BitMap2( 0 )
|
|
, m_CompressedSize( 0 )
|
|
, m_UnusedInt( 0 )
|
|
#else
|
|
: m_PosX( 0 )
|
|
, m_PosY( 0 )
|
|
, m_PosZ( 0 )
|
|
, m_SizeX( 0 )
|
|
, m_SizeY( 0 )
|
|
, m_SizeZ( 0 )
|
|
, m_CompressedSize( 0 )
|
|
#endif
|
|
, m_CompressedData( 0 )
|
|
{ m_PacketID = E_MAP_CHUNK; m_CompressedData = 0; }
|
|
|
|
cPacket_MapChunk( const cPacket_MapChunk & a_Copy );
|
|
cPacket_MapChunk(int a_ChunkX, int a_ChunkY, int a_ChunkZ, const BLOCKTYPE * a_BlockData, const BIOMETYPE * a_BiomeData);
|
|
~cPacket_MapChunk();
|
|
virtual cPacket* Clone() const { return new cPacket_MapChunk(*this); }
|
|
|
|
virtual void Serialize(AString & a_Data) const override;
|
|
|
|
#if (MINECRAFT_1_2_2 == 1 )
|
|
int m_PosX;
|
|
int m_PosZ;
|
|
bool m_bContiguous; // le fuck?
|
|
short m_BitMap1;
|
|
short m_BitMap2;
|
|
int m_CompressedSize;
|
|
int m_UnusedInt;
|
|
static const unsigned int c_Size = 1 + 4 + 4 + 1 + 2 + 2 + 4 + 4;
|
|
#else
|
|
int m_PosX; // In block coordinates
|
|
short m_PosY;
|
|
int m_PosZ;
|
|
char m_SizeX; // Is actually size-1 (when size is 128, this is 127)
|
|
char m_SizeY;
|
|
char m_SizeZ;
|
|
int m_CompressedSize;
|
|
static const unsigned int c_Size = 1 + 4 + 2 + 4 + 1 + 1 + 1 + 4;
|
|
#endif
|
|
|
|
|
|
char * m_CompressedData;
|
|
};
|
|
|
|
|
|
|
|
|