Hooks
static bool BeforeCvLuaUnit_lCanDoCommand(lua_State* L, int& result);static void AfterCvLuaUnit_lCanDoCommand(lua_State* L, int& result);static int ReplaceCvLuaUnit_lCanDoCommand(int (*original)(lua_State*), lua_State* L);CivRegisterBefore<CivHooks::CvLuaUnit_lCanDoCommand>(host, &BeforeCvLuaUnit_lCanDoCommand);CivRegisterAfter<CivHooks::CvLuaUnit_lCanDoCommand>(host, &AfterCvLuaUnit_lCanDoCommand);CivRegisterReplace<CivHooks::CvLuaUnit_lCanDoCommand>(host, &ReplaceCvLuaUnit_lCanDoCommand);
Code
702//bool canDoCommand(CommandTypes eCommand, int iData1, int iData2, bool bTestVisible = false, bool bTestBusy = true);703int CvLuaUnit::lCanDoCommand(lua_State* L)704{705 CvUnit* pkUnit = GetInstance(L);706 const CommandTypes eCommand = (CommandTypes)lua_tointeger(L, 2);707 const int iData1 = lua_tointeger(L, 3);708 const int iData2 = lua_tointeger(L, 4);709 const bool bTestVisible = luaL_optint(L, 5, 0); //defaults to false710 const bool bTestBusy = luaL_optint(L, 6, 1); //defaults to true711712 const bool bResult = pkUnit->canDoCommand(eCommand, iData1, iData2, bTestVisible, bTestBusy);713714 lua_pushboolean(L, bResult);715 return 1;716}