Bazaar developer reference

CvLuaUnit::lGetNumResourceNeededToUpgrade(lua_State *)

Defined in
Lua/CvLuaUnit.cpp, line 1866
Class
CvLuaUnit
Hook name
CivHooks::CvLuaUnit_lGetNumResourceNeededToUpgrade

Hooks

static bool BeforeCvLuaUnit_lGetNumResourceNeededToUpgrade(lua_State* L, int& result);static void AfterCvLuaUnit_lGetNumResourceNeededToUpgrade(lua_State* L, int& result);static int ReplaceCvLuaUnit_lGetNumResourceNeededToUpgrade(int (*original)(lua_State*), lua_State* L);CivRegisterBefore<CivHooks::CvLuaUnit_lGetNumResourceNeededToUpgrade>(host, &BeforeCvLuaUnit_lGetNumResourceNeededToUpgrade);CivRegisterAfter<CivHooks::CvLuaUnit_lGetNumResourceNeededToUpgrade>(host, &AfterCvLuaUnit_lGetNumResourceNeededToUpgrade);CivRegisterReplace<CivHooks::CvLuaUnit_lGetNumResourceNeededToUpgrade>(host, &ReplaceCvLuaUnit_lGetNumResourceNeededToUpgrade);

Code

1866int CvLuaUnit::lGetNumResourceNeededToUpgrade(lua_State* L)1867{1868	CvUnit* pkUnit = GetInstance(L);1869	const ResourceTypes eResource = (ResourceTypes) lua_tointeger(L, 2);18701871#if defined(MOD_API_LUA_EXTENSIONS)1872	const UnitTypes eUpgradeUnitType = (UnitTypes) luaL_optint(L, 3, pkUnit->GetUpgradeUnitType());1873#else1874	const UnitTypes eUpgradeUnitType = pkUnit->GetUpgradeUnitType();1875#endif18761877	CvUnitEntry* pkUnitInfo = GC.getUnitInfo(eUpgradeUnitType);1878	if(pkUnitInfo == NULL)1879	{1880		luaL_error(L, "Cannot find unit info (%d) for unit.", eUpgradeUnitType);1881		return 0;1882	}18831884	const int iResult = pkUnitInfo->GetResourceQuantityRequirement(eResource);18851886	lua_pushinteger(L, iResult);1887	return 1;1888}

Calls

Called by