mirror of
https://github.com/mangosfour/server.git
synced 2025-12-15 19:37:02 +00:00
[11458] Non-item related uint64 guids replaced by ObjectGUids in Player.h
Also let ObjectAccessor::FindPlayer optimize empty guid case work.
This commit is contained in:
parent
1d781cd431
commit
151e5eae9c
13 changed files with 123 additions and 125 deletions
|
|
@ -131,7 +131,7 @@ void WorldSession::HandleQuestgiverAcceptQuestOpcode( WorldPacket & recv_data )
|
|||
)
|
||||
{
|
||||
_player->PlayerTalkClass->CloseGossip();
|
||||
_player->SetDivider( 0 );
|
||||
_player->ClearDividerGuid();
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -142,18 +142,14 @@ void WorldSession::HandleQuestgiverAcceptQuestOpcode( WorldPacket & recv_data )
|
|||
if(!GetPlayer()->CanTakeQuest(qInfo,true) )
|
||||
{
|
||||
_player->PlayerTalkClass->CloseGossip();
|
||||
_player->SetDivider( 0 );
|
||||
_player->ClearDividerGuid();
|
||||
return;
|
||||
}
|
||||
|
||||
if( _player->GetDivider() != 0 )
|
||||
if (Player *pPlayer = ObjectAccessor::FindPlayer(_player->GetDividerGuid()))
|
||||
{
|
||||
Player *pPlayer = ObjectAccessor::FindPlayer( _player->GetDivider() );
|
||||
if( pPlayer )
|
||||
{
|
||||
pPlayer->SendPushToPartyResponse( _player, QUEST_PARTY_MSG_ACCEPT_QUEST );
|
||||
_player->SetDivider( 0 );
|
||||
}
|
||||
pPlayer->SendPushToPartyResponse(_player, QUEST_PARTY_MSG_ACCEPT_QUEST);
|
||||
_player->ClearDividerGuid();
|
||||
}
|
||||
|
||||
if( _player->CanAddQuest( qInfo, true ) )
|
||||
|
|
@ -173,7 +169,7 @@ void WorldSession::HandleQuestgiverAcceptQuestOpcode( WorldPacket & recv_data )
|
|||
|
||||
if (pPlayer->CanTakeQuest(qInfo, true))
|
||||
{
|
||||
pPlayer->SetDivider(_player->GetGUID());
|
||||
pPlayer->SetDividerGuid(_player->GetObjectGuid());
|
||||
|
||||
//need confirmation that any gossip window will close
|
||||
pPlayer->PlayerTalkClass->CloseGossip();
|
||||
|
|
@ -374,7 +370,7 @@ void WorldSession::HandleQuestConfirmAccept(WorldPacket& recv_data)
|
|||
if (!pQuest->HasQuestFlag(QUEST_FLAGS_PARTY_ACCEPT))
|
||||
return;
|
||||
|
||||
Player* pOriginalPlayer = ObjectAccessor::FindPlayer(_player->GetDivider());
|
||||
Player* pOriginalPlayer = ObjectAccessor::FindPlayer(_player->GetDividerGuid());
|
||||
|
||||
if (!pOriginalPlayer)
|
||||
return;
|
||||
|
|
@ -393,7 +389,7 @@ void WorldSession::HandleQuestConfirmAccept(WorldPacket& recv_data)
|
|||
if (_player->CanAddQuest(pQuest, true))
|
||||
_player->AddQuest(pQuest, NULL); // NULL, this prevent DB script from duplicate running
|
||||
|
||||
_player->SetDivider(0);
|
||||
_player->ClearDividerGuid();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -476,14 +472,14 @@ void WorldSession::HandlePushQuestToParty(WorldPacket& recvPacket)
|
|||
continue;
|
||||
}
|
||||
|
||||
if (pPlayer->GetDivider() != 0)
|
||||
if (!pPlayer->GetDividerGuid().IsEmpty())
|
||||
{
|
||||
_player->SendPushToPartyResponse(pPlayer, QUEST_PARTY_MSG_BUSY);
|
||||
continue;
|
||||
}
|
||||
|
||||
pPlayer->PlayerTalkClass->SendQuestGiverQuestDetails(pQuest, _player->GetObjectGuid(), true);
|
||||
pPlayer->SetDivider(_player->GetGUID());
|
||||
pPlayer->SetDividerGuid(_player->GetObjectGuid());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -497,16 +493,13 @@ void WorldSession::HandleQuestPushResult(WorldPacket& recvPacket)
|
|||
|
||||
DEBUG_LOG("WORLD: Received MSG_QUEST_PUSH_RESULT");
|
||||
|
||||
if (_player->GetDivider() != 0)
|
||||
if (Player *pPlayer = ObjectAccessor::FindPlayer(_player->GetDividerGuid()))
|
||||
{
|
||||
if (Player *pPlayer = ObjectAccessor::FindPlayer(_player->GetDivider()))
|
||||
{
|
||||
WorldPacket data( MSG_QUEST_PUSH_RESULT, (8+1) );
|
||||
data << ObjectGuid(guid);
|
||||
data << uint8(msg); // valid values: 0-8
|
||||
pPlayer->GetSession()->SendPacket(&data);
|
||||
_player->SetDivider( 0 );
|
||||
}
|
||||
WorldPacket data( MSG_QUEST_PUSH_RESULT, (8+1) );
|
||||
data << ObjectGuid(guid);
|
||||
data << uint8(msg); // valid values: 0-8
|
||||
pPlayer->GetSession()->SendPacket(&data);
|
||||
_player->ClearDividerGuid();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue