Просмотр полной версии : 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(кадр);
Проблем меньше будет и код более читабелен.
Да у меня книжка Грибова по Flash4
Я там -Основы- черпаю:)
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.