Bazaar developer reference

CvLuaUnit::lCanMoveOrAttackInto(lua_State *)

Defined in
Lua/CvLuaUnit.cpp, line 822
Class
CvLuaUnit
Hook name
CivHooks::CvLuaUnit_lCanMoveOrAttackInto

Hooks

static bool BeforeCvLuaUnit_lCanMoveOrAttackInto(lua_State* L, int& result);static void AfterCvLuaUnit_lCanMoveOrAttackInto(lua_State* L, int& result);static int ReplaceCvLuaUnit_lCanMoveOrAttackInto(int (*original)(lua_State*), lua_State* L);CivRegisterBefore<CivHooks::CvLuaUnit_lCanMoveOrAttackInto>(host, &BeforeCvLuaUnit_lCanMoveOrAttackInto);CivRegisterAfter<CivHooks::CvLuaUnit_lCanMoveOrAttackInto>(host, &AfterCvLuaUnit_lCanMoveOrAttackInto);CivRegisterReplace<CivHooks::CvLuaUnit_lCanMoveOrAttackInto>(host, &ReplaceCvLuaUnit_lCanMoveOrAttackInto);

Code

821//bool canMoveOrAttackInto(CyPlot* pPlot, bool bDeclareWar = false, bDestination = false);822int CvLuaUnit::lCanMoveOrAttackInto(lua_State* L)823{824	CvUnit* pkUnit = GetInstance(L);825	CvPlot* pkPlot = CvLuaPlot::GetInstance(L, 2);826	const bool bDeclareWar = luaL_optint(L, 3, 0);827	const bool bDestination = luaL_optint(L, 4, 0);828829	byte bMoveFlags = 0;830	if(bDeclareWar)831	{832		bMoveFlags |= CvUnit::MOVEFLAG_DECLARE_WAR;833	}834	if(bDestination)835	{836		bMoveFlags |= CvUnit::MOVEFLAG_DESTINATION;837	}838839	bool bResult = false;840	if(pkPlot)841	{842#if defined(MOD_API_LUA_EXTENSIONS) && defined(MOD_BUGFIX_MINOR)843		bResult = pkUnit->canMoveOrAttackInto(*pkPlot, bMoveFlags);844#else845		pkUnit->canMoveOrAttackInto(*pkPlot, bMoveFlags);846#endif847	}848849	lua_pushboolean(L, bResult);850	return 1;851}

Calls

Called by