From a85ea1c9accd439bb8a805253979b93e7c8fe6fe Mon Sep 17 00:00:00 2001 From: "mtilden@gmail.com" Date: Mon, 26 Dec 2011 02:35:49 +0000 Subject: - Cleaned up PLI Packet and its creation/sending and fixed bug of player not being removed on scoreboard (forgot to send color in the removal packet) git-svn-id: http://mc-server.googlecode.com/svn/trunk@116 0a769ca7-a7f5-676a-18bf-c427514a06d6 --- source/cClientHandle.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'source/cClientHandle.cpp') diff --git a/source/cClientHandle.cpp b/source/cClientHandle.cpp index c9d1de1ce..66d343784 100644 --- a/source/cClientHandle.cpp +++ b/source/cClientHandle.cpp @@ -156,7 +156,6 @@ cClientHandle::cClientHandle(const cSocket & a_Socket) m_pState->PacketMap[E_UPDATE_SIGN] = new cPacket_UpdateSign; m_pState->PacketMap[E_RESPAWN] = new cPacket_Respawn; m_pState->PacketMap[E_PING] = new cPacket_Ping; - m_pState->PacketMap[E_PLAYER_LIST_ITEM] = new cPacket_PlayerListItem; memset( m_LoadedChunks, 0x00, sizeof(cChunk*)*VIEWDISTANCE*VIEWDISTANCE ); @@ -1166,17 +1165,18 @@ void cClientHandle::HandlePacket( cPacket* a_Packet ) cWorld::PlayerList PlayerList = cRoot::Get()->GetWorld()->GetAllPlayers(); for( cWorld::PlayerList::iterator itr = PlayerList.begin(); itr != PlayerList.end(); ++itr ) { - cPacket_PlayerListItem PlayerList; - PlayerList.m_PlayerName = GetUsername(); - PlayerList.m_Online = false; - PlayerList.m_Ping = (short)5; - (*itr)->GetClientHandle()->Send( PlayerList ); + cPacket_PlayerListItem *PlayerList = new cPacket_PlayerListItem(m_Player->GetColor() + GetUsername(), false, (short)9999); + (*itr)->GetClientHandle()->Send( *PlayerList ); } } Destroy(); return; } break; + case E_KEEP_ALIVE: + // TODO: Handle player ping per minecraft + //cPacket_KeepAlive* PacketData = reinterpret_cast(a_Packet); + break; default: break; } -- cgit v1.2.3