使用addChild()时,MovieClip不播放动画

时间:2013-04-07 07:26:15

标签: flash animation actionscript movieclip addchild

我正在尝试制作一个简单的Flash游戏。

我一直在寻找这个问题,但我找不到任何帮助我的问题/答案,所以这里是:

我正在尝试使用addChild()生成宠物小精灵Movieclips

    var comPkm:MovieClip = new bulbasaur;
    comPkm.x = 620;
    comPkm.y = 270;
    comPkm.height = 80;
    comPkm.width = 77;
    addChild(comPkm);
    comPkm.gotoAndPlay("idle");

问题是:口袋妖怪的“闲置”姿势根本不起作用 但是,如果我将口袋妖怪直接放到时间线上,那就行了。 知道什么是错的,解决方案是什么?谢谢:))

1 个答案:

答案 0 :(得分:0)

不幸的是,设置MovieClip的某些属性会导致剪辑无法播放动画。设置x,y,高度或宽度会破坏时间轴动画。没有跟踪消息的沉默失败让我困惑了好几次。解决方法是创建父占位符并使ActionScript修改父级或子级。例如:

comPkm.parent.x = 620;
comPkm.parent.y = 270;
comPkm.parent.height = 80;
comPkm.parent.width = 77;

相关:Scaling onstage MovieClip w/ "scaleX" breaks timeline animation ...really?

  

如果修改包含补间动画的MovieClip对象的以下任何属性,则播放头将停止在该MovieClip对象中:alpha,blendMode,filters,height,opaqueBackground,rotation,scaleX,scaleY,scale9Grid,scrollRect,变换,可见,宽度,x或y。但是,它不会停止该MovieClip对象的任何子MovieClip对象中的播放头。

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/MovieClip.html

根据我的经验,播放头会永久损坏,无视将来对gotoAndPlay的调用。