![]() |
взаимное расположение клипов (as2)
Джентельмены,добрый день.Требуется ваша помощь начинающему.
Суть проблемы в следующем: имеем два муви клипа,расположенные на одном backgrounde, в каждый клип вложена кнопка,которая отвечает за перетаскивание клипа мышкой.Необходимо,чтобы перетаскиваемый (выбранный)клип постоянно был видимым при "наложении" одного клипа на другой.Я для кнопки написал следующий скрипт : on (press) { startDrag(_root.mс1); _root.mс1.swapDepths("_root.mс2"); } on (release) { stopDrag(); } Соответственно для кнопки второго клипа написал аналогичный (с корректировкой)... Но проблема в следующем. При первом щелчке мыши "схема" начинает работать (клип mc1 перекрывает mc2),но при повторном нажатии на ту же кнопку (клипа mc1)происходит возврат в первоначальное положение (то есть mc2 перекрывает клип mc1),а мне необходимо,чтобы клип оставался в преоритете не зависимо от кол-ва нажатий по его кнопке и приоритет менялся только при нажатии кнопки другого клипа (mc2).... (понятно хоть написал?) Как нужно изменит скрипт? (аналог- перекрывающиеся менюшки на сайте www.orangedesign.com ) |
mc1.onPress = function() {
this.startDrag(); if (this.getDepth()<this._parent.mc2.getDepth()) { this.swapDepths(this._parent.mc2); } }; mc2.onPress = function() { this.startDrag(); if (this.getDepth()<this._parent.mc1.getDepth()) { this.swapDepths(this._parent.mc1); } }; mc1.onRelease =mc2.onRelease =function () { this.stopDrag(); }; |
mc1.onPress = function(){
this.startDrag() this.swapDepths(1000) _root.mc2.swapDepths(1) } mc2.onPress = function(){ this.startDrag() this.swapDepths(1000) _root.mc1.swapDepths(1) } |
ЗЫ. Причем здесь as2???????
|
для понта!
|
maxd=Math.max(mc1.getDepth(),mc2.getDepth())
ну и меняешь для обоих на эту глубину: swapDepths(maxd); |
предлагаю устроить конкурс - все пишем здесь свои варианты смены глубин у двух мувиков. кто оставит последнее сообщение - тот выиграл
|
onLoad=function(){fscommand("quit");}
Я выиграл!) |
оно вышло из чата
|
MindControl.broadcastMessage("Я выиграл. вы проиграли.")
|
джентельмены, искренне благодарен.
|
я тож хочу )
Вот оно! :eek:
Код:
var NameActiveClip; |
за использование прототипов - 2 бонус-балла. за использование функций - 1 бонус-балл. за использование eval - 5 штрафных баллов. итого -2, увы...
|
Ну, подумаешь :
_root[NameActiveClip].Stop(); |
вторая попытка - 7 штрафных баллов, итого: -4. увы.
|
Джентельмены...поскольку книга Мука ActionScript2 только еще в процессе доставки по почте, флеш приходится учить урывками из инета,методом тыка,детским мурзилкам и в том числе благодаря этому форуму...я переписал все ваши советы...пока перевариваю их...некоторые из них в моей схеме не сработали (вероятно руки у меня не то,что кривые,а вообще еще не выросли)...
..я переписал сценарий для кнопок следующим образом : on (press) { startDrag(_root.mс1); if (this.getDepth()<this._parent.mс2.getDepth()) { this.swapDepths(this._parent.mс2); } if (this.getDepth()<this._parent.mс3.getDepth()) { this.swapDepths(this._parent.mс3); } } on (release) { stopDrag(); } ну и аналогичный код для всех кнопок на трех клипах ( их в действительности три,а не два)... Все заработало как надо. В ваших рекомендациях используются функции,...как с ними жить я пока не разобрался :)))...ну да все впереди я надеюсь...с божьей и вашей помощью. Еще раз спасибо,...где как не здесь наберешься уму-разуму С уважением ко всем,Леонид. P.S. непременно попробую отработать все указанные вами варианты. |
Цитата:
Или изучаем в оригинале? |
уж не знаю, пригрезилось ли, но когда я брал с полгода назад мука про ас1 рядом была 2я его. и вродь ас2 и вродь русиш. 8\
всёравно переводить ас2 нет смысла. вот-вот ас3 будет, его и переводить можно =) |
Уже переведено и скоро выйдет.
Читать Нокса - http://flash-mx.ru/forum/topic_show.pl?pid=1505#pid1505 |
Цитата:
|
| Часовой пояс GMT +4, время: 18:55. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.