Código ActionScript :
var intervalo:Number; var imagenes_arr:Array = new Array(); var arrayPosicion:Array = new Array(); imagenes_arr.push("uno_mc"); imagenes_arr.push("dos_mc"); imagenes_arr.push("tres_mc"); imagenes_arr.push("cuatro_mc"); imagenes_arr.push("cinco_mc"); //Creamos las imagenes del memorama crear(imagenes_arr,"tapa_mc"); //Creamos los duplicado de las imagenes del memorama crear(imagenes_arr,"tapa_mc"); //Ordenamos todas las imagenes de forma aleatoria ordenar(); function crear(img_arr:Array, tapa_str:String) { var aux:MovieClip; var nom:String; for (var i in img_arr) { nom = (this["mem"+i] == undefined) ? "mem"+i : "cop"+i; aux = this.createEmptyMovieClip(nom, this.getNextHighestDepth()); aux.e = true;//Estado tapado aux.t = tapa_str;//id de biblioteca de la tapa aux.f = img_arr[i];//id de biblioteca de la imagen aux.i = i; aux.attachMovie(aux.t,"art",0); aux.onRelease = function(Void):Void { this.cambio(); this._parent.verificar(this); }; aux.cambio = function(Void):Void { this.e = !this.e; this.attachMovie(this.e ? this.t : this.f,"art",0); }; } } function verificar(aux:MovieClip):Void { for (var i in this) { if (this[i] != aux && this[i].onRelease != undefined) { if (aux.i == this[i].i && !this[i].e) { delete aux.onRelease; delete this[i].onRelease; completo(); break; } else if (!this[i].e) { for (var j in this) { this[j].enabled = false; } intervalo = setInterval(this, "fallo", 500, this[i], aux); break; } } } } function ordenar(Void):Void { for (var i in this) { this[i]._x = (this[i]._width+10)*this[i].i; this[i]._y = (i.substr(0, 3) == "cop") ? this[i]._width+10 : 0; } } function fallo(aux1:MovieClip, aux2:MovieClip) { clearInterval(intervalo); for (var i in this) { this[i].enabled = true; } aux1.cambio(); aux2.cambio(); } function completo(Void):Void { for (var i in this) { if (this[i].onRelease) { return; } //Aqui incia el codigo de lo que pasa si ganaste } trace("GANASTE"); } // function arreglos(arr) { trace(arr); } function randomizarArray(arreglo) { var m = arreglo.length-1; for (i=m; i>1; i--) { alea = Math.floor(i*Math.random()); temp = arreglo[i]; arreglo[i] = arreglo[alea]; arreglo[alea] = temp; } } function ranRango(min:Number, max:Number):Number { var randomNum:Number = Math.floor(Math.random()*(max-min+1))+min; return randomNum; }
Mis dos problemas son: el random de las cartas y dos ahi tengo 5 mc atacchados pero estos deben ser 16 y estos se siguen derecho en dos filas como puedo ordenarlas de 4 en 4
Saludos