在我的Flash游戏的某些级别的影片剪辑中,有某个影片剪辑控制着我创建的定制相机。相机和MovieClip功能都正常顺利。然而,每当一个关卡完成并从游戏中移除时,我会得到一个Error #1009
不能识别checkCameraZoom
函数。此外,此MovieClip不会与代码动态添加,而是会在运行时放置在来自库的指定级别的MovieClip中。有没有任何可能的方法来解决这个错误?在删除父MovieClip后禁用嵌套的影片剪辑
ZoomOutArea类:
package com.engine.assetHolders
{
import com.engine.documentClass.*;
import flash.display.*;
import flash.events.*;
public class ZoomOutArea extends MovieClip
{
public function ZoomOutArea():void
{
this.visible = false;
this.addEventListener(Event.ADDED_TO_STAGE, initZoomOutArea);
// constructor code
}
public function initZoomOutArea(event:Event):void
{
this.addEventListener(Event.ENTER_FRAME, checkCameraZoom);
}
public function checkCameraZoom(event:Event):void
{
if (Document.getInstance != null)
{
if (this.hitTestObject(MovieClip(parent.parent).player.playerHitArea))
{
this.hitTestZoom(0.6);
}
if (! this.hitTestObject(MovieClip(parent.parent).player.playerHitArea))
{
this.hitTestZoom(1);
}
}
}
public function hitTestZoom(zoomLevel):Number
{
MovieClip(parent.parent).cameraScale = zoomLevel;
return zoomLevel;
}
}
}
您可以先制作一个虚拟函数,并查看它是否承认“虚拟”功能与否。这可能会增加情况的一些清晰度。 – 2012-04-28 17:17:17