예제 #1
0
        public void Ejecutar(PaqueteCliente mensaje, Jugador jugador, Juego juego, ServidorMonopolio.ServerForm ventanaServidor)
        {
            jugador.Usuario  = mensaje.PopString();
            jugador.Password = mensaje.PopString();

            Jugador _newJugador = null;

            _newJugador = juego.JugadoresRegistrados.Find(j => j.Usuario.ToLower() == jugador.Usuario.ToLower() && j.Password == jugador.Password);

            if (_newJugador == null)
            {
                juego.JugadoresConectados.Remove(jugador);
                jugador.EnviarMensaje(new Servidor_SesionFallida());
                return;
            }

            jugador.Id       = _newJugador.Id;
            jugador.Nombre   = _newJugador.Nombre;
            jugador.Apellido = _newJugador.Apellido;
            juego.AsignarFichaJugador(jugador);



            ventanaServidor.Mostrar_Cliente(jugador, false);


            ventanaServidor.Imprimir_Log(DateTime.Now + " - " + jugador.Id.ToString() + ": Se le ha asignado el nombre: " + jugador.Usuario.ToUpper());

            jugador.EnviarMensaje(new Servidor_CrearJugador(jugador, juego));

            foreach (Jugador j in juego.JugadoresConectados.Where(u => u.Id != jugador.Id))
            {
                j.EnviarMensaje(new Servidor_AsignarJugador(jugador));
            }
        }
예제 #2
0
        public void Ejecutar(PaqueteCliente mensaje, Jugador jugador, Juego juego, ServidorMonopolio.ServerForm ventanaServidor)
        {
            int idJugador = mensaje.PopInt();

            Jugador _jugador = juego.JugadoresConectados.Find(j => j.Id == idJugador);

            if (_jugador == null)
            {
                return;
            }

            juego.GestionarJugadaJugador(_jugador);

            /*foreach(Jugador j in juego.JugadoresConectados)
             * {
             *  j.EnviarMensaje(new Servidor_LanzarDado(_jugador));
             * }*/
        }