This code was not tested and breaks in Release builds, reverting to restore
functionality of the nightly. All in-game menus do not work and generating
a world crashes.
This reverts commit a9be52c41a.
61 lines
1.6 KiB
C++
61 lines
1.6 KiB
C++
#include "stdafx.h"
|
|
#include "net.minecraft.world.entity.player.h"
|
|
#include "..\Minecraft.Client\ServerPlayer.h"
|
|
#include "..\Minecraft.Client\PlayerConnection.h"
|
|
#include <qnet.h>
|
|
#include "PacketListener.h"
|
|
#include "InputOutputStream.h"
|
|
#include "PlayerInfoPacket.h"
|
|
|
|
|
|
|
|
PlayerInfoPacket::PlayerInfoPacket()
|
|
{
|
|
m_networkSmallId = 0;
|
|
m_playerColourIndex = -1;
|
|
m_playerPrivileges = 0;
|
|
m_entityId = -1;
|
|
}
|
|
|
|
PlayerInfoPacket::PlayerInfoPacket(BYTE networkSmallId, short playerColourIndex, unsigned int playerPrivileges)
|
|
{
|
|
m_networkSmallId = networkSmallId;
|
|
m_playerColourIndex = playerColourIndex;
|
|
m_playerPrivileges = playerPrivileges;
|
|
m_entityId = -1;
|
|
}
|
|
|
|
PlayerInfoPacket::PlayerInfoPacket(shared_ptr<ServerPlayer> player)
|
|
{
|
|
m_networkSmallId = 0;
|
|
if(player->connection != NULL && player->connection->getNetworkPlayer() != NULL) m_networkSmallId = player->connection->getNetworkPlayer()->GetSmallId();
|
|
m_playerColourIndex = player->getPlayerIndex();
|
|
m_playerPrivileges = player->getAllPlayerGamePrivileges();
|
|
m_entityId = player->entityId;
|
|
}
|
|
|
|
void PlayerInfoPacket::read(DataInputStream *dis)
|
|
{
|
|
m_networkSmallId = dis->readByte();
|
|
m_playerColourIndex = dis->readShort();
|
|
m_playerPrivileges = dis->readInt();
|
|
m_entityId = dis->readInt();
|
|
}
|
|
|
|
void PlayerInfoPacket::write(DataOutputStream *dos)
|
|
{
|
|
dos->writeByte(m_networkSmallId);
|
|
dos->writeShort(m_playerColourIndex);
|
|
dos->writeInt(m_playerPrivileges);
|
|
dos->writeInt(m_entityId);
|
|
}
|
|
|
|
void PlayerInfoPacket::handle(PacketListener *listener)
|
|
{
|
|
listener->handlePlayerInfo(shared_from_this());
|
|
}
|
|
|
|
int PlayerInfoPacket::getEstimatedSize()
|
|
{
|
|
return 2 + 2 + 4 + 4;
|
|
} |