private CreatePeaceTournamentsResult TryCreatePeaceTournaments(IMBFaction factionA, IMBFaction factionB) { var factionAResults = TournamentBuilder.TryCreatePeaceTournamentForFaction(factionA); var factionBResults = TournamentBuilder.TryCreatePeaceTournamentForFaction(factionB); if (factionAResults.Failed && factionBResults.Failed) { return(CreatePeaceTournamentsResult.Failure); } return(CreatePeaceTournamentsResult.Success(factionAResults, factionBResults)); }
public CreateTournamentResult TryCreatePeaceTournamentForFaction(IMBFaction faction) { var findSettlementResult = SettlementFinder.FindForPeaceTournament(faction); if (findSettlementResult.Failed) { return(CreateTournamentResult.Failure); } var createTournamentOptions = new CreateTournamentOptions() { InitiatingHero = findSettlementResult.InitiatingHero, Settlement = findSettlementResult.Nominee, Type = TournamentType.Peace }; return(CreateTournament(createTournamentOptions)); }
public static IFaction ToIFaction(this IMBFaction faction) { return((IFaction)faction); }
public FindHostSettlementResult FindForPeaceTournament(IMBFaction faction) { return(FindMostProsperousAvailable(faction.Settlements)); }