Esempio n. 1
0
 public Comando(string accao, Cliente ligacao, RoomDesc sala, string idMapa)
 {
     _accao = accao;
     _ligacao = ligacao;
     _sala = sala;
     _idMapa = idMapa;
 }
Esempio n. 2
0
        /// <summary>
        /// Executa o comando Login
        /// </summary>
        /// <returns></returns>
        public static Cliente regista(ref bool aceite, string portoCliente, string portoServidor,
            string ipServidor, string nickName, string ipLocal)
        {
            //envia excepção em caso de erro
            ValidaLogin(ipServidor, nickName);

            //envia excepção em caso de erro
            int portoServidorInteiro = validaPorto(portoServidor);
            int portoClienteInteiro = validaPorto(portoCliente);

            Cliente _ligacao;

            //cria a ligação com o servidor
            _ligacao = new Cliente(ipServidor, portoServidorInteiro, portoClienteInteiro, nickName);

            //efectua Login no servidor
            aceite = _ligacao.RegistaCliente(ipLocal, "" + portoCliente, nickName);

            return _ligacao;
        }
Esempio n. 3
0
        /// <summary>
        /// Login do cliente no servidor
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void RealizaLogin(object sender, EventArgs e)
        {
            bool aceite = false;
             try
             {
            _cliente = Login.regista(ref aceite, _tbPortoCliente.Text, _tbPortoServidor.Text,
                _tbIpServidor.Text, _tbNickName.Text, _tbIpLocal.Text);

            if (aceite == false)
            {
               EscreveLog("Login Rejeitado, nick já usado no servidor");
               Cliente.DestroiPorto();
               return;
            }

            //Caso tudo tenha corrido com sucesso
            MMGCliente.EscreveLog("Ligacao ao servidor com sucesso\r\n");

            //Actualiza o nickName na ligacao com o servidor
            _cliente.NickName = _tbNickName.Text;

            _btLogin.Enabled = false;

            //Torna enable a listbox que permite a pesquisa de jogos
            _lbListaJogos.Enabled = true;
            //Torna enable o butão para pesquisar jogos
            _btPesquisaJogos.Enabled = true;
            //Permite a criação de novos jogos
            _btCriarJogo.Enabled = true;

            _btMudarServidor.Enabled = true;

            //disable
            _tbIpLocal.Enabled = false;
            _tbNickName.Enabled = false;
            _tbPortoCliente.Enabled = false;
            _tbPortoServidor.Enabled = false;
            _tbIpServidor.Enabled = false;
             }
             catch (DadosInvalidosException exception)
             {
            MMGCliente.EscreveLog(exception.Message);
             }
             catch (LigacaoException ex)
             {
            MMGCliente.EscreveLog(ex.Message);
            return;
             }
             catch (System.Runtime.Remoting.RemotingException excep)
             {
            //So parar tirar o warning
            excep.Equals("");

            MMGCliente.EscreveLog("Nao foi possivel comunicar com esse Servidor... IP/Porto Errado?? ");
             }
        }