Bazaar developer reference

CvMinorCivAI::DoThreateningBarbKilled(PlayerTypes, int, int)

Defined in
CvMinorCivAI.cpp, line 3374
Class
CvMinorCivAI
Hook name
CivHooks::CvMinorCivAI_DoThreateningBarbKilled

Hooks

static bool BeforeCvMinorCivAI_DoThreateningBarbKilled(CvMinorCivAI* self, PlayerTypes eKillingPlayer, int iX, int iY);static void AfterCvMinorCivAI_DoThreateningBarbKilled(CvMinorCivAI* self, PlayerTypes eKillingPlayer, int iX, int iY);static void ReplaceCvMinorCivAI_DoThreateningBarbKilled(void (*original)(CvMinorCivAI*, PlayerTypes, int, int), CvMinorCivAI* self, PlayerTypes eKillingPlayer, int iX, int iY);CivRegisterBefore<CivHooks::CvMinorCivAI_DoThreateningBarbKilled>(host, &BeforeCvMinorCivAI_DoThreateningBarbKilled);CivRegisterAfter<CivHooks::CvMinorCivAI_DoThreateningBarbKilled>(host, &AfterCvMinorCivAI_DoThreateningBarbKilled);CivRegisterReplace<CivHooks::CvMinorCivAI_DoThreateningBarbKilled>(host, &ReplaceCvMinorCivAI_DoThreateningBarbKilled);

Code

3372/// Player killed a threatening barb, so reward him!3373/// NOTE: Player can get credit even if we haven't sent him a notification (ex. is only one barb, player is far away)3374void CvMinorCivAI::DoThreateningBarbKilled(PlayerTypes eKillingPlayer, int iX, int iY)3375{3376	CvAssertMsg(eKillingPlayer >= 0, "eMajor is expected to be non-negative (invalid Index)");3377	CvAssertMsg(eKillingPlayer < MAX_MAJOR_CIVS, "eMajor is expected to be within maximum bounds (invalid Index)");33783379	if (IsThreateningBarbariansEventActiveForPlayer(eKillingPlayer))3380	{3381		ChangeFriendshipWithMajor(eKillingPlayer, /*12*/ GC.getFRIENDSHIP_PER_BARB_KILLED());33823383		ChangeAngerFreeIntrusionCounter(eKillingPlayer, 5);33843385		Localization::String strMessage = Localization::Lookup("TXT_KEY_NOTIFICATION_MINOR_BARB_KILLED");3386		strMessage << GetPlayer()->getNameKey();3387		Localization::String strSummary = Localization::Lookup("TXT_KEY_NOTIFICATION_SM_MINOR_BARB_KILLED");3388		strSummary << GetPlayer()->getNameKey();33893390		AddNotification(strMessage.toUTF8(), strSummary.toUTF8(), eKillingPlayer, iX, iY);3391	}3392}

Calls

Called by