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

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

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

Регистрация: Jan 2011
Сообщений: 70
По умолчанию массив Спрайтов... как обратится по имени?

Добрый день.

Код AS1/AS2:
package 
{
//--skiped...	
 
	public  class Grid extends Sprite
	{
            private var Cells:Array= new Array(); //-- мой ненаглядный костылек...
             //.....
        public function addCells()
		{
 
			for (var j:uint=0;j < 5; j++){
				for (var i:uint=0; i < 5; i++) {
					var t:Sprite = new TSprite();  //   -- создаем спрайтик.
 
					this.addChild(t);  //-- привязываем его к сетке, чтобы он отображался.
					t.x = i*32;         //-- меняем координаты.
					t.y = j*32;
					t.z = -1;
					t.name = "cell"+j+"_"+i; //-- меняем имя
					Cells.push(t); //-- сохраняем в массив, Это я вынужден делать пока гетчаилд не заставил работать.
				}
			}
		}
 
		public function activateCell(x,y)
		{
			//-- и вот тут не могу придумать как обратиться к ячейке. :( 
			trace((getChildByName("Cell1_1") as TSprite).name);
		}
вот такой простенький код. на экране сетка из ячеек 5 на 5 чтук. По событию мне необходимо обновлять нужную ячейку. Например, центральную. Сейчас я пробегаю по всему массиву пока не найду нужное имя, но это капец костыль. Как бы заставить getChildByName возвращать нужный мне объект... или как вообще принято хранить двумерные ячейки во флеше?

Не пулять памидорками - поставил флакс в этом году только. Не успел прочитать все, что понаписано в интернете ))

Старый 03.01.2011, 17:17
Zebestov вне форума Посмотреть профиль Отправить личное сообщение для Zebestov Посетить домашнюю страницу Zebestov Найти все сообщения от Zebestov
  № 2  
Ответить с цитированием
Zebestov
Lorem ipsum
 
Аватар для Zebestov

модератор форума
Регистрация: May 2001
Адрес: Одесса
Сообщений: 4,869
Записей в блоге: 4
Код AS3:
public function activateCell(x,y)
{
	trace((Cells(y*5 + x) as TSprite).name);
}
__________________
Поймай яблоко 2!

Старый 03.01.2011, 17:29
flax4Noob вне форума Посмотреть профиль Отправить личное сообщение для flax4Noob Найти все сообщения от flax4Noob
  № 3  
Ответить с цитированием
flax4Noob

Регистрация: Jan 2011
Сообщений: 70
эхъ, как тяжка после нормального пыха тут калупацца))) Понял, пасипа.

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

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

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


 


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


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