PDA

Просмотр полной версии : в if не работает gotoAndPlay()


Ventolin
06.05.2006, 10:35
Ребята у меня такая проблемка. Я задал условие if и если оно верное то в этомже условие выполняется свойство gotoAndPlay(2) которая должна запускать клип со 2-го кадра, приэтом в клипе в 1-ом кадре в слое сценарий стоит команда stop() и при запуске клипа если условие выполняется появляется нужный клип со 2-го кадра но дальше 2-го кадра анимация в нем у меня не проигрывается, она начинает пригрывать только тогда когда на главной временной диаграмме проходит полный свой круг и возвращается на кадр 1.

Вот код этих условий :

too = Math.round(Math.random()*5);
if (too == 1) {
tr1.unloadMovie();
attachMovie("kv", "kv1", 1);
kv1._x = 200;
kv1._y = 70;
kv1.gotoAndPlay(2);
}
;
if (too == 5) {
kv1.unloadMovie();
attachMovie("tr", "tr1", 2);
tr1._x = 200;
tr1._x = 70;
tr1.gotoAndPlay(2);
}


Для большей наглядности я прикрепляю файл . Этот файл показывает работу кода, он является отрывком из ролика поэтому я его слепил для наглядности работы сценария и мне нужно оставлять команду stop() в 1 кадре клипа.

Помогите что не так и почему в if не работает в данном сценарии условие gotoAndPlay(2) (не запускается анимация, хотя кадр 2 из клипа показывается(и показывается только он)). ?

Ventolin
06.05.2006, 10:51
// ... блин забыл вложение вставить ...вот оно -

Kinsler
06.05.2006, 12:08
кхм у тебя же нету клипа kv в библиотеке
да и вообще код какой то бредовый

Kinsler
06.05.2006, 12:08
ой
сорри извениюсь
ща

Kinsler
06.05.2006, 12:14
ну убери стоп в kv
оно тебе надо?

MIX-er
06.05.2006, 12:17
хороший ответ)))

читаем описание трабла))

MIX-er
06.05.2006, 12:25
кстати странно...
ни когда такой целью не задавался...

страно

attachMovie("kv", "kv1", 1, {_x:200, _y:70});
trace("depth="+kv1.getDepth());
kv1.stop();

kv - без стопа - останавливается


attachMovie("kv", "kv1", 1, {_x:200, _y:70});
trace("depth="+kv1.getDepth());
kv1.play();

kv - со стопом не стартует...

Kinsler
06.05.2006, 12:34
угу
мне вот кажется, что это твин виноват

MIX-er
06.05.2006, 12:38
нее переделал твин...

просто по ходу мувик приаттачивается позже того как мы его запустили...

Kinsler
06.05.2006, 12:39
как это???
код же раньше
а почему второй тогда работает?

Ventolin
06.05.2006, 12:47
кхм у тебя же нету клипа kv в библиотеке
да и вообще код какой то бредовый

хм...как говорят на этом форуме читайте умные книжки. Клип для kvadrat и treugolnik есть смотри внимательно библиотеку а точнее в опции Linkage, как говорит брат Колин Мук с помощью attachMovie клипы создаются ( а точнее их ЭКЗЕМПЛЯРЫ) экспортированые через Linkage , новый создается прямо из символа библиотеки.

Поэтому этот клип kv он есть.

А вот насчет команды stop () в клипе в 1 кадре он нужен , потомучто это кусок из моего ролика , а дальше в ролике она будет использоваться поэтому я и спрашиваю как в условии if корректно работало свойство gotoAndPlay() для клипа созданного с помощью attachMovie ????

Ventolin
06.05.2006, 12:51
Есть у кого варианты для запуска клипа со стопом в 1 кадре клипа чтобы он всетаки запускался. При таком сценарии что у меня написан ?

MIX-er
06.05.2006, 12:51
да фигню сморозил... но чудес то не бывает!!!

MIX-er
06.05.2006, 12:52
притаком как у тебя вообще стоп не нужен...

Ventolin
06.05.2006, 12:55
attachMovie("kv", "kv1", 1, {_x:200, _y:70});
trace("depth="+kv1.getDepth());
kv1.play();

kv - со стопом не стартует...


конечно не стартует потомучто в первом кадре стоит команда stop() а вы клип запускаете с помощью kv1.play(); play() же запускает клип с 1 кадра а там стоит stop() вот поэтому.

И всеже в чем загвозка и как из этого выпутаться чтобы все заработало?

Kinsler
06.05.2006, 12:56
я вот чето не врубаюсь зачем тут все таки стоп....
то бишь в клипе kv1

Kinsler
06.05.2006, 12:57
объясни по человечски зачем там стоп в первом кадре
т.е. если too не равно 1 то клип стопиться должен так чтоли?
так он и не аттачиться
нафига его стопить?

Ventolin
06.05.2006, 12:59
притаком как у тебя вообще стоп не нужен...

при таком как я выложил да не нужен , но я же говорил что этот файл пробный и нарисовано там только для примера и кусочек сценария который я выдрал чтобы показать что не работает тоже для примера поэтому стоп в прикрепленном файле не нужен, ОН будет нужен для дальнейших действий. Поэтому и спросил как со стопом в 1 кадре все заработало если применять tr1.gotoAndPlay(2); ????

Kinsler
06.05.2006, 13:13
может так?

MIX-er
06.05.2006, 13:21
извини бразер но эт уже изврат)))

Kinsler
06.05.2006, 13:22
блин а че делать?
:)

Ventolin
06.05.2006, 13:40
может так?


Да спасибо за подсказку, в принципе результат тот который нужен. Еще прошу прощение в клипе квадрата stop стоял прям в первом кадре и на протяжении действия перемещения он существовал, а надо было чтобы стоял в отдельном слое и только в 1 кадре, это я просто выложил немного не ту версию пробного файла. Но в принципе если и стоял сценарий во 2 слое и в первом кадре от этого бы суть не поменялась ( всеравно не двигался бы квадратик).

Но вы дописали условие в клипе и все заработало, в принципе тот результат что и надо было.

СПАСИБО ВАМ.

Kinsler
06.05.2006, 13:42
ну так тому и быть.
:)
Пусть изврат зато работает :)
Но, все же...
Не работает это скорее всего потому, что когда аттачиться клип
он в проигрывателе, начинает играться сразу при аттаче
а там стоит stop ();
следовательно он тормозиться сразу
а gotoAndplay выполняеться позже
т.е. тогда , когда аттаченный клип УЖЕ запущен.

Ventolin
06.05.2006, 13:59
ну так тому и быть.
:)
Пусть изврат зато работает :)
Но, все же...
Не работает это скорее всего потому, что когда аттачиться клип
он в проигрывателе, начинает играться сразу при аттаче
а там стоит stop ();
следовательно он тормозиться сразу
а gotoAndplay выполняеться позже
т.е. тогда , когда аттаченный клип УЖЕ запущен.

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

И эту идею я хотел реализовать приблизительно с помощью этого сценария.
:)

В голову пришла просто такая идея ( сценарий такой), конечно корявенький, но хоть какойто, Гггг зато свой ... не похожий на другие :))))))