![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: May 2012
Сообщений: 166
|
Здравствуйте.
Всем наверняка знакомы циферки жизни вылетающие из врагов если по ним бьют... вот это цель которую я никак не могу достичь уже неделю.. вся загвоздка в том что для экземпляров класса врага addChild любого MovieClip'а будит производится только 1 раз(вылетит 1 объект 1 раз). И не понятно как текстовое поле которое в последствии будит принимать значение переменной внедрить в код. Ищу любую помощь по этому вопросу. Заранее спасибо. |
|
|||||
|
Регистрация: May 2012
Сообщений: 166
|
Не знаю, вот элемент кода где прописан addChild на ряду с trace, который выводится многократно.
Последний раз редактировалось iNils; 22.05.2012 в 22:30. |
|
|||||
removeEventListener (Event.ENTER_FRAME , hPC); hPT=hP; addEventListener (Event.ENTER_FRAME , hPC); у вас каждый раз addChild(sw) происходит, зачем это? просто добавьте однажды sw, и обновляйте через sw.text = "...";
__________________
adobe AS3 manual |
|
|||||
|
Регистрация: May 2012
Сообщений: 166
|
С задачей справился... но вот как раз вопрос про addChild остался, вроде бы по другому никак не получится создать всплывающий текст для разных экземпляров класса. Ведь надо по каждому событию что бы появлялась табличка с числом. Если я что то не так понял поправьте.
Вопрос у меня касательно оптимизации процесса, я так понимаю все созданные Child'ы никуда не пропадают.. просто по завершению ролика последний кадр текстового поля с строчкой stop(); прекращает воспроизведение. Как же по убирать накопившиеся Child'ы? Например поставить счетчик этих созданий и по достищению 1000 обнулить sw = null; ? Как же возобновить процесс? После обнуления идет ошибка, мол ссылается на объект null. Последний раз редактировалось Tetraeon; 23.05.2012 в 03:04. |
|
|||||
|
Я повторюсь, зачем каждый раз делать addChild
Либо пусть текстовое поле присутствует постоянно, и обновляйте значение sw.text Либо при необходимости делайте addChild(sw), и потом по таймеру делайте removeChild(sw) ...и у вас каждый раз будет только один объект.
__________________
adobe AS3 manual |
|
|||||
|
Цитата:
Определяет, является ли указанный объект отображения дочерним объектом экземпляра DisplayObjectContainer или самим экземпляром. Область поиска охватывает весь список отображения, включая данный экземпляр DisplayObjectContainer. Нижестоящие элементы второго, третьего и последующих уровней возвращают значение true. |
|
|||||
|
я не очень понял о чем, с какими проблемами вы столкнулись?
__________________
adobe AS3 manual |
|
|||||
|
Например есть container, в котором лежит subcontainer. И по каким-то причинам child переместили из containre в subcontainer (Вы, конечно скажете, что это маловероятно - но мы натыкались пару раз и очень мучительно искали ошибку)
Если сделать так: то в этом конкретном случае флешка упадет - ведь child находится в subcontainer. |
|
|||||
|
Понял. Спасибо вам, ценное замечание.
__________________
adobe AS3 manual |
![]() |
![]() |
Часовой пояс GMT +4, время: 13:52. |
|
|
« Предыдущая тема | Следующая тема » |
|
|