CvDiplomacyAI::DoDugUpMyYardStatement(PlayerTypes, DiploStatementTypes &)
- Defined in
- CvDiplomacyAI.cpp, line 14333
- Class
- CvDiplomacyAI
- Hook name
CivHooks::CvDiplomacyAI_DoDugUpMyYardStatement
Hooks
static bool BeforeCvDiplomacyAI_DoDugUpMyYardStatement(CvDiplomacyAI* self, PlayerTypes ePlayer, DiploStatementTypes& eStatement);static void AfterCvDiplomacyAI_DoDugUpMyYardStatement(CvDiplomacyAI* self, PlayerTypes ePlayer, DiploStatementTypes& eStatement);static void ReplaceCvDiplomacyAI_DoDugUpMyYardStatement(void (*original)(CvDiplomacyAI*, PlayerTypes, DiploStatementTypes&), CvDiplomacyAI* self, PlayerTypes ePlayer, DiploStatementTypes& eStatement);CivRegisterBefore<CivHooks::CvDiplomacyAI_DoDugUpMyYardStatement>(host, &BeforeCvDiplomacyAI_DoDugUpMyYardStatement);CivRegisterAfter<CivHooks::CvDiplomacyAI_DoDugUpMyYardStatement>(host, &AfterCvDiplomacyAI_DoDugUpMyYardStatement);CivRegisterReplace<CivHooks::CvDiplomacyAI_DoDugUpMyYardStatement>(host, &ReplaceCvDiplomacyAI_DoDugUpMyYardStatement);
Code
14333void CvDiplomacyAI::DoDugUpMyYardStatement(PlayerTypes ePlayer, DiploStatementTypes& eStatement)14334{14335 CvAssertMsg(ePlayer >= 0, "DIPLOMACY_AI: Invalid Player Index. Please send slewis your save file and version.");14336 CvAssertMsg(ePlayer < MAX_MAJOR_CIVS, "DIPLOMACY_AI: Invalid Player Index. Please send slewis your save file and version.");1433714338 if(eStatement == NO_DIPLO_STATEMENT_TYPE)14339 {14340 if(GetNegativeArchaeologyPoints(ePlayer) >= 10) // TODO: arch14341 {14342 // Have we asked you to make a promise before?14343 if(IsPlayerBrokenNoDiggingPromise(ePlayer) ||14344 IsPlayerIgnoredNoDiggingPromise(ePlayer))14345 {14346 // We don't even want to bother with you again, so do nothing14347 }14348 else if(IsPlayerMadeNoDiggingPromise(ePlayer))14349 {14350 // You broke the promise you made!14351 SetPlayerBrokenNoDiggingPromise(ePlayer, true);14352 SetPlayerMadeNoDiggingPromise(ePlayer, false);14353 }14354 // Otherwise, ask you to make a promise14355 else14356 {14357 DiploStatementTypes eTempStatement = DIPLO_STATEMENT_STOP_DIGGING;14358 int iTurnsBetweenStatements = 1;1435914360 if(GetNumTurnsSinceStatementSent(ePlayer, eTempStatement) >= iTurnsBetweenStatements)14361 {14362 eStatement = eTempStatement;14363 }14364 }14365 }14366 }14367}
Calls
- CvDiplomacyAI::GetNegativeArchaeologyPoints(PlayerTypes) const
- CvDiplomacyAI::GetNumTurnsSinceStatementSent(PlayerTypes, DiploStatementTypes)
- CvDiplomacyAI::IsPlayerBrokenNoDiggingPromise(PlayerTypes)
- CvDiplomacyAI::IsPlayerIgnoredNoDiggingPromise(PlayerTypes)
- CvDiplomacyAI::IsPlayerMadeNoDiggingPromise(PlayerTypes)
- CvDiplomacyAI::SetPlayerBrokenNoDiggingPromise(PlayerTypes, bool)
- CvDiplomacyAI::SetPlayerMadeNoDiggingPromise(PlayerTypes, bool)