Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   Telltarget и строки (http://www.flasher.ru/forum/showthread.php?t=29190)

Nixa 26.03.2002 18:27

Telltarget и строки
 
Есть такой код

for (i=1; i<=5; i++) {
if ((eval("id" add i)) == 1) {

tellTarget (" \"Mov\" add i ") {
gotoAndStop (1);
}
}
Идея такая
например если мы нашли, что id4=1, то переходим на mov4 и останавливаемся на 1 кадре

но это не работает. Вся проблема в telltarget-е. Это я знаю

подскажите, если не лень :)) что тут исправить

xbor 26.03.2002 18:32

for (i=1; i<=5; i++) {
if ((eval("id" add i)) == 1) {
mov.i.gotoAndStop (1);
}
}

Nixa 26.03.2002 19:16

сенк

Nixa 27.03.2002 12:37

Товарищи! Павильно ли я понимаю
на самом деле надо делать так
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);


не работает вобщем:(

xbor 27.03.2002 12:49

Так бы сразу и говорил, я то по твоему (" \"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); // если действительно эти клипы лежат в основной линейке
}
}

Nixa 27.03.2002 13:23

спасибо:) по-моему работает,
id переменные при нажатии на мувики меняются
только еще один вопрос
весь этот цикл у меня вставлен в
on(press){

if{
....//проверка на то, какой мувик запущен и его остановка
"id"+i = 0; // приравниваю к нулю id только что остановленного мувика


id4=1; // ставлю флаг, что запустился другой мувик

// потом собственно иду и играю этот 4-ый мувик
tellTarget ("_level0:mov4") {
gotoAndPlay (2);
}
}

он не играется.
У меня возникают догадки, что может быть как-то цикл обнуляет только что объявленную переменную id4?

xbor 27.03.2002 13:28

Напиши полный код (который не работает), а еще лучше исходник.

Nixa 27.03.2002 13:35

например для кнопки с 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);
}
}

Nixa 27.03.2002 13:38

а да.. все переменные у меня определены в слое сцены
поэтому я как понимаю, путь до них _level0:имя

xbor 27.03.2002 14:19

Не пользуйся таким синтаксисом, он уже давно морально устарел. Пиши:

_root.имя_клипа.gotoAndStop(кадр);

Проблем меньше будет и код более читабелен.


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

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