/// <summary>Gets the regions that are enermies for the owner excluding neutral.</summary> public static IEnumerable <Region> GetRegionsForPlayerWithEnermies(this IEnumerable <Region> regions, PlayerType owner, MapState state) { return(regions.Where(region => state.HasOwner(region, owner) && region.Neighbors .Any(neighbor => state.Owner(neighbor) != PlayerType.neutral && !state.HasOwner(neighbor, owner)))); }
/// <summary>Gets the attacking force of the regions.</summary> public static int AttackingForce(this IEnumerable <Region> regions, MapState state) { return(regions .Where(region => state.Owner(region) != PlayerType.neutral) .Sum(region => state.Armies(region) - 1)); }
/// <summary>Gets the regions that are enermies for the owner excluding neutral.</summary> public static IEnumerable <Region> GetEnemriesForPlayer(this IEnumerable <Region> regions, PlayerType owner, MapState state) { return(regions.Where(region => state.Owner(region) != PlayerType.neutral && !state.HasOwner(region, owner))); }