Вход

Просмотр полной версии : Загрузчик во FlashDevelop


Sintesis
09.08.2010, 17:20
Не знаю как сделать нормальный загрузчик в Флэш Дэвэлопе. Есть несколокь файлов разного формата в папке проэкта, нужно, что-б всё загрузилось, а потом отобразилось на экркне. Вот мой прелоадер:

package
{
import flash.display.*;
import flash.net.*;
import flash.events.*;
import flash.text.*;

[SWF (width = "800", height = "570", frameRate = "120", backgroundColor = "0xbdbfb6")]

public class SlimLoader extends Sprite {
private var genLoader:Loader;
private var storiload:TextField;

public function SlimLoader() {

createLoader();
createIndicator();

load(new URLRequest("project.swf"));

}

private function createLoader():void {
genLoader = new Loader();
genLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progGen);
genLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeGen);
genLoader.contentLoaderInfo.addEventListener(Event.INIT, initGen);
}

private function createIndicator():void {
storiload = new TextField();
storiload.autoSize = TextFieldAutoSize.LEFT;
storiload.selectable = false;
storiload.text = "LOADING...";
}

private function load(urlRec:URLRequest):void {
genLoader.load(urlRec);
if (!contains(storiload)) {
addChild(storiload);
}
}

private function progGen(e:ProgressEvent):void {
storiload.text = "LOADING..." + Math.floor(e.bytesLoaded / 1024) + "/" + Math.floor(e.bytesTotal / 1024) + "KBt";
}

private function initGen(e:Event):void {
//addChild(genLoader.content);
}

private function completeGen(e:Event):void {
removeChild(storiload);
addChild(genLoader.content);

}
}
}


Но он к сожалению загружает только файл project.swf и помещает его на stage, дальше догружаются все элементы входящие в project.swf. Нужно, что-б все элементы загрузились, а потом уже отображались. Где-то читал, что нужно всё упаковать в SWC библиотеку, а потом грузить. Обьясните пожалуйста как это организовать.

Добавлено через 10 часов 52 минуты
Так библиотеку SWC на Flash Develop создал, но пока только .as файлы могу в неё добавлять. Нужно ещё разобраться как добавит туда .jpg и .dae но это уже завтра, фух как поздно уже...

Добавлено через 24 часа 36 минут
Ох ну никак.
Подскажите пожалуйста как встроить изображение в SWC библиотеку.
Есть .xml файл настройки компиляции swc, вот его содержимое:

<?xml version="1.0" encoding="utf-8"?>
<flex-config>
<compiler>
<external-library-path>
<path-element>@flex.sdk.dir@/frameworks/libs/player/10.0/playerglobal.swc</path-element>
</external-library-path>
<source-path>
<path-element>@source.dir@</path-element>
</source-path>
</compiler>
<output>@output.dir@/@output.file@</output>
<include-classes>

</include-classes>
</flex-config>

Тут в пункте <include-classes> вставляем класс который нужно упаковать например
<class>Roll</class> здесь Roll является .as файлом. Компилпруем и всё в порядке swc готов. Но нужно ещё встроить в swc изображение fon.jpg но КАК? Помогите, разве никто этого не делал?

так, вписал в этот файлнастройки компиляции вот такое:
<include-file>
<name>fon.jpg</name> <path>D:/FLASH/aprcws/src/fon.jpg</path>
</include-file>

все скомпилпровалось без ошибок, но в swc библиотеке ничего не появилось, хотя размер её увеличился, гм странно!

Нет, не встраивается, эх что делать? :-(

Добавлено через 33 часа 45 минут
видимо без flash cs3 не обойтись

Добавлено через 54 часа 24 минуты
О, я тут два дня сам разговариваю!