[8087] Cleanup code.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
This commit is contained in:
NoFantasy 2009-06-29 02:18:21 +04:00 committed by VladimirMangos
parent 96875173af
commit 2f3aa9bd71
2 changed files with 44 additions and 48 deletions

View file

@ -429,60 +429,56 @@ void WorldSession::HandlePushQuestToParty(WorldPacket& recvPacket)
{ {
CHECK_PACKET_SIZE(recvPacket,4); CHECK_PACKET_SIZE(recvPacket,4);
uint32 quest; uint32 questId;
recvPacket >> quest; recvPacket >> questId;
sLog.outDebug( "WORLD: Received CMSG_PUSHQUESTTOPARTY quest = %u", quest ); sLog.outDebug("WORLD: Received CMSG_PUSHQUESTTOPARTY quest = %u", questId);
Quest const *pQuest = objmgr.GetQuestTemplate(quest); if (Quest const *pQuest = objmgr.GetQuestTemplate(questId))
if( pQuest )
{ {
if( _player->GetGroup() ) if (Group* pGroup = _player->GetGroup())
{ {
Group *pGroup = _player->GetGroup(); for(GroupReference *itr = pGroup->GetFirstMember(); itr != NULL; itr = itr->next())
if( pGroup )
{ {
for(GroupReference *itr = pGroup->GetFirstMember(); itr != NULL; itr = itr->next()) Player *pPlayer = itr->getSource();
if (!pPlayer || pPlayer == _player) // skip self
continue;
_player->SendPushToPartyResponse(pPlayer, QUEST_PARTY_MSG_SHARING_QUEST);
if (!pPlayer->SatisfyQuestStatus(pQuest, false))
{ {
Player *pPlayer = itr->getSource(); _player->SendPushToPartyResponse(pPlayer, QUEST_PARTY_MSG_HAVE_QUEST);
if (!pPlayer || pPlayer == _player) // skip self continue;
continue;
_player->SendPushToPartyResponse(pPlayer, QUEST_PARTY_MSG_SHARING_QUEST);
if( !pPlayer->SatisfyQuestStatus( pQuest, false ) )
{
_player->SendPushToPartyResponse( pPlayer, QUEST_PARTY_MSG_HAVE_QUEST );
continue;
}
if( pPlayer->GetQuestStatus( quest ) == QUEST_STATUS_COMPLETE )
{
_player->SendPushToPartyResponse( pPlayer, QUEST_PARTY_MSG_FINISH_QUEST );
continue;
}
if( !pPlayer->CanTakeQuest( pQuest, false ) )
{
_player->SendPushToPartyResponse( pPlayer, QUEST_PARTY_MSG_CANT_TAKE_QUEST );
continue;
}
if( !pPlayer->SatisfyQuestLog( false ) )
{
_player->SendPushToPartyResponse( pPlayer, QUEST_PARTY_MSG_LOG_FULL );
continue;
}
if( pPlayer->GetDivider() != 0 )
{
_player->SendPushToPartyResponse( pPlayer, QUEST_PARTY_MSG_BUSY );
continue;
}
pPlayer->PlayerTalkClass->SendQuestGiverQuestDetails( pQuest, _player->GetGUID(), true );
pPlayer->SetDivider( _player->GetGUID() );
} }
if (pPlayer->GetQuestStatus(questId) == QUEST_STATUS_COMPLETE)
{
_player->SendPushToPartyResponse(pPlayer, QUEST_PARTY_MSG_FINISH_QUEST);
continue;
}
if (!pPlayer->CanTakeQuest(pQuest, false))
{
_player->SendPushToPartyResponse(pPlayer, QUEST_PARTY_MSG_CANT_TAKE_QUEST);
continue;
}
if (!pPlayer->SatisfyQuestLog(false))
{
_player->SendPushToPartyResponse(pPlayer, QUEST_PARTY_MSG_LOG_FULL);
continue;
}
if (pPlayer->GetDivider() != 0)
{
_player->SendPushToPartyResponse(pPlayer, QUEST_PARTY_MSG_BUSY);
continue;
}
pPlayer->PlayerTalkClass->SendQuestGiverQuestDetails(pQuest, _player->GetGUID(), true);
pPlayer->SetDivider(_player->GetGUID());
} }
} }
} }

View file

@ -1,4 +1,4 @@
#ifndef __REVISION_NR_H__ #ifndef __REVISION_NR_H__
#define __REVISION_NR_H__ #define __REVISION_NR_H__
#define REVISION_NR "8086" #define REVISION_NR "8087"
#endif // __REVISION_NR_H__ #endif // __REVISION_NR_H__