|
|
|||||
Прелоудер и Flashdevelop
Добрый день!
Только что перешел на новый стиль разработки. Flash IDE использую только для генерации SWC-библиотеки, весь код пишу в FlashDevelop. Итак, создал в ФД проект с прелоудером, вот что у меня в классе Main: private var preloader:MovieClip; private var loader:Loader = new Loader; public function Main():void { if (stage) init(); else addEventListener(Event.ADDED_TO_STAGE, init); } private function init(e:Event = null):void { removeEventListener(Event.ADDED_TO_STAGE, init); instance = this; loader.load(new URLRequest(Settings.host+"Preloader1.swf")); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onPreloaderLoaded); } private function onPreloaderLoaded(e:Event):void{ preloader = e.currentTarget.content; addChild(preloader); addEventListener(Event.ENTER_FRAME, onFrame); } private function onFrame(e:Event):void{ preloader.count = stage.loaderInfo.bytesLoaded/stage.loaderInfo.bytesTotal*100; if (stage.loaderInfo.bytesLoaded==stage.loaderInfo.bytesTotal&&preloader.preloader.logo.currentFrame==preloader.preloader.logo.totalFrames){ removeEventListener(Event.ENTER_FRAME, onFrame); removeChild(preloader); GameInitializer.init(); } } http://artgoldau.com/work/casino/crazystarterflash/ Я попробовал вставить скомпиленную флешку в свой обычный html-файл, но тогда флешка вообще не открывается, висит все время белым экраном. Такое ощущение что ФД как-то посмоему компилит и особо встраивает флешку в html. Как тогда в вообще потом верстать страницы с моей флешкой? Помогите, пожалуйста, разобраться. |
|
|||||
А это не наблюдали?
Цитата:
__________________
Ну все, теперь Забава м-о-я. Гы-гы, а корабль мой! |
|
|||||
нет, не наблюдал. я кое с чем разобрался, со всем вылетело из головы, что я создавал не проект с прелоудером а обычный AS3 проект. исправил, теперь у меня класс main и preloader.as. Main совершенно обычный, ни чем не выдающийся:
[Frame(factoryClass="Preloader")] public class Main extends MovieClip { public static var instance:Main; public function Main():void { if (stage) init(); else addEventListener(Event.ADDED_TO_STAGE, init); } private function init(e:Event = null):void { removeEventListener(Event.ADDED_TO_STAGE, init); instance = this; GameInitializer.init(); } } public function Preloader() { if (stage) { stage.scaleMode = StageScaleMode.NO_SCALE; stage.align = StageAlign.TOP_LEFT; } loader.load(new URLRequest(Settings.host+"Preloader1.swf")); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onPreloaderLoaded); } private function onPreloaderLoaded(e:Event):void { preloader = e.currentTarget.content; addChild(preloader); addEventListener(Event.ENTER_FRAME, checkFrame); loaderInfo.addEventListener(ProgressEvent.PROGRESS, progress); loaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioError); } private function ioError(e:IOErrorEvent):void { trace(e.text); } private function progress(e:ProgressEvent):void { preloader.count = stage.loaderInfo.bytesLoaded/stage.loaderInfo.bytesTotal*100; } private function checkFrame(e:Event):void { if (currentFrame == totalFrames) { stop(); loadingFinished(); } } private function loadingFinished():void { removeEventListener(Event.ENTER_FRAME, checkFrame); loaderInfo.removeEventListener(ProgressEvent.PROGRESS, progress); loaderInfo.removeEventListener(IOErrorEvent.IO_ERROR, ioError); removeChild(preloader); startup(); } private function startup():void { var mainClass:Class = getDefinitionByName("Main") as Class; addChild(new mainClass() as DisplayObject); } |
|
|||||
ммм.. круто.. информация показала что начинается только загрузка мувиклпа прелоудера, а дальше ничего не идет. метод onPreloaderLoaded не вызывается почему-то.. с локалки все нормально работает, с сервака не грузится..
|
|
|||||
поставил дебаг-плеер и выскочила-таки эта ошибка:
ReferenceError: Error #1056: Не удается создать свойство preloader в Preloader. at flash.display::Sprite/constructChildren() at flash.display::Sprite() at flash.display::MovieClip() at Preloader()[D:\works\Megatel\ENGINES\Slots\Crazy Starter\FLASH\src\Preloader.as:20] что же это может значит? причем локально все впорядке. |
Часовой пояс GMT +4, время: 19:09. |
|
« Предыдущая тема | Следующая тема » |
|
|