![]() |
Последовательность выполнения условий
Впервые столкнулся с этим на as2, на 3й версии таких вещей я не наблюдал. Есть вот такое условие в событии onMouseUp:
Код AS1/AS2:
|
Явно уже спите :)
Булева алгебра. Приоритет выполнения логических операций. if (то-то && (то-то == undefined || то-то == null || то-то == temp)) Какая-то странаня конструкция. Если "то-то" - булевая, то условия всегда FALSE, если оно НЕ булевое, то и подавно false и вообще оно не будет нормально работать :) |
Нет, там все нормально, иначе я бы не получал трассера из этого блока. Вот эта строка:
if (CheckItem(temp) && (this.child == undefined || this.child == null || this.child == temp)) CheckItem и возвращает булево значение, я просто сократил код за ненадобностью, трассер-то работает. Прочитайте внимательно, пожалуйста, мой пост - я получаю оба трассера. Кроме того, если убрать альтернативный блок после else, то все будет работать как надо. Еще такая вещь - если добавить в else каких-нибудь бессмысленных условий, но чтобы их было много, то последовательность выполнения становится нормальной. Неужели компилятор бросается выполнять сначала то, что проще? |
Цитата:
|
Да, все верно, само событие onMouseUp вызывается на всех инстансах класса, которые находятся на сцене. Этого можно как-то избежать?
|
не цепляйте onMouseUp на ВСЕ инстансы....
или выполняйте только для активного элемента... |
Мм.. Я пишу в классах - это событие у меня прописано сразу. Инстансы этого класса и создаются на сцене, каждый с приаттаченным мувиком. Пробовал вешать слушателем как в кадре и удалять его, но компилятор ругается, мол, нельзя так в классе делать.
Все, разобрался - создал вложенную функцию onMouseUp в функции onMouseDown с условием фокуса на определенном мувике. За идею благодарен обоим, спасибо. |
| Часовой пояс GMT +4, время: 11:32. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.