Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Логика для ENTER_FRAME (http://www.flasher.ru/forum/showthread.php?t=197634)

Fogflasher 10.04.2013 15:09

Логика для ENTER_FRAME
 
Всем привет.

В проекте два слоя, в первом скрипт, во втором моушн-твин мувиклипа.
Всего в таймлайне 50 кадров. На 25 кадре находится такой AS3 код:

Код AS3:

mc1.addEventListener(Event.ENTER_FRAME, flow_on);
 
 
function flow_on(e:Event)
{
 
        trace("ENTER OK!");
        mc1.removeEventListener(Event.ENTER_FRAME, flow_on);
 
}

Трэйс срабатывает, когда мувик доходит до 25 кадра, но...

Объясните, почему он срабатывает только ОДИН РАЗ?

То есть, я понимаю, что у нас есть ремув-листенер, но...

У нас же после 25 кадра нет никаких пустых кадров далее.
То есть мы подразумеваем, что этот-же AS3 код действует и на 26 кадре. И на 27 кадре...
И так до 50.

То есть, казалось бы логика должна быть таковой:

- Заходим в 25 кадр. Вешаем слушатель. Выдаем сообщение. Снимаем слушатель.
- Заходим в 26 кадр. Вешаем слушатель. Выдаем сообщение. Снимаем слушатель.
и. т.п.

А значит трэйс должен для каждого последующего фрейма основного таймлайна генериццо, а не только для 25.

caseyryan 10.04.2013 15:15

Цитата:

То есть мы подразумеваем, что этот-же AS3 код действует и на 26 кадре. И на 27 кадре...
Нет. Для программы нет такого понятия как кадры на таймлайне. Это для мультиков.
А для программы все сухо, слушатель добавился, отработал один раз и удалился согласно дальнейшей инструкции. Все происходит правильно.

Fogflasher 10.04.2013 15:37

caseyryan, понятно, спасибо.

Нда, : ) всё иногда бывает проще чем кажется.

iflamberg 10.04.2013 15:45

Мда, это одна из тех причин, почему не рекоментудется писать код в кадрах в as3. Потому что вот такие непонятки всплывают.


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

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