![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Aug 2005
Сообщений: 56
|
Проблема такая:
Нужно, чтобы сначала прозрачность одного объекта уменьшилась, когда она становится равна 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 потом добавляется), потом я решил его раскидать .. Вот теперь окончательно запутался .. Последний раз редактировалось Smirnoff; 06.09.2005 в 15:30. Причина: торопился, ошибок в посте насажал .. |
|
|||||
|
Регистрация: Oct 2004
Сообщений: 141
|
На объект 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--; } вроде так Последний раз редактировалось Dimchansky; 06.09.2005 в 16:06. |
|
|||||
|
Регистрация: Oct 2004
Сообщений: 141
|
Ух ты а что это за запись, объясни пожалуйста
(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; } |
|
|||||
|
Регистрация: Oct 2004
Сообщений: 141
|
работает, выглядит компактно. ляпота.
|
|
|||||
|
Регистрация: Aug 2005
Сообщений: 56
|
всем спасибо, кажется все понял ..
но назрел еще вопрос, выношу в новую тему .. |
![]() |
![]() |
Часовой пояс GMT +4, время: 22:45. |
|
|
« Предыдущая тема | Следующая тема » |
|
|