1
0

- 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
This commit is contained in:
mtilden@gmail.com
2011-12-26 02:35:49 +00:00
parent c35db25269
commit a85ea1c9ac
5 changed files with 22 additions and 11 deletions

View File

@@ -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<cPacket_KeepAlive*>(a_Packet);
break;
default:
break;
}