Tengo un array de de objetos propios SwfElement (adjunto una versión resumida de la clase). Básicamente funcionará como una estructura de datos...
Dentro de cada posición del Array tengo un objeto del tipo SwfElement, en el campo element previamente en otra case he cargado Swf's externos (sin problema). En cada posición hay un Mc distinto exceptuando en las 4 últimas que en este caso el Mc es el mismo
Resulta que quiero posteriormente recorrer el Array y añadirlo a un sprite que se añadirá posteriormente a la lista de visualización. Resulta que solo me añade y muestra los elementos no repetidos. He mirado de hacer una copia de los elementos ya contenidos al Sprite que los contiene, por si venía de ahí el problema y no hay manera. No lo entiendo porque las copias 'fisicas' de los clips existen en el array (debugando lo he comprobado)
Por favor, alguna solución?!?!?!? Garcias!
Código ActionScript :
var swfHolder : Sprite=new Sprite(); var currentSwf:swfElement; for(var i:int=0; i<swfArray.length; i++){ currentSwf=swfArray[i]; placeSwf(currentSwf); } private function placeSwf(_swf:swfElement):void{ var _swfCopy:SwfElement; if (swfHolder .contains(_swf.getElement())){ _swfCopy = new SwfElement(); _swfCopy = _swf; swfHolder .addChild(_swf.getElement()); }else { swfHolder .addChild(_swf.getElement()); } }
Código ActionScript :
public class SwfElement extends MovieClip { //Variables declaration private var screenPosition:Point;//it defines swf position on the screen public var element:MovieClip; //.... public function SwfElement():void { screenPosition = new Point(); element = new MovieClip(); } //------------------Getters & setters-------------------------------- public function getScreenPosition():Point { return(screenPosition); } public function setScreenPosition(_screenPosition:Point):void { //Save current position screenPosition.x = _screenPosition.x; screenPosition.y = _screenPosition.y; //Asign that position to the element element.x = screenPosition.x; element.y = screenPosition.y; } public function getElement():MovieClip { return element; } public function setElement(_element:MovieClip):void { element = _element; } }//end 'class'