Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void MMatchServer::OnAsyncGetCharInfo(MAsyncJob* pJob)
- {
- MAsyncDBJob_GetCharInfo* pCharJob = (MAsyncDBJob_GetCharInfo*)pJob;
- if(pCharJob->m_nResult == MASYNC_RESULT_SUCCEED)
- {
- MMatchObject* pMatchObject = GetObject(pCharJob->m_uid);
- if(pMatchObject)
- {
- if(pMatchObject->m_pCharInfo)
- {
- if(pMatchObject->m_pCharInfo->m_nCID)
- CharFinalize(pMatchObject->GetUID());
- pMatchObject->FreeCharInfo();
- pMatchObject->FreeFriendInfo();
- }
- if(pCharJob->m_pCharInfo)
- {
- pMatchObject->SetCharInfo(pCharJob->m_pCharInfo);
- if(CharInitialize(pCharJob->m_uid))
- {
- MTD_CharInfo CharInfo;
- CopyCharInfoForTrans(&CharInfo, pCharJob->m_pCharInfo);
- MCommand* pCmd = CreateCommand(MCI_MATCH_RESPONSESELECTCHAR, pCharJob->m_uid);
- if(pCmd)
- {
- pCmd->AddParameter(new MCommandParameterInt(0));
- void* pArray = MMakeBlobArray(sizeof(MTD_CharInfo), 1);
- memcpy(MGetBlobArrayElement(pArray, 0), &CharInfo, sizeof(MTD_CharInfo));
- pCmd->AddParameter(new MCommandParameterBlob(pArray, MGetBlobArraySize(pArray)));
- MEraseBlobArray(pArray);
- pArray = MMakeBlobArray(1, 1);
- char nExp = 0x3E; //MMatchFormula__GetLevelPercent(nExp, v25);
- memcpy(MGetBlobArrayElement(pArray, 0), &nExp, 1);
- pCmd->AddParameter(new MCommandParameterBlob(pArray, MGetBlobArraySize(pArray)));
- MEraseBlobArray(pArray);
- RouteToListener(pMatchObject, pCmd);
- }
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement