estoy haciendo un juego online, primero lo que quiero hacer es actualizar la cantidad de conectados.
Ccuando abris el archivo swf, verifica si hay alguien conectado examinando si hay elementos en el array: personajes, si no hay elementos o no existe, crea el array: personaje Y como elemento: Mipersonaje (con nombre y posicion)
luego suma 1 a la cantidad de personajes.
Si otro mas se conecta, se le agrega otro elemento al array (con los datos del jugador) esto funciona correctamente, lo que no se como hacer es como borrar el elemento del array cuando el usuario se desconecta.
El problema no es borrar, sino como detectar que cerro el juego, nose si se entiende?
Si se de alguna forma, qué personaje se fue, podria borrar el elemento que corresponde, pero nose como averiguarlo.
Este es el codigo que uso:
Código actionscript:
Ver original
import mx.utils.Delegate; _root.personaje.posx = 10 var nc:NetConnection = new NetConnection(); nc.connect("rtmp://localhost/oflaDemo"); var so:SharedObject = SharedObject.getRemote("luco", nc.uri, true); so.connect(nc); cpersonajes = so.data.personajes.length if (cpersonajes==undefined){ so.data.personajes = new Array() cpersonajes=1 mipersonaje=0 } else { mipersonaje = cpersonajes cpersonajes = cpersonajes + 1 } so.data.personajes[mipersonaje] = new Object so.data.personajes[mipersonaje].nombre = _root.nombre so.data.personajes[mipersonaje].posx = _root.personaje.posx so.data.personajes[mipersonaje].posy = _root.personaje.posy so.data.cpersonajes = cpersonajes function onEnterFrame() { if(_root.mueve){ so.data.personajes[mipersonaje].posx = _root.personaje.posx so.data.personajes[mipersonaje].posy = _root.personaje.posy } _root.personaje._x = so.data.personajes[mipersonaje].posx _root.personaje._y = so.data.personajes[mipersonaje].posy recibe.text = so.data.prueba }
espero que me puedan ayudar y gracias! :D