Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   btn + mc (http://www.flasher.ru/forum/showthread.php?t=107815)

Pasquill 09.02.2008 22:55

btn + mc
 
подскажите мне, плиз
на сцене есть кнопка и мувик
в конце мувика stop()
что прописать в кнопке на on(press), что бы при клике на кнопку воспроизводится мувик ?
заранее спасибо)

walerka 09.02.2008 23:07

пишешь:
Код:

on(press){
имя_мувика.gotoAndPlay(1);}


Pasquill 09.02.2008 23:53

2 walerka
да, так просто все))) пасиб

но теперь второй ворпос:
у меня кнопок много и для каждой этот мувик одинаков, но находится на других координатах. с этим проблемм нет
что мне сделать, что бы не пришлось вытаскивать на сцену и присваивать уникальное имя каждому мувику?
дело в том, что когда я быстро нажимаю на другую кнопку, то в первой нажатой мувик моментально прерывается и начинает воспроизводиться в другой

walerka 10.02.2008 00:54

что значит в других координатах, не понятно? используй паузу, почитай тут на форуме уже был подобный пост, а лучше четчше сформулируй вопрос, чтоб было ясно

Pasquill 10.02.2008 01:09

Цитата:

Сообщение от walerka
... а лучше четчше сформулируй вопрос, чтоб было ясно

хм... вобщем :
2 кнопки
при нажатии возникает мувик - вспышка, которая постепенно тухнет
я нажимаю на 1 кнопку - над ней начинает воспроизводится мувик
пока он еще в процессе, я жму вторую
и этот мувик воспроизводится над второй, а над первой прерывается, не окончившись
я не хочу вытаскивать 2 раза мувик и присваивать ему несколько раз имена, что бы в кнопках понаписывать
Код:

в первой
on(press) {
mov1._x = btn1._x;
mov1._y = btn1._y;
mov1.gotoAndPlay(1);
}

и во второй
on(press) {
mov2._x = btn2._x;
mov2._y = btn2._y;
mov2.gotoAndPlay(1);
}

конечно так уже сделано и все правильно работает, но ради ведь "спортивного интереса" =)
а то можно запариться с таким количеством

и еще вопрос не совсем по теме, если можно
есть код
Код:

onEnterFrame = function() {
...
a=3;
...
}
trace(a);

trace выдает undefined
вопрос конечно нубский, но что уж попишешь:
как обращаться к переменной, которой присвоили значение в функции ? это как-то связано с _global ?

NoCD 11.02.2008 00:23

когда ты создаешь две кнопки и вешаешь один и тот же мувик на них, то нажимая вторую кнопку сразу же после первой, то кнопка 2 прерывает выполнение мувика и запускает его занова. Создай резервный мувик:)

onEnterFrame=function() это тоже самое что и цикл, только он повторяется пока ты его не удалишь.

Если в такой функции ты присваиваешь переменной "а" значение 3 и при этом делаешь, что нибудь в роде а+=1, то "а" всегда будет равно 4, так как для цикла переменная "а" будет всегда равной 3.+ присваивание 1

Если нужна операция с переменными или же простое назначение переменным, то воспользуйся простой функцией
function operations(переменная)
{}

Pasquill 13.02.2008 01:15

Цитата:

Сообщение от NoCD
когда ты создаешь две кнопки и вешаешь один и тот же мувик на них, то нажимая вторую кнопку сразу же после первой, то кнопка 2 прерывает выполнение мувика и запускает его занова. Создай резервный мувик:)

жаль, ну вобщем именно так и пришлось делать)
Цитата:

Сообщение от NoCD
...
Если нужна операция с переменными или же простое назначение переменным, то воспользуйся простой функцией
function operations(переменная)
{}

спасибо за ясный ответ =)
:umnik2: но опять-таки после безчисленных попыток ничего не получается((( есть следующий код:
Код:

...
function operat(a) {
        a = String(ExternalInterface.call("at"));
        return a;
}
...

далее что не пишу - выдает null или undefined
Если вместо
Код:

return a;
 пишу
function() { ...
return b.text = a;
}
myVar = b.text;

создаю поле с именем b - выдает пустоту
создаю поле с var "b" - выдает undefined
пишу и там и там b - выдает _level0
помогите, а то я уже не знаю, что ему делать (((

Molecula 13.02.2008 01:55

Не надо так писать:
Код:

return a;
 пишу
function() { ...
return b.text = a;
}
myVar = b.text;

Пример:
Цитата:

function double(a:Number, b:Number):Number{
var c=2*a+2*b;
return c;
}

function xlam(trash:Number):Number{
var garbage = double(trash, trash/2);
return garbage;
}

function getXlam(){
trace(xlam(2));
}

getXlam();

Pasquill 13.02.2008 02:32

Molecula
да, это работает все :) пасиб

Pasquill 14.02.2008 00:29

но опять-таки у меня не работает то, что надо
а ведь всего лишь надо "вытащить из функции" эту переменную "a" (полученную из js)
она потом применяется очень часто
после этого кода
Код:

function operat() {
        a = String(ExternalInterface.call("at"));
        return a;
}

далее как-то надо обращатся к "a" и все... =(


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

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