//Traemos la clase "Usuario" de la carpeta "ClabServer"
//Ten en cuenta que no es necesario poner la extensión .as
//Pero SI debes colocar las mayusculas y minusculas como se debe
import ClabServer.Usuario;
//Debemos frenar la linea de tiempo para que no salte automaticamente
stop();
/* INICIALIZACIÓN DE VARIABLES */
/*Creamos una instancia de la clase "Usuario", la que maneja el login
al chat*/
var user:Usuario = new Usuario();
/* EVENTOS DEL MOUSE */
//Este evento se ejecutara al darle click al boton entrar
entrar_btn.onRelease = function() {
/* Usamos el metodo "login" de la clase "Usuario", que nos pide 3
parametros; el primero es el nick del usuario, el segundo es,
la contraseña en caso de ser un usuario registrado (No es nuestro
caso) y el tercero es una variable que en "verdadero" significa que
sera un usuario anonimo, que en este caso, lo es */
user.login(nick_txt.text, "", true);
//Ponemos en "aviso_txt" el anuncio de carga mientras recibimos respuesta
aviso_txt.text = "Cargando . . . ";
};
/* EVENTOS DEL CLABSERVER */
//La clase "Usuario" tiene un evento llamado "onLogin", que devuelve una
//variable numerica llamada "respuesta"; esta cambiara de acuerdo a lo
//ocurrido en el login de un usuario determinado
user.onLogin = function(respuesta) {
//La instrucción "switch" nos permitira elegir entre varias opciones
//de repuesta
switch (respuesta) {
//Si el nombre de usuario ya esta en uso dentro del chat
case Usuario.EN_USO :
//Colocamos el aviso
aviso_txt.text = "El nick esta en uso";
//Limpiamos la caja de texto del nick
nick_txt.text = "";
//Salimos del switch
break;
//Si el nombre de usuario esta registrado en la DB del servidor
case Usuario.REGISTRADO :
aviso_txt.text = "El nick esta registrado";
nick_txt.text = "";
break;
//Si no hay ningun problema
case Usuario.OK :
//Continuamos al siguiente keyFrame
//Donde iniciara el proceso del chat
gotoAndStop(2);
break;
}
};
Y en el segundo keyframe; donde están los campos para la conversación, se coloca este código:
//Frenamos la linea de tiempo
stop();
//Importamos la clase "Servidor" del "ClabServer"
import ClabServer.Servidor;
/* INICIALIZACIÓN DE VARIABLES */
/*"chat" es la conexión al servidor; una instancia de la clase
"Servidor"; tiene 3 parametros, el primero es el usuario a
entrar, en nuestro caso, es la variable "user", el segundo
parametro sera la "sala de chat" a la que entraremos, que es
un numero de 0 a 64999; en nuestro caso, sera la sala 1 */
var chat = new Servidor(user, 1);
/* EVENTOS DEL BOTON */
// El evento que se ejecutara al dar click al boton "Enviar"
enviar_btn.onRelease = function() {
//Invocamos al metodo "enviar" de la clase "Servidor", cuyo
// parametro es el mensaje a enviar al chat
chat.enviar(mensaje_txt.text);
//limpiamos el campo del mensaje
mensaje_txt.text = "";
};
/* EVENTOS DEL CLABSERVER */
//El evento "onMensaje" se ejecuta cada vez que llega un mensaje
//nuevo al chat; por parametro recibe un objeto que contiene el
//nick y el mensaje del autor.
chat.onMensaje = function(mensaje:Object) {
//añadimos el mensaje junto con el nick al chat
chat_txt.text += "<"+mensaje.Nick+"> "+mensaje.Mensaje+"\n";
};
//El evento "onEntrada" se ejecuta al entrar un nuevo usuario
chat.onEntrada = function(userNuevo:Object) {
//Avisamos en el chat de la entrada del nuevo usuario
chat_txt.text += " * "+userNuevo.Nick+" ha entrado.\n";
};
//El evento "onSalida" se ejecuta al salir un usuario del chat
chat.onSalida = function(userViejo:Object) {
//Avisamos en el chat de la salida del usuario
chat_txt.text += "** "+userViejo.Nick+" ha salido.\n";
};