Hooks
static bool BeforeCvLeague_LogProposalResolved_with_CvRepealProposal(CvLeague* self, CvRepealProposal* pProposal);static void AfterCvLeague_LogProposalResolved_with_CvRepealProposal(CvLeague* self, CvRepealProposal* pProposal);static void ReplaceCvLeague_LogProposalResolved_with_CvRepealProposal(void (*original)(CvLeague*, CvRepealProposal*), CvLeague* self, CvRepealProposal* pProposal);CivRegisterBefore<CivHooks::CvLeague_LogProposalResolved_with_CvRepealProposal>(host, &BeforeCvLeague_LogProposalResolved_with_CvRepealProposal);CivRegisterAfter<CivHooks::CvLeague_LogProposalResolved_with_CvRepealProposal>(host, &AfterCvLeague_LogProposalResolved_with_CvRepealProposal);CivRegisterReplace<CivHooks::CvLeague_LogProposalResolved_with_CvRepealProposal>(host, &ReplaceCvLeague_LogProposalResolved_with_CvRepealProposal);
Code
6393// Must be called while the Congress is still in session, before the proposal is deleted6394void CvLeague::LogProposalResolved(CvRepealProposal* pProposal)6395{6396 CvAssert(pProposal != NULL);6397 if (!(pProposal != NULL)) return;6398 CvString sMessage = "";63996400 sMessage += ",Congress";6401 sMessage += ",- - -";6402 if (pProposal->IsPassed(GetVotesSpentThisSession()))6403 {6404 sMessage += ",Proposal Passed";6405 }6406 else6407 {6408 sMessage += ",Proposal Failed";6409 }64106411 CvAssert(pProposal != NULL);6412 if (pProposal != NULL && pProposal->GetRepealDecision() != NULL)6413 {6414 sMessage += ",";6415 sMessage += pProposal->GetProposalName(/*bForLogging*/ true);64166417 sMessage += ",";6418 int iDecision = pProposal->GetRepealDecision()->GetDecision();6419 if (iDecision == LeagueHelpers::CHOICE_NONE)6420 {6421 sMessage += "None";6422 }6423 else6424 {6425 sMessage += LeagueHelpers::GetTextForChoice(pProposal->GetRepealDecision()->GetType(), iDecision);6426 }6427 6428 CvString sTemp;6429 sTemp.Format(",Won by %d", pProposal->GetRepealDecision()->GetVotesMarginOfTopChoice());6430 sMessage += sTemp;6431 }64326433 GC.getGame().GetGameLeagues()->LogLeagueMessage(sMessage);6434}