![]() |
очень простой скрипт, но уже голову сломал.
Проблема такая:
Нужно, чтобы сначала прозрачность одного объекта уменьшилась, когда она становится равна 5 должна увеличиться прозрачность 2-го объекта, а когда она доходит до 95 должен начать двигаться 3-й. Скритп такой: ============================= ob_1.alpha=100 ob_2.alpha=0 ob_3._x=600 OnEnterFrame=function (){ ob_1.alpha-=1 } if (ob_1.alpha=5){ OnEnterFrame=function (){ ob_2.alpha+=1 } } if (ob_2.alpha=95){ OnEnterFrame=function (){ ob_3._x-=1 } } ========================== Проблема в том, что при добавлении условий ролик воспроизводится каждый раз быстрее. Может проблема в вызове каждый раз OnEnterFrame ? Подскажите пожалуйста ... Просто до этого скрипт был расписан в одном длинющем условии (там еще штук 10 потом добавляется), потом я решил его раскидать .. Вот теперь окончательно запутался .. |
На объект 1 вешаем:
this.onEnterFrame=function (){ this.alpha-=1; if (this.alpha=5){ _root.ob_2.onEnterFrame=function (){ alpha+=1; if (this.alpha=95){ _root.ob_3.onEnterFrame=function (){ this._x-=1; } delete this.onEnterFrame(); } delete this.onEnterFrame(); } Не уверен в синтаксисе, но принципиально работать будет. |
ob_1._alpha=100
ob_2._alpha=0 ob_3._x=600 ob_1.onEnterFrame=function (){ (this._alpha <= 5) ? this._alpha-- : ob_2.alpha++; (ob_2._alpha >= 95) ? ob_3._x-- : ob_2._alpha--; } вроде так |
Ух ты а что это за запись, объясни пожалуйста
(this._alpha <= 5) ? this._alpha-- : ob_2.alpha++; |
Leezard, Smirnoff
не забудьте, что операция сравнения - это ==, а не = |
Leezard тернарная операция (условие) ? действие_1 : действие_2
если условие истинно, то выполняется действие_1 иначе действие_2 |
сейчас только проверил :)
ob_1._alpha=100; ob_2._alpha=0; ob_3._x=10; ob_1.onEnterFrame=function (){ (this._alpha >= 5) ? this._alpha-- : ob_2._alpha++; (ob_2._alpha >= 95) ? ob_3._x-- : ob_2._alpha=ob_2._alpha; } |
Вложений: 1
ой! и я свои 2954 байт вставлю!!!
|
работает, выглядит компактно. ляпота.
|
всем спасибо, кажется все понял ..
но назрел еще вопрос, выношу в новую тему .. |
| Часовой пояс GMT +4, время: 22:03. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.