所以我有一个名为Game的主场景。在那个场景中,我有一个名为Shop的动画片段。在名为shop的movieclip里面,我有另一个名为upgradeweapon2的影片剪辑。在upgradeweapon2里面,我有一个名为“upgradeweaponpb”的按钮。 我正在使用动作脚本,在电影剪辑upgradeweapon2的框架中工作。我正在尝试编辑一个名为“weaponlvl”的变量,该变量在Game中声明。一张图片来说明我的意思: http://gyazo.com/96b04ab89ea4a589bee560d53d165b03.png
我收到以下错误:访问未定义属性weaponlvl。
请告诉我有一种方法可以解决这个问题...我知道武器包是在根场景,游戏中定义的,但是有没有办法使声明在MovieClip的各个级别上有效,或者至少是一种转移方式价值相互影响?
以下是我要添加的代码:
stop();
upgradepb.addEventListener(MouseEvent.CLICK, upgradeweapon5);
function upgradeweapon5(event:MouseEvent):void{
weaponlvl++;
}
编辑:好吧我简化了我的代码,它只是一个动画片段,而不是两层。但仍然是同样的错误。知道我能做什么吗?
答案 0 :(得分:2)
weaponlvl
位于upgradeweapon2.upgradeweaponpb
的框架上;它不在根层,因此在动作脚本中它没有意义。您有两种选择:
通过weaponlvl
或MovieClip(root).weaponlvl
(也是根)获取this.parent.parent
。