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

Регистрация: Sep 2006
Сообщений: 43
По умолчанию Использование ссылок

Хочу сделать игру, где на игровом поле могут находиться элементы(картинки) определенных типов.

Создаю ассоциированный массив имя-[Loader].

Код:
var imageTypes:Array = new Array();
for each (var type:XML in imageTypeXML.element) {
	imageTypes[String(type.attribute("name"))]=new Loader();
	imageTypes[String(type.attribute("name"))].load(new URLRequest(String(type.attribute("src"))));
}

Создаю массив, состоящий из элементов класса displayElement:
Код:
var displayElements:Array = new Array();
for each (var element:XML in mapXML.element) {
	displayElements.push(new displayElement(
		imageTypes[String(element.cell.attribute("name"))],
			Number(element.cell.attribute("xc")),
			Number(element.cell.attribute("yc")),
			String(element.cell.attribute("href")),
			String(element.cell.label),
			String(element.cell.description)));
	}
}
Класс:
Код:
public class displayElement extends Sprite {
     ...
     private var picture:Loader = new Loader();
     public function displayElement(pict:Loader...):void {
        this.piture=pict;
        ...
     }
}
Далее позиционирую каждый элемент, состоящий из картинки и текстовой метки.
В результате каждая картинка определенного типа выводится только один раз, а текстовые метки выводятся в каждом элементе.
Почему? Можно ли передавать картинки по ссылке, и позиционировать только копию?