Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   Help !!! (http://www.flasher.ru/forum/showthread.php?t=64552)

Molotoff 05.11.2004 19:07

Help !!!
 
Проблема мучает уже .. 5 дней : :confused:
> Как написать скрипт, который определяет название последней нажатой кнопки.
Или как написать: если была нажата эта кнопка("имя кнопки"), то переходим на этот фрейм ("имя фрейма").

Заранее благодарен... спасите :(

ScaredShard 05.11.2004 19:47

На кнопке
on(release){_root.metka="1";
//
//
//

}

На мувике
onClipEvent(EnterFrame){
this.gotoAndStop(_root.metka);
//
//
//
}

Или я не въехал?

Molotoff 05.11.2004 23:44

Нет ты походу не совсем въехал :rolleyes: . Вобщем расклад такой:
Есть кнопки (2 и более) допустим на 1м фрейме, мы на одну из них нажимаем, начинается воспроизведение с определенной метки (допустим "2") с 2го фрейма, заканчивается на 5м фрейме("stop();"). По аналогии с остальными кнопками(ну и естестно с другими метками и фреймами). Дак вот, вопрос: дальше нужно составить разветвление > если была нажата 1ая кнопка, продолжаем воспроизводить с 6го фрейма, 2ая кнопка- с 10го и т. д. Что скажете, о боги "движения"!

Antares 06.11.2004 03:28

Дай каждой кнопке по соответствующей переменной, хранящей отступ. И gotoAndPlay на _currentframe+MyButtOffset...

Штрек 06.11.2004 12:11

var kn_name;
var kol_kn = 6;
for (i=1; i<=kol_kn; i++) {
this["kn"+i].onPress = function() {
_root.kn_name = this._name;
};
}
В зависимости от значения переменной kn_name
отправляй мувики куда тебе надо...

Molotoff 06.11.2004 12:59

Спасябо большое, проверю все варианты.

P.S. кстати объясни, Штрек, что означает " this["kn"+i] ". Что за переменные или еще что здесь "kn", "+i".(раньше с этим не сталкивался)... не держите, если что, за ламера :rolleyes:

Штрек 06.11.2004 19:35

Имеется в виду, что имеется 6 /kol_kn/ кнопок
с инстанс именами - kn1 . kn2....kn6

Molotoff 06.11.2004 23:00

Еще 2 вопроса... Как присвоить кнопке, при нажатии на неё, соотвествующую переменную?

И "левый" вопрос: скрипт который заставляет передвигаться объект(мувик, кнопку) из одного места в ДРУГОЕ. ДРУГОЕ - потому что получается только прог. передвижение объекта в "никуда":
mov.onEnterFrame=function()
{
mov._x+=1;)
}

Штрек 07.11.2004 00:35

Зачем тебе переменная в кнопке?
Скрипт, что выше, задаёт значение переменной
в руте и это значение легко отслеживать...
Что касается перемещения -
бери прототип на все случаи жизни -
изменение основных св_в мува за n_kadr кадров -
MovieClip.prototype.izm_sv = function(nkadr, x, y, alf, xsc, ysc, rotat) {
this.createEmptyMovieClip("obr", 9);
var ttx = this._x;
var tty = this._y;
var ttalf = this._alpha;
var ttxsc = this._xscale;
var ttysc = this._yscale;
var ttrotat = this._rotation;
var n = 0;
this.obr.onEnterFrame = function() {
n++;
this._parent._x += x/nkadr;
this._parent._y += y/nkadr;
this._parent._alpha += alf/nkadr;
this._parent._xscale += xsc/nkadr;
this._parent._yscale += ysc/nkadr;
this._parent._rotation += rotat/nkadr;
if (n == nkadr) {
this._parent._x = ttx+x;
this._parent._y = tty+y;
this._parent._alpha = ttalf+alf;
this._parent._xscale = ttxsc+xsc;
this._parent._yscale = ttysc+ysc;
this._parent._rotation = ttrotat+rotat;
n = 0;
this.removeMovieClip();
delete this.onEnterFrame;
}
};
};
Применяется так -
есть мув с инст_именем. напр. mc
Пишем -
mc.izm_sv(12,150,-100,-30,0,0,45)
За 12 кадров мувик сметится на 150 пикс. по оси X,
на -100 пикс. по оси Y, при этом его альфа
уменьшится на 30%, а также мувик повернётся
на 45градусов, относительно точки регистрации.
Запускать метод можно по всякому -
просто прописать в кадре и при входе плэера в кадр
он/метод/ начнёт работать...
или запускать кнопкой -
on(press){
mc.izm_sv(12,150,-100,-30,0,0,45)
}
или с помощью функции setInterval -
id=setInterval(function(){
mc.izm_sv(12,150,-100,-30,0,0,45)
clearInterval(id)},2000)
//здесь после входа в кадр со скриптом,
применение метода начнётся через 2 сек.
Короче вариантов море...

Molotoff 07.11.2004 17:56

Спасибо большое за посильную помощь. Век воли не видать, никогда не забуду :)


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

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