Всем привет!
Юзаю стандартный прелоудер,который генерит флешдевелоп,
он начинает отображаться только с 70 процентов
оно и понятно (
но тут же нельзя медию положить на 3 кадр? или можно?
как советают в ксэцоы?
или как это сделать?

Код AS3:
package
{
import flash.display.Bitmap;
import flash.display.DisplayObject;
import flash.display.MovieClip;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.ProgressEvent;
import flash.text.TextField;
import flash.utils.getDefinitionByName;
import game.Media;
import game.Define;
import orlax.core.Utils;
import flash.text.TextFieldAutoSize;
import flash.display.BlendMode;
public class Preloader extends MovieClip
{
[Embed(source='../Build/lib/Loader.png')]
static public var loaderIMG:Class;
protected var loaderSPR:Sprite = null;
public function Preloader()
{
addEventListener(Event.ENTER_FRAME, checkFrame);
// show loader
this.graphics.beginFill(0xa0aaf7);
this.graphics.drawRect(0,0, Define.SCREEN_WIDTH, Define.SCREEN_HEIGHT);
this.graphics.endFill();
var spr:Sprite = new Sprite();
addChild(spr);
loaderSPR = spr;
spr.graphics.beginFill(0xffffff);
spr.graphics.drawRect(-1, -1, 253, 16);
spr.graphics.endFill();
spr.x = Define.SCREEN_WIDTH/2 - spr.width / 2;
spr.y = Define.SCREEN_HEIGHT/2 - spr.height / 2;
var img:Bitmap = new loaderIMG();
addChild(img);
img.x = Define.SCREEN_WIDTH/2 - img.width / 2;
img.y = Define.SCREEN_HEIGHT/2 - img.height / 2;
drawProgress(0);
}
private function drawProgress(prc:Number):void
{
loaderSPR.graphics.beginFill(0x374375);
loaderSPR.graphics.drawRect(-1, -1, 253 * prc, 16);
loaderSPR.graphics.endFill();
}
public function isUrl(urls:Array):Boolean
{
var domain:String = getUrl();
for (var i:int = 0; i < urls.length; i++)
{
if (domain == urls[i]) return true;
}
return false;
}
public function getUrl():String
{
var url:String = stage.loaderInfo.loaderURL;
var urlStart:Number = url.indexOf("://") + 3;
var urlEnd:Number = url.indexOf("/", urlStart);
var domain:String = url.substring(urlStart, urlEnd);
var LastDot:Number = domain.lastIndexOf(".") - 1;
var domEnd:Number = domain.lastIndexOf(".", LastDot) + 1;
domain = domain.substring(domEnd, domain.length);
return domain;
}
private function checkFrame(e:Event):void
{
// update loader
if (currentFrame == totalFrames)
{
removeEventListener(Event.ENTER_FRAME, checkFrame);
startup();
}
else
{
drawProgress((loaderInfo.bytesLoaded * 100 / loaderInfo.bytesTotal)/100);
}
}
private function startup():void
{
Media.load();
stop();
if (isUrl(["","flashgamelicense.com"]))
{
var mainClass:Class = getDefinitionByName("Main") as Class;
addChild(new mainClass() as DisplayObject);
}
else
{
var txt:TextField = new TextField();
txt.text = "[" + getUrl() + "]\nError: this URL not found";
txt.setTextFormat(Media.textFormatCenter);
txt.selectable = false;
txt.autoSize = TextFieldAutoSize.CENTER;
addChild(txt);
txt.scaleX = txt.scaleY = 2;
txt.x = Define.SCREEN_WIDTH / 2 - txt.width / 2;
txt.y = Define.SCREEN_HEIGHT / 2 - txt.height / 2;
//drawProgress(0.5);
txt.blendMode = BlendMode.INVERT;
}
}
}
}