public CompetitionBootstrap(IBattleArena battleArena, INavigationSystem navigationSystem, IRobotFactory robotFactory, IArenaFactory arenaFactory, IConsoleWrapper console, ILogWriter logWriter) { _logWriter = logWriter; _console = console; _gameConsole = new GameConsole(battleArena, navigationSystem, robotFactory, arenaFactory, console, logWriter); }
internal static void Prepare(Func <Arena, IArenaFactory> factory_factory, Func <Arena, int, IMatchFinder> match_finder_factory, ref List <IMatchFinder> match_finders_sink, ref List <IArenaFactory> arena_sink) //LOL, don't care. { for (var i = 0; i < ArenaTypesCount; ++i) { var arena = arena_enum_values[i + 1]; for (var j = 0; j < MaxTeamSizeValue; ++j) { var team_size = team_size_enum_values[j]; IArenaFactory factory = null; IMatchFinder match_finder = null; if (ArenaOps.IsMatchSizeSupported(arena, team_size)) { factory = factory_factory(arena); match_finder = match_finder_factory(arena, j + 1); } match_finders_sink.Add(match_finder); arena_sink.Add(factory); //The team size as human number } } }
public GameConsole(IBattleArena battleArena, INavigationSystem navigationSystem, IRobotFactory robotFactory, IArenaFactory arenaFactory, IConsoleWrapper console, ILogWriter logWriter) { _battleArena = battleArena; _navigationSystem = navigationSystem; _console = console; _logWriter = logWriter; _robotMapper = new RobotMapper(robotFactory, arenaFactory); _arenaMapper = new ArenaMapper(arenaFactory); }
public ArenaMapper(IArenaFactory arenaFactory) { _arenaFactory = arenaFactory; }
public RobotMapper(IRobotFactory robotFactory, IArenaFactory arenaFactory) { _robotFactory = robotFactory; _arenaMapper = new ArenaMapper(arenaFactory); }