mirror of
https://github.com/mangosfour/server.git
synced 2025-12-14 07:37:01 +00:00
[9551] Add and use PackedGuid wrapper.
Also * use more wide bytebuff << >> operators for objects * use at read packet faisl alsways exception way instead some time used bool results.
This commit is contained in:
parent
ad9243ebd0
commit
c8fd454a79
26 changed files with 351 additions and 340 deletions
|
|
@ -292,7 +292,7 @@ void WorldSession::HandleLogoutRequestOpcode( WorldPacket & /*recv_data*/ )
|
|||
GetPlayer()->SetStandState(UNIT_STAND_STATE_SIT);
|
||||
|
||||
WorldPacket data( SMSG_FORCE_MOVE_ROOT, (8+4) ); // guess size
|
||||
data.append(GetPlayer()->GetPackGUID());
|
||||
data << GetPlayer()->GetPackGUID();
|
||||
data << (uint32)2;
|
||||
SendPacket( &data );
|
||||
GetPlayer()->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_STUNNED);
|
||||
|
|
@ -324,7 +324,7 @@ void WorldSession::HandleLogoutCancelOpcode( WorldPacket & /*recv_data*/ )
|
|||
{
|
||||
//!we can move again
|
||||
data.Initialize( SMSG_FORCE_MOVE_UNROOT, 8 ); // guess size
|
||||
data.append(GetPlayer()->GetPackGUID());
|
||||
data << GetPlayer()->GetPackGUID();
|
||||
data << uint32(0);
|
||||
SendPacket( &data );
|
||||
|
||||
|
|
@ -1004,13 +1004,11 @@ void WorldSession::HandleMoveTimeSkippedOpcode( WorldPacket & recv_data )
|
|||
/* WorldSession::Update( getMSTime() );*/
|
||||
DEBUG_LOG( "WORLD: Time Lag/Synchronization Resent/Update" );
|
||||
|
||||
uint64 guid;
|
||||
if(!recv_data.readPackGUID(guid))
|
||||
{
|
||||
recv_data.rpos(recv_data.wpos());
|
||||
return;
|
||||
}
|
||||
recv_data.read_skip<uint32>();
|
||||
ObjectGuid guid;
|
||||
|
||||
recv_data >> guid.ReadAsPacked();
|
||||
recv_data >> Unused<uint32>();
|
||||
|
||||
/*
|
||||
uint64 guid;
|
||||
uint32 time_skipped;
|
||||
|
|
@ -1133,7 +1131,7 @@ void WorldSession::HandleInspectOpcode(WorldPacket& recv_data)
|
|||
return;
|
||||
|
||||
WorldPacket data(SMSG_INSPECT_TALENT, 50);
|
||||
data.append(plr->GetPackGUID());
|
||||
data << plr->GetPackGUID();
|
||||
|
||||
if(sWorld.getConfig(CONFIG_BOOL_TALENTS_INSPECTING) || _player->isGameMaster())
|
||||
{
|
||||
|
|
@ -1517,15 +1515,13 @@ void WorldSession::HandleMoveSetCanFlyAckOpcode( WorldPacket & recv_data )
|
|||
sLog.outDebug("WORLD: CMSG_MOVE_SET_CAN_FLY_ACK");
|
||||
//recv_data.hexlike();
|
||||
|
||||
uint64 guid; // guid - unused
|
||||
if(!recv_data.readPackGUID(guid))
|
||||
return;
|
||||
ObjectGuid guid; // guid - unused
|
||||
MovementInfo movementInfo;
|
||||
|
||||
recv_data.read_skip<uint32>(); // unk
|
||||
|
||||
MovementInfo movementInfo(recv_data);
|
||||
|
||||
recv_data.read_skip<float>(); // unk2
|
||||
recv_data >> guid.ReadAsPacked();
|
||||
recv_data >> Unused<uint32>(); // unk
|
||||
recv_data >> movementInfo;
|
||||
recv_data >> Unused<float>(); // unk2
|
||||
|
||||
_player->m_movementInfo.SetMovementFlags(movementInfo.GetMovementFlags());
|
||||
}
|
||||
|
|
@ -1548,11 +1544,11 @@ void WorldSession::HandleSetTaxiBenchmarkOpcode( WorldPacket & recv_data )
|
|||
|
||||
void WorldSession::HandleQueryInspectAchievements( WorldPacket & recv_data )
|
||||
{
|
||||
uint64 guid;
|
||||
if(!recv_data.readPackGUID(guid))
|
||||
return;
|
||||
ObjectGuid guid;
|
||||
|
||||
if(Player *player = sObjectMgr.GetPlayer(guid))
|
||||
recv_data >> guid.ReadAsPacked();
|
||||
|
||||
if(Player *player = sObjectMgr.GetPlayer(guid.GetRawValue()))
|
||||
player->GetAchievementMgr().SendRespondInspectAchievements(_player);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue