Я сделал ловушку, и у меня есть swf-файл. В другом флэш-проекте я хочу называть это swf. Я создал кнопку и написал коды ниже.AS3 Linking-Loading Another Swf File
btnn.addEventListener(MouseEvent.CLICK, fl_ClickToLoadUnloadSWF_4);
import fl.display.ProLoader;
var fl_ProLoader_4:ProLoader;
var fl_ToLoad_4:Boolean = true;
function fl_ClickToLoadUnloadSWF_4(event:MouseEvent):void
{
if(fl_ToLoad_4)
{
fl_ProLoader_4 = new ProLoader();
fl_ProLoader_4.load(new URLRequest("CathingGame.swf"));
addChild(fl_ProLoader_4);
}
else
{
fl_ProLoader_4.unload();
removeChild(fl_ProLoader_4);
fl_ProLoader_4 = null;
}
fl_ToLoad_4 = !fl_ToLoad_4;
}
Но когда я нажимаю кнопку, у меня есть ошибка ниже. Какие могут быть возможные решения? Я думаю, что у меня есть эта ошибка, потому что в игре для ловли моя fla и actionscript находятся в другом файле. Я имею в виду, что я использую внешний файл .as. Не в файле fla.
С 'if (fl_ToLoad_4)' вы пытаетесь проверить, если его ** null ** или если это ** false **. Ваш оператор 'Else' определенно делает его нулевым и к тому времени, когда вы попытаетесь выполнить' fl_ToLoad_4 =! Fl_ToLoad_4; 'его слишком поздно. Наконец, для 'fl_ProLoader_4.load' требуется ** eventListener ** для завершения игровой нагрузки (обрабатывается все байты). в ** событии полная ** функция - это то, где вы можете добавить к сцене. Здесь вы добавляете что-то еще, что еще не существует для Flash Player ... –
Спасибо, я решил проблему, перемещая коды внутри файла fla. Затем он работал как шарм. Я не пытался называть swf. Я не мог справиться с этим. –