Bazaar developer reference

CvPlayer::changeCombatExperienceTimes100(int, CvUnit *)

Defined in
CvPlayer.cpp, line 17235
Class
CvPlayer
Hook name
CivHooks::CvPlayer_changeCombatExperienceTimes100

Hooks

static bool BeforeCvPlayer_changeCombatExperienceTimes100(CvPlayer* self, int iChangeTimes100, CvUnit* pFromUnit);static void AfterCvPlayer_changeCombatExperienceTimes100(CvPlayer* self, int iChangeTimes100, CvUnit* pFromUnit);static void ReplaceCvPlayer_changeCombatExperienceTimes100(void (*original)(CvPlayer*, int, CvUnit*), CvPlayer* self, int iChangeTimes100, CvUnit* pFromUnit);CivRegisterBefore<CivHooks::CvPlayer_changeCombatExperienceTimes100>(host, &BeforeCvPlayer_changeCombatExperienceTimes100);CivRegisterAfter<CivHooks::CvPlayer_changeCombatExperienceTimes100>(host, &AfterCvPlayer_changeCombatExperienceTimes100);CivRegisterReplace<CivHooks::CvPlayer_changeCombatExperienceTimes100>(host, &ReplaceCvPlayer_changeCombatExperienceTimes100);

Code

17233#if defined(MOD_GLOBAL_LOCAL_GENERALS)17234#if defined(MOD_UNITS_XP_TIMES_100)17235void CvPlayer::changeCombatExperienceTimes100(int iChangeTimes100, CvUnit* pFromUnit)17236#else17237void CvPlayer::changeCombatExperience(int iChange, CvUnit* pFromUnit)17238#endif17239#else17240#if defined(MOD_UNITS_XP_TIMES_100)17241void CvPlayer::changeCombatExperienceTimes100(int iChangeTimes100)17242#else17243void CvPlayer::changeCombatExperience(int iChange)17244#endif17245#endif17246{17247#if defined(MOD_UNITS_XP_TIMES_100)17248	if (!MOD_UNITS_XP_TIMES_100) {17249		// If NOT using XP times 100, remove any fractional part17250		iChangeTimes100 -= (iChangeTimes100 % 100);17251	}17252	17253	if (getCombatExperienceTimes100() + iChangeTimes100 < 0)17254#else17255	if (getCombatExperience() + iChange < 0)17256#endif17257	{17258#if defined(MOD_UNITS_XP_TIMES_100)17259		setCombatExperienceTimes100(0);17260#else17261		setCombatExperience(0);17262#endif17263	}17264	else17265	{17266#if defined(MOD_GLOBAL_LOCAL_GENERALS)17267#if defined(MOD_UNITS_XP_TIMES_100)17268		setCombatExperienceTimes100(getCombatExperienceTimes100() + iChangeTimes100, pFromUnit);17269#else17270		setCombatExperience(getCombatExperience() + iChange, pFromUnit);17271#endif17272#else17273#if defined(MOD_UNITS_XP_TIMES_100)17274		setCombatExperienceTimes100(getCombatExperienceTimes100() + iChangeTimes100);17275#else17276		setCombatExperience(getCombatExperience() + iChange);17277#endif17278#endif17279	}1728017281#if defined(MOD_UNITS_XP_TIMES_100)17282	m_iLifetimeCombatExperienceTimes100 += iChangeTimes100;17283#else17284	m_iLifetimeCombatExperience += iChange;17285#endif17286}

Calls

Called by