Добрый день! Есть такой вопрос по конфликту классов с одинаковыми именами. Есть ролик-загрузчик (loader.swf). Есть ролики app1.swf и app2.swf, у которых в первом кадре создаётся объект класса Model. А именно:

Код:
import app.Model;
var model:Model = new Model();
model.init();
Код этот одинаков и в том ролике и в другом.
А вот ниже приведён код класса Model для app1.swf:

Код:
class app.Model {
function Model() {
}
public function init():String {
return "This is application 1. Initialization is done.";
}
}
Ниже приведён код класса Model для app2.swf:

Код:
class app.Model {
function Model() {
}
public function init():String {
return "This is application 2. Initialization is done.";
}
}
Ниже представлен код единственного кадра ролика-загрузчика:

Код:
var loader_mc:MovieClip = _root.createEmptyMovieClip("loader_mc", _root.getNextHighestDepth());
loader_mc._x = 100;
loader_mc._y = 140;
btn1.onRelease = function():Void {
_root.mcLoader.unloadClip();
_root.mcLoader.loadClip("app1/app1.swf", _root.loader_mc);
}
btn2.onRelease = function():Void {
_root.mcLoader.unloadClip();
_root.mcLoader.loadClip("app2/app2.swf", _root.loader_mc);
}
var mcLoader:MovieClipLoader = new MovieClipLoader();
mcLoader.addListener(this);
function onLoadInit(mc:MovieClip) {
_root.app_txt.text = mc.model.init();
}
Загрузчик после загрузки отображает у себя в текстовом поле строку из загруженного ролика, путём вызова его функции init(). То есть для app1.swf это строка "This is application 1. Initialization is done.", а для app2.swf это "This is application 2. Initialization is done."
Так вот. Если ролик-загрузчик сначала загружает app1.swf, то в текстовом поле правильно отображается значение из его класса Model, то есть "This is application 1. Initialization is done." Теперь, если его выгрузить и загрузить app2.swf, то в текстовое поле по-прежнему подставляется значение "This is application 1. Initialization is done.", а не "This is application 2. Initialization is done." из класса Model у ролика app2.swf.
И обратная ситуация после перезапуска loader.swf: если сначала загрузить app2.swf - после его выгрузки и загрузки app1.swf, остаётся значение из класса Model ролика app2.swf.
Я знаю, что в AS3 такую проблему решали как-то через указание ApplicationDomain, а вот для AS2 вообще не знаю что делать. Причём та же штука у меня происходит и с линкованными на классы с одинаковыми именами и пакетами мувиками в библиотеке загружаемых роликов - то есть эти мувики начинают вести себя как предидущие ролики, у которых имена/пути классов одинаковые. Пока что приходится менять имена некоторых пакетов, но это, как мне кажется, не выход. Если кто-то знает, как решить эту проблему, очень прошу помочь!