我想從AS2
採取一個較舊的教程星域,並將其移植到AS3
。我不再收到任何編譯器錯誤,但我得到TypeError
。獲取類型錯誤#1123:過濾器運算符不支持類型,MainTimeline/enterFrameHandler()
下面是代碼:
this.addEventListener(Event.ENTER_FRAME, enterFrameHandler);
import flash.display.MovieClip;
import flash.events.Event;
var stars = 100;
var maxSpeed = 16;
var minSpeed = 2;
for(var i = 0; i<stars; i++)
{
var mc:MovieClip = new MovieClip();
addChild(mc);
mc.name = "star","star"+i,i;
mc.x = Math.random() * stage.stageWidth;
mc.y = Math.random() * stage.stageHeight;
mc.speed = Math.random() * (maxSpeed-minSpeed)+minSpeed
var size = Math.random() * 2+(0.6*(Math.random() * 4));
mc.width = size;
mc.height = size;
}
function enterFrameHandler(event:Event):void
{
var target:MovieClip = MovieClip(event.target);
for (var j = 0; j<stars;j++)
{
var mc = this.("star"+j);
if (mc.y>0)
{
mc.y -= mc.speed;
}
else
{
mc.y = stage.stageHeight;
mc.speed = Math.random() * (maxSpeed-minSpeed)+minSpeed;
mc.x = Math.random() * stage.stageWidth;
}
}
};
的TypeError
我得到的是:
TypeError: Error #1123: Filter operator not supported on type SpaceBoost_loadscreen_star_fla.MainTimeline. at SpaceBoost_loadscreen_star_fla::MainTimeline/enterFrameHandler()
我很新在ActionScript編碼,和我剛開始學習,我去。 此外,如何清理它的任何有用的建議也歡迎!
問題1:
在你的第一個for循環,這一行:mc.name = "star","star"+i,i;
每個項目的名稱將最終成爲該
您是否找到解決問題的方法? – BadFeelingAboutThis 2015-04-23 22:40:19