我正在创建Flash游戏而且我有问题,在“跳跃”动画之后我需要恢复“保持”动画。
我知道我需要在跳跃动画的最后一帧中使用parent.gotoAndStop("staying");
。之前有效,现在我改变了我的角色添加了新的动画,现在当我尝试使用它时我得到了错误:1061: Call to possibly undefined method gotoAndStop through a reference with static type flash.display:DisplayObjectContainer.
在此之后我尝试使用:gotoAndStop("staying");
,永远跳过动画循环。
在此之后还尝试stop();
- 动画在最后一帧停止,但我需要启动staying
动画。请问你能帮帮我吗?谢谢。
答案 0 :(得分:0)
尝试这样的事情:
if(player.currentFrameLabel=="jumping"){
if(player.(getChildAt(0) as MovieClip).currentFrame==totalFrames){
player.gotoAndStop("Staying");
}
}
编辑:
我假设你正在使用类而不是时间轴,不使用时间轴,这对AS3.0来说是一个糟糕的想法。
EDIT2:
如果您正在处理时间线,那么同样适用,如果您需要像上面的代码那样引用播放器,则该实例的引用是“播放器”。
答案 1 :(得分:0)
它将位于您的跳跃动画的最后一帧
MovieClip(parent).gotoAndStop("staying");
诀窍很简单。 parent
从MovieClip
继承的DisplayObjectContainer
属性,它将对象的引用作为DisplayObjectContainer
返回。此处没有定义gotoAndStop
个方法,因此您应该将该引用转换为MovieClip
以获取对其属性和方法的访问权限。
你得到的错误(1061)对你说了这个。