Показать сообщение отдельно
Старый 21.01.2015, 03:05
neonoviiwolf вне форума Посмотреть профиль Отправить личное сообщение для neonoviiwolf Найти все сообщения от neonoviiwolf
  № 4  
Ответить с цитированием
neonoviiwolf

Регистрация: Jun 2014
Сообщений: 558
expl спасибо большое за объяснение
"универсальный" для моего приложения, у меня в пуле будут либо спрайты, либо мувики, соответственно выбрал мувик.
Меня интересовала, как из класса в класс переслать мувик и наделать его экземпляров, тем самым получить пул, в который я смогу отправить нужный мувик, пулов мне понадобиться около 5-7, вот и заморочился, так то я быстро сделаю для каждого отдельный пул, но хочется красоты)

Добавлено через 1 час 2 минуты
Код AS3:
package package_cl{
	import flash.display.MovieClip;
	import flash.events.Event;
 
	public class Vector_Pool_cl {
		public var vectorPool: Vector.<MovieClip> = new Vector.<MovieClip>;
		private var lengthVector: int;
		private var movieClip: MovieClip;
 
		public function Vector_Pool_cl(_lengthVector: int, _movieClip: MovieClip) {
			lengthVector = _lengthVector;
			movieClip = _movieClip;
			var i = lengthVector;
			while (--i > -1){
				vectorPool.push(movieClip); //как тут создать экземпляр класс? Используя параметры этой функции
			}
		}
		public function fn_push_pool (i):void{
			vectorPool.push(vectorPool[i]);
 
		}
		public function fn_add_pool ():void{
			var vectorMovieClip = movieClip;
			vectorPool.push(vectorMovieClip);
		}
	}
}
Добавлено через 1 час 46 минут
в общем решение нашёл такое, хотя есть вопрос, код до конца не понимаю
Код AS3:
package package_cl{
	import flash.display.MovieClip;
	import flash.events.Event;
	import flash.utils.*; 
 
	public class Vector_Pool_cl {
		public var vectorPool: Vector.<MovieClip> = new Vector.<MovieClip>;
		private var lengthVector: int;
		private var movieClip: MovieClip;
 
		public function Vector_Pool_cl(_lengthVector: int, _movieClip: MovieClip) {
			lengthVector = _lengthVector;
			movieClip = _movieClip;
			var i = lengthVector;
//*********************************************************
			var movieClipDef:Class = MovieClip(movieClip).constructor; 
//что мы тут делаем, объясните подробно, кому не сложно,
// что происходит, после объявления типа класс
//мы в итоге получаем экземпляр класса?
//************************************************************
			while (--i > -1){
				var movieClipView = new movieClipDef ();
				vectorPool.push(movieClipView);
			}
		}
		public function fn_push_pool (i):void{
			vectorPool.push(vectorPool[i]);
 
		}
		public function fn_add_pool ():void{
			var movieClipDef:Class = MovieClip(movieClip).constructor;
			var movieClipView = new movieClipDef ();
			vectorPool.push(movieClipView);
		}
	}
}


Последний раз редактировалось neonoviiwolf; 21.01.2015 в 04:59.