![]() |
Не видит функции
Всем привет.
Скажем, есть мувик, со свей функцией. к которой я обращаюсь так mc.PushMe(mc); И это работает. Затем я создаю его дубликат: newObj = mc.duplicateMovieClip("newbox0",100); И это работает. Я присваиаю ему новую координату, он там создаётся и появляется. Но вот дальше newObj.PushMe(newObj); не работает. trace(newObj.PushMe(newObj)) выписывает "undefined", тогда как trace(newObj) выписывает "_level0.newbox0", то-есть, объект существует. В чём проблема, дорогие други? Не дайте помереть в неведении! Спасибо! |
Если ты пытаешься вызвать ф-цию сразу после дублирования - и не должно работать. Функция еще не определилась, т.е. сначала отрабатывает скрипт после дупликэйта, и только ПОТОМ начинается выполнение скрипта (и определение ф-ций) в первом кадре нового клипа. Варианты решения:
1 Ждать, пока не определится ф-ция. 2 Прописать ее в AS2 КЛАССЕ для этого клипа. |
А можно поподробнее о втором пункте?
|
Пишешь класс, расширяющий MovieClip в *.as файле, в линкейдже мувика его указываешь. В этом случае инициализация классовых ф-ций происходит при создании/дублировании клипа, т.е. ДО выполнения следующей после создающей/дублирующей команды. Вроде того, что у только что приаттаченного мувика есть gotoAndPlay, stop и другие методы класса.
|
Спасибо!
|
А где можно увидеть пример?
|
Пример чего? Как писать классы? В хелпе по MX2004.
|
кстати, если не требуется дублировать клип, и хочется запихнуть функции внутрь, то можно сделать финт ушами
Код:
// написать в клипено это не подходит для случая когда нужно дублировать клип. просто иногда удобно запихнуть все функции, которые нигде больше не нужны в один клип, не создавая классов и не заморачиваясь с тем когда там что отработает и станет доступно. |
Инитклип сакс.
|
Цитата:
да, ты прав, важное дополнение :) |
| Часовой пояс GMT +4, время: 13:50. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.