Bazaar developer reference

CvLuaPlayer::lCitiesAux(lua_State *)

Defined in
Lua/CvLuaPlayer.cpp, line 7796
Class
CvLuaPlayer
Hook name
CivHooks::CvLuaPlayer_lCitiesAux

Hooks

static bool BeforeCvLuaPlayer_lCitiesAux(lua_State* L, int& result);static void AfterCvLuaPlayer_lCitiesAux(lua_State* L, int& result);static int ReplaceCvLuaPlayer_lCitiesAux(int (*original)(lua_State*), lua_State* L);CivRegisterBefore<CivHooks::CvLuaPlayer_lCitiesAux>(host, &BeforeCvLuaPlayer_lCitiesAux);CivRegisterAfter<CivHooks::CvLuaPlayer_lCitiesAux>(host, &AfterCvLuaPlayer_lCitiesAux);CivRegisterReplace<CivHooks::CvLuaPlayer_lCitiesAux>(host, &ReplaceCvLuaPlayer_lCitiesAux);

Code

7795// Aux Method used by lCities.7796int CvLuaPlayer::lCitiesAux(lua_State* L)7797{7798	CvPlayerAI* pkPlayer = GetInstance(L);7799	CvCity* pkCity = NULL;78007801	int i = -1;7802	lua_pushvalue(L, lua_upvalueindex(1));7803	int t = lua_gettop(L);78047805	lua_rawgeti(L, t, 1);7806	if(!lua_isnil(L, -1))7807	{7808		i = lua_tointeger(L, -1);7809	}7810	lua_pop(L, 1);78117812	pkCity = (i == -1)? pkPlayer->firstCity(&i) : pkPlayer->nextCity(&i);78137814	lua_pushinteger(L, i);7815	lua_rawseti(L, t, 1);78167817	if(pkCity)7818	{7819		CvLuaCity::Push(L, pkCity);7820		return 1;7821	}78227823	return 0;7824}

Calls

Called by