Bazaar developer reference

CvDiplomacyAI::DoKilledCityStateStatement(PlayerTypes, DiploStatementTypes &, int &)

Defined in
CvDiplomacyAI.cpp, line 13849
Class
CvDiplomacyAI
Hook name
CivHooks::CvDiplomacyAI_DoKilledCityStateStatement

Hooks

static bool BeforeCvDiplomacyAI_DoKilledCityStateStatement(CvDiplomacyAI* self, PlayerTypes ePlayer, DiploStatementTypes& eStatement, int& iData1);static void AfterCvDiplomacyAI_DoKilledCityStateStatement(CvDiplomacyAI* self, PlayerTypes ePlayer, DiploStatementTypes& eStatement, int& iData1);static void ReplaceCvDiplomacyAI_DoKilledCityStateStatement(void (*original)(CvDiplomacyAI*, PlayerTypes, DiploStatementTypes&, int&), CvDiplomacyAI* self, PlayerTypes ePlayer, DiploStatementTypes& eStatement, int& iData1);CivRegisterBefore<CivHooks::CvDiplomacyAI_DoKilledCityStateStatement>(host, &BeforeCvDiplomacyAI_DoKilledCityStateStatement);CivRegisterAfter<CivHooks::CvDiplomacyAI_DoKilledCityStateStatement>(host, &AfterCvDiplomacyAI_DoKilledCityStateStatement);CivRegisterReplace<CivHooks::CvDiplomacyAI_DoKilledCityStateStatement>(host, &ReplaceCvDiplomacyAI_DoKilledCityStateStatement);

Code

13848/// Possible Contact Statement13849void CvDiplomacyAI::DoKilledCityStateStatement(PlayerTypes ePlayer, DiploStatementTypes& eStatement, int& iData1)13850{13851	CvAssertMsg(ePlayer >= 0, "DIPLOMACY_AI: Invalid Player Index.  Please send Jon this with your last 5 autosaves and what changelist # you're playing.");13852	CvAssertMsg(ePlayer < MAX_MAJOR_CIVS, "DIPLOMACY_AI: Invalid Player Index.  Please send Jon this with your last 5 autosaves and what changelist # you're playing.");1385313854	if(eStatement == NO_DIPLO_STATEMENT_TYPE)13855	{13856		if(IsPlayerMadeAttackCityStatePromise(ePlayer))13857		{13858			DiploStatementTypes eTempStatement = DIPLO_STATEMENT_KILLED_PROTECTED_CITY_STATE;13859			int iTurnsBetweenStatements = MAX_TURNS_SAFE_ESTIMATE;1386013861			if(GetNumTurnsSinceStatementSent(ePlayer, eTempStatement) >= iTurnsBetweenStatements)13862			{13863				PlayerTypes eMinorCiv = GetOtherPlayerProtectedMinorKilled(ePlayer);13864				if(eMinorCiv != NO_PLAYER)13865				{13866					CvAssert(eMinorCiv >= MAX_MAJOR_CIVS);13867					CvAssert(eMinorCiv < MAX_CIV_PLAYERS);1386813869					eStatement = eTempStatement;1387013871					iData1 = eMinorCiv;13872				}13873			}13874		}13875	}13876}

Calls

Called by