Показать сообщение отдельно
Старый 31.10.2011, 12:00
StasMIX вне форума Посмотреть профиль Отправить личное сообщение для StasMIX Найти все сообщения от StasMIX
  № 5  
Ответить с цитированием
StasMIX
 
Аватар для StasMIX

Регистрация: Aug 2008
Адрес: Украина, город Херсон
Сообщений: 50
Отправить сообщение для StasMIX с помощью ICQ
Игра уже довольно большая, весь код писать нету смысла, но постараюсь все моменты связанные с этой библиотекой выложить:
Создание:
Код AS3:
lib = new library();
lib.addEventListener('libraryLoadComplite', gameStart);
А вот сам код загрузки библиотеки.
Код AS3:
//начало загрузки библиотеки
public function library():void {
	load(url);//загрузка txt файла с путями ко всем элементам библиотеки 
	addEventListener(Event.COMPLETE, loadElements);
}
//загрузка элементов
private function loadElements(e:Event):void {
	libraryURL=this.data.split('\n');//создается масив url адресов
	for (i=0; i<libraryURL.length; i++) {//проход по всем url адресам
		libraryURL[i]=libraryURL[i].substring(0,libraryURL[i].length-1);//так-как все элементы в файле написанны с новой строчки, удаляем последний символ пробела в каждом url
		url.url=libraryURL[i];//задаем url загружаемого файла
		libraryContent[i]= new Loader();//в массив, который в последствии и будет содержать ByteArray-и
		libraryContent[i].load(url);//загружаем
		libraryContent[i].contentLoaderInfo.addEventListener(Event.COMPLETE, counter);
	}
	function counter(e:Event):void {//функция вызывается при загрузке каждого элемента, тоесть столько раз, сколько было элементов
		j++;//счетчик сколько элементов загружено
		if (j==libraryURL.length) {//если кол загруженых элементов равно числу всех элементов то делать:
			for (i=0; i<libraryURL.length; i++) {//перебираем все элементы
				libraryContent[i]=libraryContent[i].contentLoaderInfo.bytes;//каждому из этих элементов присваиваем ByteArray
			}
			dispatchEvent(libraryLoadComplite);//событие конец загрузки
		}
	}
}
Пример использования приводил выше.
__________________
Я не злопамятный, я запишу