У меня есть проект, в котором пользователь может нажать любую из 5 клавиш клавиатуры, каждая из которых загружает отдельный файл .swf. Я хотел бы, чтобы любая клавиша, которую нажимает пользователь, выгружала бы то, что в данный момент играет swf, и загружала бы тот, который связан с нажатой клавишей.
У меня нет проблем с кодированием этого с двумя .swf - каждый загружает и одновременно выгружает другой - однако, когда я добавляю третий, он становится нестабильным, и третья функция removeChild не работает должным образом.
Казалось бы, проблема в том, что одновременно можно применить только один removeChild. Это можно обойти?
Код, который я использую, находится в кадре на основной временной шкале и не связан с контейнером, кроме сцены, на которую напрямую загружаются файлы swf:
var myLoader:Loader = new Loader();
var myRequest:URLRequest=new URLRequest("swf/darker.swf");
var Loader2:Loader = new Loader();
var Request2:URLRequest=new URLRequest("swf/animalinside.swf");
var Loader3:Loader = new Loader();
var Request3:URLRequest=new URLRequest("swf/berlin1.swf");
stage.addEventListener(KeyboardEvent.KEY_DOWN, Darker);
function Darker(e:KeyboardEvent):void {
if (e.charCode == 51) { //51=3
myLoader.load(myRequest);
addChild(myLoader);
removeChild(Loader2);
removeChild(Loader3);
}
}
stage.addEventListener(KeyboardEvent.KEY_DOWN, animalInside);
function animalInside(e:KeyboardEvent):void {
if (e.charCode == 52) { //52=4
Loader2.load(Request2);
addChild(Loader2);
removeChild(myLoader);
removeChild(Loader3);
}
}
stage.addEventListener(KeyboardEvent.KEY_DOWN, Berlin1);
function Berlin1(e:KeyboardEvent):void {
if (e.charCode == 53) { //53=5
Loader3.load(Request3);
addChild(Loader3);
removeChild(myLoader);
removeChild(Loader2);
}
}
Я пробовал добавить несколько экземпляров в removeChild()
скобках, например: removeChild(Loader3, Loader2, Loader4, ...);
, но это не сработало.
Укладка removeChild
тоже, похоже, не работает:
removeChild(myLoader);
removeChild(Loader2);
removeChild(Loader3);
//etc.
Не знаете, как действовать, любая помощь будет принята с благодарностью!
Заранее спасибо,
Llyfre