CvUnit::DoTestBarbarianThreatToMinorsWithThisUnitsDeath(PlayerTypes)
- Defined in
- CvUnit.cpp, line 11493
- Class
- CvUnit
- Hook name
CivHooks::CvUnit_DoTestBarbarianThreatToMinorsWithThisUnitsDeath
Hooks
static bool BeforeCvUnit_DoTestBarbarianThreatToMinorsWithThisUnitsDeath(CvUnit* self, PlayerTypes eKillingPlayer);static void AfterCvUnit_DoTestBarbarianThreatToMinorsWithThisUnitsDeath(CvUnit* self, PlayerTypes eKillingPlayer);static void ReplaceCvUnit_DoTestBarbarianThreatToMinorsWithThisUnitsDeath(void (*original)(CvUnit*, PlayerTypes), CvUnit* self, PlayerTypes eKillingPlayer);CivRegisterBefore<CivHooks::CvUnit_DoTestBarbarianThreatToMinorsWithThisUnitsDeath>(host, &BeforeCvUnit_DoTestBarbarianThreatToMinorsWithThisUnitsDeath);CivRegisterAfter<CivHooks::CvUnit_DoTestBarbarianThreatToMinorsWithThisUnitsDeath>(host, &AfterCvUnit_DoTestBarbarianThreatToMinorsWithThisUnitsDeath);CivRegisterReplace<CivHooks::CvUnit_DoTestBarbarianThreatToMinorsWithThisUnitsDeath>(host, &ReplaceCvUnit_DoTestBarbarianThreatToMinorsWithThisUnitsDeath);
Code
11492/// Is this a Barbarian Unit threatening a nearby Minor?11493void CvUnit::DoTestBarbarianThreatToMinorsWithThisUnitsDeath(PlayerTypes eKillingPlayer)11494{11495 VALIDATE_OBJECT1149611497 // Need valid player11498 if(eKillingPlayer == NO_PLAYER)11499 return;1150011501 // No minors11502 if(GET_PLAYER(eKillingPlayer).isMinorCiv())11503 return;1150411505 PlayerTypes eMinor;11506 for(int iMinorLoop = MAX_MAJOR_CIVS; iMinorLoop < MAX_CIV_PLAYERS; iMinorLoop++)11507 {11508 eMinor = (PlayerTypes) iMinorLoop;1150911510 if(GET_PLAYER(eMinor).isAlive())11511 {11512 if(IsBarbarianUnitThreateningMinor(eMinor))11513 GET_PLAYER(eMinor).GetMinorCivAI()->DoThreateningBarbKilled(eKillingPlayer, getX(), getY());11514 }11515 }11516}