mirror of
https://github.com/araxiaonline/TrinityCore2.git
synced 2026-06-21 07:11:59 -04:00
*Update to Mangos 6848. Source: Mangos.
--HG-- branch : trunk
This commit is contained in:
+13
-3
@@ -11936,7 +11936,7 @@ void Player::SendPreparedQuest( uint64 guid )
|
||||
else if( status == DIALOG_STATUS_INCOMPLETE )
|
||||
PlayerTalkClass->SendQuestGiverRequestItems( pQuest, guid, false, true );
|
||||
// Send completable on repeatable quest if player don't have quest
|
||||
else if( pQuest->IsRepeatable() )
|
||||
else if( pQuest->IsRepeatable() && !pQuest->IsDaily() )
|
||||
PlayerTalkClass->SendQuestGiverRequestItems( pQuest, guid, CanCompleteRepeatableQuest(pQuest), true );
|
||||
else
|
||||
PlayerTalkClass->SendQuestGiverQuestDetails( pQuest, guid, true );
|
||||
@@ -12178,7 +12178,7 @@ bool Player::CanRewardQuest( Quest const *pQuest, bool msg )
|
||||
if(!pQuest->IsAutoComplete() && GetQuestStatus(pQuest->GetQuestId()) != QUEST_STATUS_COMPLETE)
|
||||
return false;
|
||||
|
||||
// daily quest can't be rewarded (10 daily quest already completed)
|
||||
// daily quest can't be rewarded (25 daily quest already completed)
|
||||
if(!SatisfyQuestDay(pQuest,true))
|
||||
return false;
|
||||
|
||||
@@ -12779,6 +12779,15 @@ bool Player::SatisfyQuestExclusiveGroup( Quest const* qInfo, bool msg )
|
||||
if(exclude_Id == qInfo->GetQuestId())
|
||||
continue;
|
||||
|
||||
// not allow have daily quest if daily quest from exclusive group already recently completed
|
||||
Quest const* Nquest = objmgr.GetQuestTemplate(exclude_Id);
|
||||
if( !SatisfyQuestDay(Nquest, false) )
|
||||
{
|
||||
if( msg )
|
||||
SendCanTakeQuestResponse( INVALIDREASON_DONT_HAVE_REQ );
|
||||
return false;
|
||||
}
|
||||
|
||||
QuestStatusMap::iterator i_exstatus = mQuestStatus.find( exclude_Id );
|
||||
|
||||
// alternative quest already started or completed
|
||||
@@ -14658,7 +14667,8 @@ void Player::_LoadQuestStatus(QueryResult *result)
|
||||
// add to quest log
|
||||
if( slot < MAX_QUEST_LOG_SIZE &&
|
||||
( questStatusData.m_status==QUEST_STATUS_INCOMPLETE ||
|
||||
questStatusData.m_status==QUEST_STATUS_COMPLETE && !questStatusData.m_rewarded ) )
|
||||
questStatusData.m_status==QUEST_STATUS_COMPLETE &&
|
||||
(!questStatusData.m_rewarded || pQuest->IsDaily()) ) )
|
||||
{
|
||||
SetQuestSlot(slot,quest_id,quest_time);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user