예제 #1
0
        public Juego JugarPiedra(Guid juegoGuid, string puntoId)
        {
            Juego juego = _juegoRepo.ObtenerJuego(juegoGuid);

            if (_puntoRepo.ExistePuntoEnTablero(puntoId, juego.Tablero) is false)
            {
                throw new FenixExceptionInvalidParameter("El punto no se encuentra en el tablero.");
            }
            Jugada jugada = new Jugada(juego);

            jugada.PonerPiedra(puntoId);


            GrupoCreador grupoCreador = new GrupoCreador(juego);
            List <Grupo> gruposNuevos = grupoCreador.AgruparPiedras(_puntoRepo.ObtenerPuntoPorId(puntoId));

            juego.ActualizarGrupos(gruposNuevos);

            jugada.CambiarTurno();

            _juegoRepo.GuardarCambios();

            return(juego);
        }
예제 #2
0
 public void Inicializar()
 {
     _juego        = new Juego(Tablero.nueveXnueve);
     _grupoCreador = new GrupoCreador(_juego);
 }