public static List <JogadorModel> ModelJogadorDaSessao(Jogador jogadorInserido)
        {
            List <JogadorModel> listaJogadores = new List <JogadorModel>();
            JogadorModel        jogadorEnviado = new JogadorModel(jogadorInserido.idJogador, jogadorInserido.sessaoAtual.idSessao, jogadorInserido.nomeJogador, jogadorInserido.coordJogadorX, jogadorInserido.coordJogadorY, jogadorInserido.areaAtual.posicaoMatriz.x, jogadorInserido.areaAtual.posicaoMatriz.y, Nucleo.ChecarQtdJogadoresSessao(jogadorInserido.sessaoAtual));

            jogadorEnviado.tipoMensagem = "jogadorDoClient";
            listaJogadores.Add(jogadorEnviado);

            return(listaJogadores);
        }
Ejemplo n.º 2
0
        public override async Task Receive(WebSocket socket, WebSocketReceiveResult result, byte[] buffer)
        {
            Console.WriteLine("Entrou no Receive");
            Jogador jogadorEncontrado = Jogador.ProcurarJogadorConectadoPorWebSocket(socket);

            Nucleo.ChecarInput(Encoding.UTF8.GetString(buffer, 0, result.Count), jogadorEncontrado);
            Console.WriteLine("Passou pelo Checar Input");
            JogadorModel jogadorModelo = new JogadorModel(jogadorEncontrado.idJogador, jogadorEncontrado.sessaoAtual.idSessao, jogadorEncontrado.nomeJogador, jogadorEncontrado.coordJogadorX, jogadorEncontrado.coordJogadorX, jogadorEncontrado.areaAtual.posicaoMatriz.x, jogadorEncontrado.areaAtual.posicaoMatriz.y, Nucleo.ChecarQtdJogadoresSessao(jogadorEncontrado.sessaoAtual));
            var          message1      = JsonConvert.SerializeObject(JogadorModel.ConverterJogadoresSessaoModel(jogadorEncontrado));
            var          message2      = JsonConvert.SerializeObject(CelulaModel.ConverterParaCelulaModel(jogadorEncontrado.areaAtual.dungeonInserida));
            var          message3      = JsonConvert.SerializeObject(JogadorModel.ModelJogadorDaSessao(jogadorEncontrado));
            //
            string nomeDoUsuario = jogadorEncontrado.nomeJogador;

            await SendMessageToSession(message1, jogadorEncontrado.sessaoAtual);
            await SendMessage(jogadorEncontrado.socketDoJogador, message2);
            await SendMessage(jogadorEncontrado.socketDoJogador, message3);

            Console.WriteLine("Fim do Receive.");
        }
        public static List <JogadorModel> ConverterJogadoresSessaoModel(Jogador jogadorInserido)
        {
            List <JogadorModel> listaJogadores = new List <JogadorModel>();

            listaJogadores.Add(new JogadorModel(jogadorInserido.idJogador, jogadorInserido.sessaoAtual.idSessao, jogadorInserido.nomeJogador, jogadorInserido.coordJogadorX, jogadorInserido.coordJogadorY, jogadorInserido.areaAtual.posicaoMatriz.x, jogadorInserido.areaAtual.posicaoMatriz.y, Nucleo.ChecarQtdJogadoresSessao(jogadorInserido.sessaoAtual)));



            foreach (Jogador j in jogadorInserido.sessaoAtual.jogadoresNaSessao)
            {
                if (j != null && j != jogadorInserido)
                {
                    listaJogadores.Add(new JogadorModel(j.idJogador, j.sessaoAtual.idSessao, j.nomeJogador, j.coordJogadorX, j.coordJogadorY, j.areaAtual.posicaoMatriz.x, j.areaAtual.posicaoMatriz.y, Nucleo.ChecarQtdJogadoresSessao(j.sessaoAtual)));
                }
            }

            return(listaJogadores);
        }
Ejemplo n.º 4
0
        public override async Task OnConnected(WebSocket socketInserido)
        {
            await base.OnConnected(socketInserido);

            var socketId = connections.PegarIdPorSocket(socketInserido);
            //await SendMessageToAll($"******* {nomeDoUsuario} entrou no chat. ******");
            Jogador      jogadorEncontrado = Jogador.ProcurarJogadorConectadoPorWebSocket(socketInserido);
            JogadorModel jogadorModelo     = new JogadorModel(jogadorEncontrado.idJogador, jogadorEncontrado.sessaoAtual.idSessao, jogadorEncontrado.nomeJogador, jogadorEncontrado.coordJogadorX, jogadorEncontrado.coordJogadorY, jogadorEncontrado.areaAtual.posicaoMatriz.x, jogadorEncontrado.areaAtual.posicaoMatriz.y, Nucleo.ChecarQtdJogadoresSessao(jogadorEncontrado.sessaoAtual));
            var          message1          = JsonConvert.SerializeObject(JogadorModel.ConverterJogadoresSessaoModel(jogadorEncontrado));
            var          message2          = JsonConvert.SerializeObject(CelulaModel.ConverterParaCelulaModel(jogadorEncontrado.areaAtual.dungeonInserida));
            var          message3          = JsonConvert.SerializeObject(JogadorModel.ModelJogadorDaSessao(jogadorEncontrado));
            //
            string nomeDoUsuario = jogadorEncontrado.nomeJogador;

            await SendMessageToSession(message1, jogadorEncontrado.sessaoAtual);
            await SendMessage(jogadorEncontrado.socketDoJogador, message2);
            await SendMessage(jogadorEncontrado.socketDoJogador, message3);
        }