示例#1
0
 private void CargarJugador(IJugador js)
 {
     foreach (IEquipo e in listaDeEquipos)
     {
         e.AdquirirJugador(js);
     }
 }
        public void TestRecuperarListaPartidas()
        {
            IBaseDatosJugadores miBaseDatosJugadores =
                Juego.dameElJuego().baseDatosJugadores;
            IJugador ivan = miBaseDatosJugadores.getOrCreateJugador("Ivan");

            Assert.IsNotNull(ivan.historicoPartidas);
        }
示例#3
0
        public void TestAltaYRecuperacionJugador()
        {
            IBaseDatosJugadores miBaseDatosJugadores =
                IJuego.dameElJuego().baseDatosJugadores;
            IJugador ivan = miBaseDatosJugadores.getOrCreateJugador("Ivan");

            Assert.IsNotNull(ivan);
        }
示例#4
0
 private IJugador ObtieneOponente(IJugador player)
 {
     if (player == p1)
     {
         return(p2);
     }
     return(p1);
 }
示例#5
0
        public void TestNombreJugador()
        {
            IBaseDatosJugadores miBaseDatosJugadores =
                IJuego.dameElJuego().baseDatosJugadores;
            IJugador ivan = miBaseDatosJugadores.getOrCreateJugador("Ivan");

            Assert.AreEqual(ivan.nombre, "Ivan");
        }
示例#6
0
        public void TestAltaJugador()
        {
            IBaseDatosJugadores miBaseDatosJugadores =
                IJuego.dameElJuego().baseDatosJugadores;
            IJugador ivan = miBaseDatosJugadores.nuevoJugador("Ivan");

            Assert.IsNotNull(ivan);
        }
示例#7
0
        public void Inicializar()
        {
            _tablero = new Tablero(new Grilla(new Punto()));
            _jugador = new Jugador();
            _partida = new Partida(_tablero, _jugador);

            _partidaEnCurso = _partida.Crear(9, "negro", "blanco");
        }
示例#8
0
        public IHttpActionResult GetiJugadoresByIdEquipo(int id)
        {
            DateTime fecha = DateTime.Now;

            try
            {
                var personas = (from tPersonas in db.personas
                                join tJugador in db.jugadores on tPersonas.id_persona equals tJugador.id_persona
                                join tFiles in db.files on tPersonas.id_foto equals tFiles.Id
                                where tJugador.id_equipo == id
                                select new
                {
                    nombre = tPersonas.nombre,
                    apellido = tPersonas.apellido,
                    id_persona = tJugador.id_jugador,
                    id_equipo = tJugador.id_equipo,
                    imagePath = tFiles.ImagePath,
                    rol = tJugador.rol,
                    nro_doc = tPersonas.nro_documento,
                    fecha_nacimiento = tPersonas.fecha_nacimiento,
                    id_jugador = tJugador.id_jugador
                }).OrderBy(s => s.apellido);

                List <IJugador> lsJugadores = new List <IJugador>();
                foreach (var p in personas)
                {
                    IJugador jugador = new IJugador();
                    jugador.nombre     = p.nombre;
                    jugador.apellido   = p.apellido;
                    jugador.id_equipo  = (int)p.id_equipo;
                    jugador.id_persona = p.id_persona;
                    jugador.nro_doc    = Convert.ToInt32(p.nro_doc);
                    jugador.imagePath  = p.imagePath;
                    jugador.rol        = p.rol;
                    jugador.id_jugador = p.id_jugador;

                    jugador.edad = fecha.Year - p.fecha_nacimiento.Year;

                    if (fecha.Month < p.fecha_nacimiento.Month ||
                        (fecha.Month == p.fecha_nacimiento.Month && fecha.Day < p.fecha_nacimiento.Day))
                    {
                        jugador.edad--;
                    }

                    if (jugador.edad > 1800)
                    {
                        jugador.edad = jugador.edad - 1900;
                    }

                    lsJugadores.Add(jugador);
                }
                return(Ok(lsJugadores));
            }
            catch (Exception e)
            {
                return(BadRequest(e.ToString()));
            }
        }
        public void TestNuevaPartida1()
        {
            IBaseDatosJugadores miBaseDatosJugadores =
                Juego.dameElJuego().baseDatosJugadores;
            IJugador    ivan    = miBaseDatosJugadores.getOrCreateJugador("Ivan");
            IContinente europa  = Juego.dameElJuego().baseDatosGeografica.getContinente("Europa");
            IPartida    partida = ivan.nuevaPartida(europa);

            Assert.IsNotNull(partida);
        }
