Fixed a bug that no chunks were unloaded on the client. Now chunks are properly unloaded on the clients.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@318 0a769ca7-a7f5-676a-18bf-c427514a06d6
This commit is contained in:
parent
1cb756cbf2
commit
6015b59f13
@ -67,6 +67,7 @@
|
|||||||
#include "packets/cPacket_PlayerListItem.h"
|
#include "packets/cPacket_PlayerListItem.h"
|
||||||
#include "packets/cPacket_NamedEntitySpawn.h"
|
#include "packets/cPacket_NamedEntitySpawn.h"
|
||||||
#include "packets/cPacket_MapChunk.h"
|
#include "packets/cPacket_MapChunk.h"
|
||||||
|
#include "packets/cPacket_PreChunk.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -344,6 +345,7 @@ void cClientHandle::StreamChunks(void)
|
|||||||
if ((RelX > VIEWDISTANCE) || (RelX < -VIEWDISTANCE) || (RelZ > VIEWDISTANCE) || (RelZ < -VIEWDISTANCE))
|
if ((RelX > VIEWDISTANCE) || (RelX < -VIEWDISTANCE) || (RelZ > VIEWDISTANCE) || (RelZ < -VIEWDISTANCE))
|
||||||
{
|
{
|
||||||
World->RemoveChunkClient(itr->m_ChunkX, itr->m_ChunkY, itr->m_ChunkZ, this);
|
World->RemoveChunkClient(itr->m_ChunkX, itr->m_ChunkY, itr->m_ChunkZ, this);
|
||||||
|
Send( cPacket_PreChunk( itr->m_ChunkX, itr->m_ChunkZ, false ) );
|
||||||
itr = m_LoadedChunks.erase(itr);
|
itr = m_LoadedChunks.erase(itr);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -15,6 +15,11 @@ public:
|
|||||||
, m_PosZ( 0 )
|
, m_PosZ( 0 )
|
||||||
, m_bLoad( false )
|
, m_bLoad( false )
|
||||||
{ m_PacketID = E_PRE_CHUNK; }
|
{ m_PacketID = E_PRE_CHUNK; }
|
||||||
|
cPacket_PreChunk( int a_PosX, int a_PosZ, bool a_bLoad )
|
||||||
|
: m_PosX( a_PosX )
|
||||||
|
, m_PosZ( a_PosZ )
|
||||||
|
, m_bLoad( a_bLoad )
|
||||||
|
{ m_PacketID = E_PRE_CHUNK; }
|
||||||
virtual cPacket* Clone() const { return new cPacket_PreChunk(*this); }
|
virtual cPacket* Clone() const { return new cPacket_PreChunk(*this); }
|
||||||
|
|
||||||
virtual void Serialize(AString & a_Data) const override;
|
virtual void Serialize(AString & a_Data) const override;
|
||||||
|
Loading…
Reference in New Issue
Block a user