SBYTE CUIQuestBook::GetQuestType(const INDEX& iQuestIndex) { CUIManager* pUIManager = CUIManager::getSingleton(); Quest* pQuest = GAMEDATAMGR()->GetQuest(); if (pQuest == NULL) return 0; int iTempIndex = -1; int count; count = pQuest->GetCompleteQuestCount(); for( int iComplete = 0; iComplete < count; ++iComplete ) { iTempIndex = pQuest->GetCompleteQuestIndex(iComplete); if( iQuestIndex == iTempIndex ) return 2; } count = pQuest->GetProceedQuestCount(); for( int iNew = 0; iNew < count; ++iNew ) { iTempIndex = pQuest->GetProceedQuestIndex(iNew); if( iQuestIndex == iTempIndex ) return 1; } return 0; }
void CUIQuestBook::AddQuestListToMessageBoxL(const int& iMessageBoxType) { CUIManager* pUIManager = CUIManager::getSingleton(); Quest* pQuest = GAMEDATAMGR()->GetQuest(); if (pQuest == NULL) return; int iQuestIndex = -1; CTString strQuestTitle; int count; count = pQuest->GetCompleteQuestCount(); for( int iComplete = 0; iComplete < count; ++iComplete ) { iQuestIndex = pQuest->GetCompleteQuestIndex(iComplete); CQuestDynamicData qdd(CQuestSystem::Instance().GetStaticData(iQuestIndex)); strQuestTitle = qdd.GetName(); if( 0 == strQuestTitle.Length() ) { if (_pNetwork->m_ubGMLevel > 1) strQuestTitle.PrintF("Index : %d", iQuestIndex); else continue; } pUIManager->AddMessageBoxLString( iMessageBoxType, FALSE, strQuestTitle, ciQuestClassifier + iQuestIndex, 0xF2F200FF, CTString("A") ); } count = pQuest->GetProceedQuestCount(); for( int iNew = 0; iNew < count; ++iNew ) { iQuestIndex = pQuest->GetProceedQuestIndex(iNew); CQuestDynamicData qdd(CQuestSystem::Instance().GetStaticData(iQuestIndex)); strQuestTitle = qdd.GetName(); if( 0 == strQuestTitle.Length() ) { if (_pNetwork->m_ubGMLevel > 1) strQuestTitle.PrintF("Index : %d", iQuestIndex); else continue; } pUIManager->AddMessageBoxLString( iMessageBoxType, FALSE, strQuestTitle, ciQuestClassifier + iQuestIndex, 0xF2F200FF, CTString("Q") ); } }