Решение EventListeners
У вас есть GlobalEventListener (http://en.wikipedia.org/wiki/Singleton_pattern), который используется как в A.swf, так и в B.swf.
У вас естьcustomEvent, который расширяет Event и имеет возможность отправлять массивы.
package com
{
import flash.events.Event;
public class TransferrArray extends Event
{
public static const TRANSFERRING:String = 'transferring';
private var _array:Array;
public function TransferrArray(type:String, array:Array, bubbles:Boolean=false, cancelable:Boolean=false)
{
super(type, bubbles, cancelable);
_array = array;
}
public function get array ():Array
{
return _array;
}
}
}
в B.swf, куда вы помещаете:
GlobalEventListener.addEventListener ( TransferrArray.TRANSFERRING, handleTransfer )
private function handleTransfer ( e : TransferrArray) : void
{
e.array // <- do what you need with it
}
в A.swf по адресумомент, когда ваши массивы готовы к передаче:
GlobalEventListener.dispatchEvent ( new TransferrArray ( TransferrArray.TRANSFERRING, [your,arrays,needed,for,b] );
Прямой анализ
B.swf должен иметь (основной класс B.swf) некоторые:
public function transferrArrays ( array : Array )
в A.swf после загрузки B.swf и готовности ваших массивов к передаче:
BSWFLoader.content["transferrArrays"] ( [your,arrays,needed,for,b] );