Example #1
0
        public GameOutward(IGameSettings settings, string[,] players, ReportFragment fragment)
        {
            Settings   = settings;
            Board      = new BoardOutward(Settings);
            TurnNumber = fragment.TurnNumber;
            var ppp = settings.Mode.PokemonsPerPlayer();

            Board.Players[0, 0] = new PlayerOutward(players[0, 0], ppp);
            Board.Players[1, 0] = new PlayerOutward(players[1, 0], ppp);
            Board.Players[0, 0].SetAll(fragment.P00);
            Board.Players[1, 0].SetAll(fragment.P10);
            if (Settings.Mode.PlayersPerTeam() == 2)
            {
                Board.Players[0, 1] = new PlayerOutward(players[0, 1], ppp);
                Board.Players[1, 1] = new PlayerOutward(players[1, 1], ppp);
                Board.Players[0, 1].SetAll(fragment.P01);
                Board.Players[1, 1].SetAll(fragment.P11);
            }
            Board.Weather = fragment.Weather;
            foreach (var pm in fragment.Pokemons)
            {
                pm.Init(this);
            }
#if TEST
            LogAppended = delegate { };
            TurnEnd     = delegate { };
#endif
        }
Example #2
0
 protected ReportFragment(ReportFragment fragment)
 {
     _turnNumber = fragment._turnNumber;
     Weather     = fragment.Weather;
     P00         = fragment.P00;
     P10         = fragment.P10;
     P01         = fragment.P01;
     P11         = fragment.P11;
     Pokemons    = fragment.Pokemons;
 }