示例#10
0
 public Juego(IJugador p1, IJugador p2)
 {
     if (p1 == null || p2 == null)
     {
         throw new ArgumentException("Se necesitan 2 jugadores...");
     }
     this.p1 = p1;
     this.p2 = p2;
     p1.game = this;
     p2.game = this;
 }
示例#11
0
 public Juego(IJugador p1, IJugador p2)
 {
     if (p1 == null || p2 == null)
     {
         throw new ArgumentException("Se necesitan 2 jugadores...");
     }
     this.p1 = p1;
     this.p2 = p2;
     p1.game = this;
     p2.game = this;
 }
示例#12
0
        public void TestRespuestaCorrecta()
        {
            IBaseDatosJugadores miBaseDatosJugadores =
                IJuego.dameElJuego().baseDatosJugadores;
            IJugador    ivan      = miBaseDatosJugadores.getOrCreateJugador("Ivan");
            IContinente europa    = IJuego.dameElJuego().baseDatosGeografica.getContinente("Europa");
            IPartida    partida   = ivan.nuevaPartida(europa);
            IPregunta   pregunta  = partida.nuevaPregunta();
            bool        resultado = pregunta.proponerRespuesta(pregunta.pais.capital);

            Assert.IsTrue(resultado);
        }
示例#13
0
 internal void Avanzar(IJugador jugador)
 {
     if (jugador.TotalPuntos() >= 0.8)
     {
         jugador.CantidadPuntos(this.Bono);
         this.Sipaso = true;
     }
     else
     {
         this.Sipaso = false;
     }
 }
        public void TestNuevaPartida2()
        {
            IBaseDatosJugadores miBaseDatosJugadores =
                Juego.dameElJuego().baseDatosJugadores;
            IJugador ivan = miBaseDatosJugadores.getOrCreateJugador("Ivan");

            int cuantasLlevaba = ivan.historicoPartidas.Count;

            IContinente europa  = Juego.dameElJuego().baseDatosGeografica.getContinente("Europa");
            IPartida    partida = ivan.nuevaPartida(europa);

            int cuantasLleva = ivan.historicoPartidas.Count;

            Assert.AreEqual(cuantasLlevaba + 1, cuantasLleva);
            Assert.AreEqual(ivan.historicoPartidas[ivan.historicoPartidas.Count - 1], partida);
        }
示例#15
0
        public void Puntua(IJugador player)
        {
            int i = Array.IndexOf(puntuaciones, player.puntos);

            if (i == 2)
            {
                IJugador oponente = ObtieneOponente(player);
                if (oponente.puntos == "40")
                {
                    oponente.puntos = "IGUALES";
                    player.puntos   = "IGUALES";
                    return;
                }
            }

            if (i == 3 || i == 5)
            {
                IJugador oponente = ObtieneOponente(player);
                if (oponente.puntos == "VENTAJA")
                {
                    oponente.puntos = "IGUALES";
                    player.puntos   = "IGUALES";
                    return;
                }

                ganador = player;
                return;
            }

            if (i == 4)
            {
                IJugador oponente = ObtieneOponente(player);

                if (oponente.puntos == "IGUALES")
                {
                    oponente.puntos = "IGUALES";
                    player.puntos   = "VENTAJA";
                    return;
                }
            }
            player.puntos = puntuaciones[i + 1];
        }
