예제 #1
0
//------------------------------------------------------------------------------
//void DoProposeEnact(ResolutionTypes eResolution, PlayerTypes iPlayer, int iChoice=-1);
int CvLuaLeague::lDoProposeEnact(lua_State* L)
{
	CvLeague* pLeague = GetInstance(L);
	const ResolutionTypes eResolution = (ResolutionTypes) lua_tointeger(L, 2);
	const PlayerTypes ePlayer = (PlayerTypes) lua_tointeger(L, 3);
	const int iChoice = luaL_optint(L, 4, LeagueHelpers::CHOICE_NONE);

	pLeague->DoProposeEnact(eResolution, ePlayer, iChoice);
	return 0;
}
//------------------------------------------------------------------------------
void CvDllNetMessageHandler::ResponseLeagueProposeEnact(LeagueTypes eLeague, ResolutionTypes eResolution, PlayerTypes eProposer, int iChoice)
{
	CvAssertMsg(eLeague != NO_LEAGUE, "eLeague invalid");
	CvAssertMsg(eResolution != NO_RESOLUTION, "eResolution invalid");
	CvAssertMsg(eProposer != NO_PLAYER, "eProposer invalid");

	CvLeague* pLeague = GC.getGame().GetGameLeagues()->GetLeague(eLeague);
	CvAssertMsg(pLeague->CanProposeEnact(eResolution, eProposer, iChoice), "eProposer not allowed to enact Resolution. Please send Anton your save file and version.");
	pLeague->DoProposeEnact(eResolution, eProposer, iChoice);
}