2010-03-10 4 views
0

Я конвертирую старый проект AS1 в AS3 и нахожусь в небольшой проблеме.Прикрепить случайный мувиклип в AS3

Раньше я прикрепление случайные MovieClips, которые связаны с библиотекой с идентификаторами, как movie1, видеофильм2, movie3 и т.д. Вот мой код:

var ranID = random(4)+1; 
var mc = attachMovie("movie"+(ranID), "mc"+ranID, ranID); 

В AS3, я дал каждому из них MovieClips в библиотеке имени класса, так что я могу сделать что-то вроде:

var mc = new movie1(); 

Однако, я хочу, чтобы быть случайным тс ... какие-нибудь идеи?

ответ

1

Фигурные это:

var mc = new (getDefinitionByName("movie"+Math.floor(Math.random()*4)) as Class); 
addChild(mc); 

Может быть, есть лучшее решение там, но это работало нормально для меня.

0

Я хотел бы сделать что-то вроде этого:

private var movieList:Array = [ 
    movie1, 
    movie2, 
    movie3, 
    movie4 
    ]; 

public function getRandomMovie():MovieClip { 
    return new movieList[Math.floor(Math.random()*movieList.length)]; 
} 

/* later */ 
var mc:MovieClip = getRandomMovie(); 
addChild(mc); 
Смежные вопросы