Hooks
static bool BeforePUF_canDefendEnemy(const CvUnit* pUnit, int iData1, int iData2, bool& result);static void AfterPUF_canDefendEnemy(const CvUnit* pUnit, int iData1, int iData2, bool& result);static bool ReplacePUF_canDefendEnemy(bool (*original)(const CvUnit*, int, int), const CvUnit* pUnit, int iData1, int iData2);CivRegisterBefore<CivHooks::PUF_canDefendEnemy>(host, &BeforePUF_canDefendEnemy);CivRegisterAfter<CivHooks::PUF_canDefendEnemy>(host, &AfterPUF_canDefendEnemy);CivRegisterReplace<CivHooks::PUF_canDefendEnemy>(host, &ReplacePUF_canDefendEnemy);
Code
808bool PUF_canDefendEnemy(const CvUnit* pUnit, int iData1, int iData2)809{810 CvAssertMsg(iData1 != -1, "Invalid data argument, should be >= 0");811 CvAssertMsg(iData2 != -1, "Invalid data argument, should be >= 0");812 return (PUF_canDefend(pUnit, iData1, iData2) && PUF_isEnemy(pUnit, iData1, iData2));813}