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

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

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

Регистрация: Oct 2013
Сообщений: 126
Checked Проверка действующих твинов (caurina)

Использую твинер caurina для плавного появления элементов интерфейса при "входе" на уровень (выползают сверху или увеличивается масштаб). Но при одновременном появлении экземпляра сообщения происходит прерывание твинеров, из-за чего после закрытия сообщения какие-то элементы интерфейса вообще отсутствуют, а какие-то "дотвинились" не до конца. Подозреваю, что это как-то связано с тем, что при появлении сообщения игра ставится на паузу через переменную _pause:Boolean (при закрытии, конечно, снимается - _pause=false). Соответственно, обновление всего происходит в функции update, вызываемой ENTER_FRAME, где в самом начале стоит проверка if (!_pause) {...и т.д.
Я пытался перед появлением сообщение остановить все твины при помощи Tweener.pauseAllTweens(), а потом снова запустить при помощи Tweener.resumeAllTweens(), но это, почему-то, не помогло.
Решил перед появление сообщения поставить условие - "не действует ли, мол, в данный момент какой-нибудь твин"? Каждый отдельный твин можно проверить через Tweener.isTweening(), но тогда в скобках приходится указывать конкретный объект, а их много, так что этот вариант отпадает. А вот можно ли как-нибудь проверить, действуют ли в данный момент какие-либо твины (не загоняя их в массив или вектор), чтобы поставить это как условие?

Добавлено через 31 минуту
Проблема решена - оказалось, что в классе сообщения затесалась лишняя Tweener.removeAllTweens(), которая останавливает все твины не только в данном экземпляре, но и вообще. Тему можно удалять


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

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

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


 


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


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