Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Махинации с именами мувиков (http://www.flasher.ru/forum/showthread.php?t=162865)

Sweet07 04.08.2011 19:09

Махинации с именами мувиков
 
Задача такая: в зависимости от значения переменной менять свойства определённого мувика. Есть мувик m1. Запись :
var s:Number = 1;
m(s).visible = false;
- не работает. Что нужно сделать чтоб подобная запись имела место. Через условие знаю как, но хочу избежать большого объёма кода. Всего на сцене 25 мувиков с именами m1 до m25.

КорДум 04.08.2011 19:10

Код AS3:

getChildByName("m" + s) as MovieClip;


toFL 04.08.2011 19:12

Ну или по старинке:

Код AS3:

this["m" + i] as MovieClip;


Sweet07 04.08.2011 19:57

Или я что-то не так пишу или что-то ещё, но получилось такое:
Код AS3:

var s:Number = 1;
var t:String = "2";
this["r"+s] as MovieClip;
this["r"+s].gotoAndStop(t);

но не работает.
с .visible работает.

А как использовать getChildByName("m" + s) as MovieClip можно поподробнее?

in4core 05.08.2011 04:00

Код AS3:

var s:Number = 1;
var t:String = "2";
(this["r"+s] as MovieClip).gotoAndStop(t)

))

Sweet07 05.08.2011 04:18

Спасибо за пояснение - так шурупит всё, но опять лезу с вопросом.
Хочу задействовать мувик s1 в мувике r1. При записи
Код AS1/AS2:

var s:Number = 1;
r1.(this["s" + s] as MovieClip).gotoAndStop(2);

Выдаёт ошибку: Error #1123: Оператор "filter" не поддерживается для типа Untitled_fla.r1_1.
at Untitled_fla::MainTimeline/frame1().
Как обойти и сделать чтоб работало?

fish_r 05.08.2011 07:05

Код AS3:

MovieClip(r1["s" + s]).gotoAndStop(2);



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

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