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

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

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

Регистрация: Apr 2012
Адрес: dp.ua
Сообщений: 8
Question постепенное добавление объектов из массива

доброе время суток)))
есть загвоздка: при каждом нажатии клавиши необходимо появление на сцене нового объекта из массива(точнее, не нового объекта, а новой его копии)... так вот, беда в том, что новая копия появляется, а старая - исчезает, чего совсем не надобно. подскажите, что делать???
заранее благодарен )))

Старый 06.04.2012, 21:52
illuzor вне форума Посмотреть профиль Отправить личное сообщение для illuzor Найти все сообщения от illuzor
  № 2  
Ответить с цитированием
illuzor
 
Аватар для illuzor

Регистрация: Dec 2010
Адрес: Ярославль
Сообщений: 1,255
Что ещё за копия?
Похоже, вы сталкиваетесь с тем, что один и тот же экземпляр не может быть добавлен в displayList больше одного раза. Нужно создавать разные экземпляры

Старый 06.04.2012, 22:00
danvaman вне форума Посмотреть профиль Отправить личное сообщение для danvaman Найти все сообщения от danvaman
  № 3  
Ответить с цитированием
danvaman

Регистрация: Apr 2012
Адрес: dp.ua
Сообщений: 8
похоже, я сталкиваюсь с тем, что копии объекта вылезают на сцену либо все сразу, сколько их есть в массиве, либо по одному, но не остаются на сцене... )))

Старый 06.04.2012, 22:02
TanaTiX вне форума Посмотреть профиль Отправить личное сообщение для TanaTiX Найти все сообщения от TanaTiX
  № 4  
Ответить с цитированием
TanaTiX
 
Аватар для TanaTiX

блогер
Регистрация: Feb 2008
Сообщений: 1,453
Записей в блоге: 4
Похоже вы сталкиваетесь с ситуацией отсутствия телепатов. Код должен прояснить ситуацию.
__________________
Ну все, теперь Забава м-о-я.
Гы-гы, а корабль мой!

Старый 06.04.2012, 22:21
danvaman вне форума Посмотреть профиль Отправить личное сообщение для danvaman Найти все сообщения от danvaman
  № 5  
Ответить с цитированием
danvaman

Регистрация: Apr 2012
Адрес: dp.ua
Сообщений: 8
на данном этапе код выглядит так:

var kall:Array=new Array();
for (var k=0;k<11 * 8;k++)
{
var kaka:Kaka=new Kaka();
kaka.x=col* Math.floor(Math.random()* 11)+25;
kaka.y=raw* Math.floor(Math.random()* 8)+20;

kall.push(kaka);
}
stage.addEventListener(KeyboardEvent.KEY_DOWN, addKall);
function addKall(e:KeyboardEvent):void
{
for(var k:uint=0;k<11* 8;k++)
{
kaka.y=raw* Math.floor(Math.random()* 8)+20;
kaka.x=col* Math.floor(Math.random()* 11)+25;
addChild(kaka);
kall.push(kaka);
}
}

Старый 06.04.2012, 22:49
TanaTiX вне форума Посмотреть профиль Отправить личное сообщение для TanaTiX Найти все сообщения от TanaTiX
  № 6  
Ответить с цитированием
TanaTiX
 
Аватар для TanaTiX

блогер
Регистрация: Feb 2008
Сообщений: 1,453
Записей в блоге: 4
Это ад. Да еще и без форматирования.
По сабжу переменная kall содержит в себе один объект - тот, который был последним в 1м цикле создан, она же добавляется на сцену несколько раз, как правильно заметил illuzor, только с поправкой на добавление, а не создание, и она же потом повторно заносится в массив.
__________________
Ну все, теперь Забава м-о-я.
Гы-гы, а корабль мой!

Старый 06.04.2012, 23:06
danvaman вне форума Посмотреть профиль Отправить личное сообщение для danvaman Найти все сообщения от danvaman
  № 7  
Ответить с цитированием
danvaman

Регистрация: Apr 2012
Адрес: dp.ua
Сообщений: 8
возможно ли сделать, чтоб эта переменная добавлялась по одному экземпляру по каждому нажатию клавиши, и оставалась на сцене???

Старый 06.04.2012, 23:09
TanaTiX вне форума Посмотреть профиль Отправить личное сообщение для TanaTiX Найти все сообщения от TanaTiX
  № 8  
Ответить с цитированием
TanaTiX
 
Аватар для TanaTiX

блогер
Регистрация: Feb 2008
Сообщений: 1,453
Записей в блоге: 4
Завести счетчик и брать объект по индексу из массива.
Код AS3:
if(index<kall.length){
   addChild(kall[index]);
   index++;
}
__________________
Ну все, теперь Забава м-о-я.
Гы-гы, а корабль мой!

Старый 06.04.2012, 23:33
danvaman вне форума Посмотреть профиль Отправить личное сообщение для danvaman Найти все сообщения от danvaman
  № 9  
Ответить с цитированием
danvaman

Регистрация: Apr 2012
Адрес: dp.ua
Сообщений: 8
все то же самое получается... либо все сразу вылазят, либо по одной, но после нажатия клавиши предыдущая исчезает...

Старый 06.04.2012, 23:40
strangedk вне форума Посмотреть профиль Отправить личное сообщение для strangedk Найти все сообщения от strangedk
  № 10  
Ответить с цитированием
strangedk
 
Аватар для strangedk

Регистрация: Oct 2010
Адрес: Харьков
Сообщений: 616
Записей в блоге: 1
Отправить сообщение для strangedk с помощью ICQ Отправить сообщение для strangedk с помощью Skype™
Код в порядок приведите, потом посмотрим.


официальный naming convention, для начала
__________________
adobe AS3 manual

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

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

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


 


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


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