Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 07.02.2010, 16:19
Александр вне форума Посмотреть профиль Отправить личное сообщение для Александр Найти все сообщения от Александр
  № 1  
Ответить с цитированием
Александр
 
Аватар для Александр

Регистрация: Oct 2009
Сообщений: 148
Отправить сообщение для Александр с помощью ICQ
По умолчанию прелоудер на флеш девелоп, опаздыват (

Всем привет!
Юзаю стандартный прелоудер,который генерит флешдевелоп,

он начинает отображаться только с 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;
			}
		}
 
	}
 
}

Создать новую тему   Часовой пояс GMT +4, время: 15:23.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 15:23.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.