Bazaar developer reference

CvLuaCity::lGetFaithPurchaseUnitTooltip(lua_State *)

Defined in
Lua/CvLuaCity.cpp, line 984
Class
CvLuaCity
Hook name
CivHooks::CvLuaCity_lGetFaithPurchaseUnitTooltip

Hooks

static bool BeforeCvLuaCity_lGetFaithPurchaseUnitTooltip(lua_State* L, int& result);static void AfterCvLuaCity_lGetFaithPurchaseUnitTooltip(lua_State* L, int& result);static int ReplaceCvLuaCity_lGetFaithPurchaseUnitTooltip(int (*original)(lua_State*), lua_State* L);CivRegisterBefore<CivHooks::CvLuaCity_lGetFaithPurchaseUnitTooltip>(host, &BeforeCvLuaCity_lGetFaithPurchaseUnitTooltip);CivRegisterAfter<CivHooks::CvLuaCity_lGetFaithPurchaseUnitTooltip>(host, &AfterCvLuaCity_lGetFaithPurchaseUnitTooltip);CivRegisterReplace<CivHooks::CvLuaCity_lGetFaithPurchaseUnitTooltip>(host, &ReplaceCvLuaCity_lGetFaithPurchaseUnitTooltip);

Code

984int CvLuaCity::lGetFaithPurchaseUnitTooltip(lua_State* L)985{986	CvString toolTip;987	CvCity* pkCity = GetInstance(L);988	const UnitTypes eUnit = (UnitTypes) lua_tointeger(L, 2);989990	// Already a unit here991	if(!pkCity->CanPlaceUnitHere(eUnit))992	{993		Localization::String localizedText = Localization::Lookup("TXT_KEY_CANNOT_PURCHASE_UNIT_HERE");994995		const char* const localized = localizedText.toUTF8();996		if(localized)997		{998			if(!toolTip.IsEmpty())999				toolTip += "[NEWLINE]";10001001			toolTip += localized;1002		}1003	}10041005	// Not enough faith1006	if(pkCity->GetFaithPurchaseCost(eUnit, true) > GET_PLAYER(pkCity->getOwner()).GetFaith())1007	{1008		Localization::String localizedText = Localization::Lookup("TXT_KEY_CANNOT_PURCHASE_NO_FAITH");10091010		const char* const localized = localizedText.toUTF8();1011		if(localized)1012		{1013			if(!toolTip.IsEmpty())1014				toolTip += "[NEWLINE]";10151016			toolTip += localized;1017		}1018	}10191020	lua_pushstring(L, toolTip.c_str());1021	return 1;1022}

Calls

Called by