Bazaar developer reference

CvDiplomacyAI::DoPlayerKilledSomeone(PlayerTypes, PlayerTypes)

Defined in
CvDiplomacyAI.cpp, line 9821
Class
CvDiplomacyAI
Hook name
CivHooks::CvDiplomacyAI_DoPlayerKilledSomeone

Hooks

static bool BeforeCvDiplomacyAI_DoPlayerKilledSomeone(CvDiplomacyAI* self, PlayerTypes ePlayer, PlayerTypes eDeadPlayer);static void AfterCvDiplomacyAI_DoPlayerKilledSomeone(CvDiplomacyAI* self, PlayerTypes ePlayer, PlayerTypes eDeadPlayer);static void ReplaceCvDiplomacyAI_DoPlayerKilledSomeone(void (*original)(CvDiplomacyAI*, PlayerTypes, PlayerTypes), CvDiplomacyAI* self, PlayerTypes ePlayer, PlayerTypes eDeadPlayer);CivRegisterBefore<CivHooks::CvDiplomacyAI_DoPlayerKilledSomeone>(host, &BeforeCvDiplomacyAI_DoPlayerKilledSomeone);CivRegisterAfter<CivHooks::CvDiplomacyAI_DoPlayerKilledSomeone>(host, &AfterCvDiplomacyAI_DoPlayerKilledSomeone);CivRegisterReplace<CivHooks::CvDiplomacyAI_DoPlayerKilledSomeone>(host, &ReplaceCvDiplomacyAI_DoPlayerKilledSomeone);

Code

9820/// ePlayer killed eDeadPlayer, so figure out what that means9821void CvDiplomacyAI::DoPlayerKilledSomeone(PlayerTypes ePlayer, PlayerTypes eDeadPlayer)9822{9823	CvAssertMsg(ePlayer >= 0, "DIPLOMACY_AI: Invalid Player Index.  Please send Jon this with your last 5 autosaves and what changelist # you're playing.");9824	CvAssertMsg(ePlayer < MAX_CIV_PLAYERS, "DIPLOMACY_AI: Invalid Player Index.  Please send Jon this with your last 5 autosaves and what changelist # you're playing.");9825	CvAssertMsg(eDeadPlayer >= 0, "DIPLOMACY_AI: Invalid Player Index.  Please send Jon this with your last 5 autosaves and what changelist # you're playing.");9826	CvAssertMsg(eDeadPlayer < MAX_CIV_PLAYERS, "DIPLOMACY_AI: Invalid Player Index.  Please send Jon this with your last 5 autosaves and what changelist # you're playing.");98279828	if(IsPlayerValid(ePlayer))9829	{9830		// Minor Civ9831		if(GET_PLAYER(eDeadPlayer).isMinorCiv())9832		{9833			ChangeOtherPlayerNumMinorsConquered(ePlayer, 1);98349835			// Did they kill a Minor we're protecting?9836			if(GET_PLAYER(eDeadPlayer).GetMinorCivAI()->IsProtectedByMajor(GetPlayer()->GetID()))9837			{9838				SetOtherPlayerTurnsSinceKilledProtectedMinor(ePlayer, 0);9839				SetOtherPlayerProtectedMinorKilled(ePlayer, eDeadPlayer);9840				ChangeOtherPlayerNumProtectedMinorsKilled(ePlayer, 1);98419842				// Player broke a promise that he wasn't going to kill the Minor9843				if(IsPlayerMadeAttackCityStatePromise(ePlayer))9844					SetPlayerBrokenAttackCityStatePromise(ePlayer, true);9845			}9846		}9847		// Major Civ9848		else9849			ChangeOtherPlayerNumMajorsConquered(ePlayer, 1);9850	}9851}

Calls

Called by