示例#16
0
        public void Puntua(IJugador player)
        {
            int i = Array.IndexOf(puntuaciones, player.puntos);
            if (i == 2)
            {
                IJugador oponente = ObtieneOponente(player);
                if (oponente.puntos == "40")
                {
                    oponente.puntos = "IGUALES";
                    player.puntos = "IGUALES";
                    return;
                }
            }

            if (i == 3 || i == 5)
            {
                IJugador oponente = ObtieneOponente(player);
                if (oponente.puntos == "VENTAJA")
                {
                    oponente.puntos = "IGUALES";
                    player.puntos = "IGUALES";
                    return;
                }

                ganador = player;
                return;
            }

            if (i == 4)
            {

                IJugador oponente = ObtieneOponente(player);

                if (oponente.puntos == "IGUALES")
                {
                    oponente.puntos = "IGUALES";
                    player.puntos = "VENTAJA";
                    return;
                }
            }
            player.puntos = puntuaciones[i + 1];
        }
示例#17
0
        private void btn_Jugar_Click(object sender, RoutedEventArgs e)
        {
            var         nombreJugador    = txt_Jugador.Text;
            string      nombreContinente = (string)cmb_Continentes.SelectedItem;
            IContinente continente       =
                Juego.dameElJuego().
                baseDatosGeografica.getContinente(nombreContinente);


            // Mirar si el Jugador existe, sino lo creo y
            // Lo recupero
            IJugador jugador = Juego.dameElJuego().
                               baseDatosJugadores.getOrCreateJugador(nombreJugador);

            // Crearle una partida
            IPartida partida = jugador.nuevaPartida(continente);

            GameWindow ventanaJuego = new GameWindow(partida);

            ventanaJuego.Show();
        }
示例#18
0
        public void TestRespuestasFallidasMultiples()
        {
            IBaseDatosJugadores miBaseDatosJugadores =
                IJuego.dameElJuego().baseDatosJugadores;
            IJugador    ivan     = miBaseDatosJugadores.getOrCreateJugador("Ivan");
            IContinente europa   = IJuego.dameElJuego().baseDatosGeografica.getContinente("Europa");
            IPartida    partida  = ivan.nuevaPartida(europa);
            IPregunta   pregunta = partida.nuevaPregunta();
            int         intentos = pregunta.intentosRestantes;

            Assert.AreEqual(intentos, 3);

            pregunta.proponerRespuesta("Ruina");
            pregunta.proponerRespuesta("Ruina");
            pregunta.proponerRespuesta("Ruina");

            intentos = pregunta.intentosRestantes;
            Assert.AreEqual(intentos, 0);

//            pregunta.proponerRespuesta("Ruina");
        }
示例#19
0
        /// <summary>
        /// Saca algún especifico del lobby
        /// </summary>
        /// <param name="indiceSala">Sala con los jugadores</param>
        /// <param name="conexion"> La interfaz de callback del jugador </param>
        private void SacarDelLobby(int indiceSala, IJugador conexion)
        {
            Jugador jugador;

            salasAbiertas[indiceSala].DiccionarioJugadoresLobby.TryGetValue(conexion, out jugador);
            salasAbiertas[indiceSala].DiccionarioJugadoresLobby.Remove(conexion);
            salasAbiertas[indiceSala].NumJugadores--;
            if (salasAbiertas[indiceSala].NumJugadores == 0)
            {
                salasAbiertas.RemoveAt(indiceSala);
                return;
            }
            foreach (var miembro in salasAbiertas[indiceSala].DiccionarioJugadoresLobby.Keys)
            {
                try
                {
                    miembro.RecibirMensajeMiembroLobby(false, jugador.Apodo);
                }
                catch (Exception)
                {
                    SacarDelLobby(indiceSala, conexion);
                }
            }
        }
示例#20
0
 public Partida(ITablero tablero, IJugador jugador)
 {
     _tablero = tablero;
     _jugador = jugador;
 }
示例#21
0
 private IJugador ObtieneOponente(IJugador player)
 {
     if (player == p1)
         return p2;
     return p1;
 }
示例#22
0
 public Partida(IJugador jugador, IContinente continente)
 {
     this.jugador            = jugador;
     this.continente         = continente;
     this.historicoPreguntas = new List <IPregunta>();
 }