![]() |
Telltarget и строки
Есть такой код
for (i=1; i<=5; i++) { if ((eval("id" add i)) == 1) { tellTarget (" \"Mov\" add i ") { gotoAndStop (1); } } Идея такая например если мы нашли, что id4=1, то переходим на mov4 и останавливаемся на 1 кадре но это не работает. Вся проблема в telltarget-е. Это я знаю подскажите, если не лень :)) что тут исправить |
for (i=1; i<=5; i++) {
if ((eval("id" add i)) == 1) { mov.i.gotoAndStop (1); } } |
сенк
|
Товарищи! Павильно ли я понимаю
на самом деле надо делать так for (i=1; i<=5; i++) { if ((eval("id" add i)) == 1) { _root.mov.i.gotoAndStop (1); } } (у меня мувики все на основной сцене) но опять же, не понятно как получается имя мне то нужно например _root.mov2.gotoAndStop (1); или _root.mov5.gotoAndStop (1); а не _root.mov.5.gotoAndStop (1); не работает вобщем:( |
Так бы сразу и говорил, я то по твоему (" \"Mov\" add i " ) коду писал (mov.i.gotoAndStop ). Если тебе нужно обратиться к Mov1..Mov5, то код будет такой:
for (i=1; i<=5; i++) { if ((eval("id" add i)) == 1) { nName=eval("mov"+i); _root.nName.gotoAndStop (1); // если действительно эти клипы лежат в основной линейке } } |
спасибо:) по-моему работает,
id переменные при нажатии на мувики меняются только еще один вопрос весь этот цикл у меня вставлен в on(press){ if{ ....//проверка на то, какой мувик запущен и его остановка "id"+i = 0; // приравниваю к нулю id только что остановленного мувика id4=1; // ставлю флаг, что запустился другой мувик // потом собственно иду и играю этот 4-ый мувик tellTarget ("_level0:mov4") { gotoAndPlay (2); } } он не играется. У меня возникают догадки, что может быть как-то цикл обнуляет только что объявленную переменную id4? |
Напиши полный код (который не работает), а еще лучше исходник.
|
например для кнопки с id=3
on (press, release) { //цикл проверки for (i=1; i<=5; i++) { if ((eval("id" add i)) == 1) { nName = eval("mov"+i); _level0:nName.gotoAndStop(11); eval("id"+i) = 0; } } //наш мувик рабочий _level0:id3 = 1; //должен играть, пока я не нажму на другую кнопку tellTarget ("_level0:mov3") { gotoAndPlay (1); } } |
а да.. все переменные у меня определены в слое сцены
поэтому я как понимаю, путь до них _level0:имя |
Не пользуйся таким синтаксисом, он уже давно морально устарел. Пиши:
_root.имя_клипа.gotoAndStop(кадр); Проблем меньше будет и код более читабелен. |
| Часовой пояс GMT +4, время: 00:29. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.