Estoy haciendo un juego multiusario con AS3 y Smart Fox Server, en estos dias me econtre con un pequeño problema bien, para representar los avatares de los demas jugadores, en el evento onJoinRoom del cliente smartfox recorro la lista de usuarios de la sala y por cada uno creo un avatar disponible externamente como swf, lo que pasa es que cada vez que avanza en la lista de usuariosel el objeto loader espera a cargar el contenido pero el bucle continua encontrando asi objetos nulos.
Código :
public function onJoinRoom(evt:SFSEvent):void
{
var room:Room = evt.params.room as Room; //Para las propiedades de la sala
var userList:Object = room.getUserList(); //Lista de usuarios logeados en la sala
var avatares = new Array(); //Reinicializar el vector de avatares
setupMyAvatar();
lb_connStatus.text = "Logueado en la sala " + room.getId() + " como: " + miNombre;
for (var i:String in userList) {
//construyen la lista de los otros usuarios
var user:User = userList[i];
var uName:String = user.getName();
var uId:Number = user.getId();
if (uName!=miNombre)
{
//se agregan los demás jugadores que ya están en la sala excepto el original
var uVars:Object = user.getVariables(); //Coge las variables de usuario
miURL = new URLRequest("../Juegov1.0/personajes/miniaturas/personaje"+ uVars.ava +".swf");
auxX = uVars.px;
auxY = uVars.py;
auxName = uName;
ldURL2.load(miURL);
}
}
}cuando ingresa un usuario, a este solo le aparece el primer avatar en la lista, al segundo genera error.
El metodo que se ejecuta en el evento Complete del loader es el siguiente
Código :
public function completoOtro(evento:Event):void{
var SWF:MovieClip = ldURL2.getChildAt(0) as MovieClip;
var mc = new MovieClip();
mc = SWF["avatar"];
mc.stop();
mc.x = auxX;
mc.y = auxY;
avatares[auxName] = mc;
avatarMC.addChild(mc);
} Espero puedan ayudarme gracias
