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
- CvGlobals::getUnitInfo(UnitTypes)
CvLuaScopedInstance::GetInstance- CvUnit::GetUpgradeUnitType() const
- CvUnitEntry::GetResourceQuantityRequirement(int) const
lua_pushintegerlua_tointegerluaL_errorluaL_optinteger