示例#1
0
 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);
 }
示例#2
0
 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
         }
     }
 }
示例#3
0
        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);
        }
示例#4
0
 public ArenaMapper(IArenaFactory arenaFactory)
 {
     _arenaFactory = arenaFactory;
 }
示例#5
0
        public RobotMapper(IRobotFactory robotFactory, IArenaFactory arenaFactory)
        {
            _robotFactory = robotFactory;

            _arenaMapper = new ArenaMapper(arenaFactory);
        }