Показать сообщение отдельно
Старый 07.05.2009, 01:49
Hina вне форума Посмотреть профиль Отправить личное сообщение для Hina Найти все сообщения от Hina
  № 1  
Ответить с цитированием
Hina

Регистрация: Feb 2007
Сообщений: 29
По умолчанию Как приостановить выполнение скрипта?

Здравствуйте уважаемые флэшеры. Возникла необходимость загрузить ресурс внутри функции и вернуть результат из функции только когда загрузка завершена (удачно или неудачно). Надеялся что можно сделать как то так:
Код AS3:
package 
{
	import flash.display.*;
	import flash.events.*;
	import flash.net.URLRequest;
	public class ClipLoader
	{
		private var ldr:Loader;
		private var url:URLRequest;
		public var mc:MovieClip;
		private var _result:Number;
		public function ClipLoader(path:String, _mc :MovieClip){
			mc = _mc;
			ldr = new Loader();
			url = new URLRequest(path);
			_result = 0;
		}
		public function loadResource(){
			ldr.load(url);
			ldr.contentLoaderInfo.addEventListener(Event.COMPLETE,  loadComplete);
			ldr.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loadError);
			while (_result == 0){ /*вот здесь хотелось бы что то вроде функции sleep(1000), как в C++*/;}
 
			return _result;
		}
		private function loadComplete(event:Event){	mc.addChild(ldr); _result = 1;}
		private function loadError(event:IOErrorEvent){	_result = -1;}
 
	}
}
Но видимо в флеше нет функции подобной сишной sleep. Читал в хелпе по классу Timer но это видимо не мой случай, или я недопонял. Честно говоря я в растеряности. Посоветуйте что нибудь =)