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

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

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

Регистрация: Aug 2010
Сообщений: 282
По умолчанию Шлейф за объектом

Всем привет,
Пытаюсь сделать шлейф за движущимся объектом (не за мышью - хотя какая разница)
на главной сцене код создающий "детей" объекта с классом shlejf (мувик в библиотеке)
Код AS3:
addEventListener(Event.ENTER_FRAME,loop);
 
function loop(e:Event):void{
 
        var shlejf_obj:shlejf = new shlejf();
	this.addChild(shlejf_obj);
 
	shlejf_obj.x=obj.x;
	shlejf_obj.y=obj.y;
 
	obj.x+=3;
}
Как мне постепенно удалять ненужные мувики ("детей") из шлейфа

Пробую делать через removeChild, на последнем кадре в shlejf`e пишу
Код AS3:
removeChild(DisplayObject(this));
выдает ошибку про нулевой объект, как превозмочь?

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

Регистрация: Feb 2012
Сообщений: 1,540
Код AS3:
removeChild(DisplayObject(this));
Хм... удалить себя из себя?
Может, так? (если в самом шлейфе)
Код AS3:
parent.removeChild(this);
Или так? (если в главном классе)
Код AS3:
removeChild(shlejf);
Кстати, переименуй shlejf в plume, ну или в другое английское слово, а то ужас...

Старый 13.03.2013, 18:53
vivado вне форума Посмотреть профиль Отправить личное сообщение для vivado Найти все сообщения от vivado
  № 3  
Ответить с цитированием
vivado

Регистрация: Aug 2010
Сообщений: 282
Ругается
"Не удается вызвать свойство или метод со ссылкой на объект "null"

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

Регистрация: Feb 2012
Сообщений: 1,540
Цитата:
"Не удается вызвать свойство или метод со ссылкой на объект "null"
На какое свойство ругается?

Старый 13.03.2013, 18:57
vivado вне форума Посмотреть профиль Отправить личное сообщение для vivado Найти все сообщения от vivado
  № 5  
Ответить с цитированием
vivado

Регистрация: Aug 2010
Сообщений: 282
на последний кадр в объекте shlejf на котором "parent.removeChild(this);"

TypeError: Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null".
at shlejf/frame40()

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

Регистрация: Oct 2010
Адрес: Харьков
Сообщений: 616
Записей в блоге: 1
Отправить сообщение для strangedk с помощью ICQ Отправить сообщение для strangedk с помощью Skype™
Цитата:
Сообщение от vivado Посмотреть сообщение
на последний кадр в объекте shlejf на котором "parent.removeChild(this);"
Если код уж в кадрах, то он должен быть в одном кадре.
Код из одного кадра не знает что происходит с кодом из другого кадра.
__________________
adobe AS3 manual

Старый 14.03.2013, 04:10
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 7  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Цитата:
Код из одного кадра не знает что происходит с кодом из другого кадра.
Не совсем так.
Если вы в первом кадре напишите var a:int = 5; а в 5 кадре сделаете trace(5) то получите 5 - без вариантов Там немного своя система, еще до конца не изученная на 100%. Например, если маска сделанная в IDE динамическая, то есть с каждым кадром меняется, то некоторые действия кода - могут отменяться при наступлении след кадра. Сейчас на пальцах это объяснить сложно - но проблема существует и оч болшая
__________________
Марк Tween

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

блогер
Регистрация: Sep 2011
Адрес: Москва
Сообщений: 533
Записей в блоге: 4
плюс к вышесказанному, прежде чем использовать строчку
Код AS3:
parent.removeChild(this);
я бы еще проверил чему равен parent

Старый 14.03.2013, 11:08
vivado вне форума Посмотреть профиль Отправить личное сообщение для vivado Найти все сообщения от vivado
  № 9  
Ответить с цитированием
vivado

Регистрация: Aug 2010
Сообщений: 282
Цитата:
Сообщение от PainKiller Посмотреть сообщение
плюс к вышесказанному, прежде чем использовать строчку
Код AS3:
parent.removeChild(this);
я бы еще проверил чему равен parent
вывел парент через трейс - [object MainTimeline]

На AS2 делал так:
Добавлял на сцену дубликат MovieClip, а потом строчкой в самом клипе
удалял его parent.removeMovieClip(this);
а с addChild это не прокатывает

Блин вроде бы простейшая задача - а не все так просто оказалось )))

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

модератор форума
Регистрация: May 2001
Адрес: Одесса
Сообщений: 4,869
Записей в блоге: 4
Цитата:
Сообщение от in4core Посмотреть сообщение
Если вы ... в 5 кадре сделаете trace(5) то получите 5 - без вариантов
Внезапно.
__________________
Поймай яблоко 2!

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

Теги
шлейф AS3
Опции темы
Опции просмотра

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

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


 


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


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