我正在将一个旧的AS1项目转换为AS3并遇到一个小问题。
以前,我附加了从库中链接的随机动画片段,其中包括像movie1,movie2,movie3等ID。这是我的代码:
var ranID = random(4)+1;
var mc = attachMovie("movie"+(ranID), "mc"+ranID, ranID);
在AS3中,我给了库中的每个动画片段一个类名,这样我就可以这样做:
var mc = new movie1();
然而,我希望那是一个随机的mc ...任何想法?
答案 0 :(得分:1)
想出来:
var mc = new (getDefinitionByName("movie"+Math.floor(Math.random()*4)) as Class);
addChild(mc);
也许那里有更好的解决方案,但这对我来说很好。
答案 1 :(得分: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);