플래시 퍼즐 게임에 문제가 있습니다. 내 타임 라인의 첫 번째 프레임에서 게임을 만들면 작동하지만 5 번째 프레임에서 게임이 만들어지면 작동하지 않습니다! 나는 문제가 VAR 대상으로 생각어떻게 플래시 게임에서이 오류를 해결할 수 있습니까?
TypeError: Error #1009: Cannot access a property or method of a null object reference. at Map() TypeError: Error #2007: Parameter hitTestObject must be non-null. at flash.display::DisplayObject/_hitTest() at flash.display::DisplayObject/hitTestObject() at DragDrop/drop()
끌어서 놓기 클래스
package
{
import flash.display.*;
import flash.events.*;
public class DragDrop extends Sprite
{
var origX:Number;
var origY:Number;
var target:DisplayObject ;
public function DragDrop()
{
// constructor code
origX = x;
origY = y;
addEventListener(MouseEvent.MOUSE_DOWN, drag);
buttonMode = true;
}
function drag(evt:MouseEvent):void
{
stage.addEventListener(MouseEvent.MOUSE_UP, drop);
startDrag();
parent.addChild(this);
}
function drop(evt:MouseEvent):void
{
stage.removeEventListener(MouseEvent.MOUSE_UP, drop);
stopDrag();
if(hitTestObject(target))
{
visible = false;
target.alpha = 1;
Object(parent).match();
}
x = origX;
y = origY;
}
}
}
:
그것은 나에게 오류를 보내! 나는 그것을 해결하는 방법을 모른다.
Map.as는 여기에 코드 패키지 {
import flash.display.*;
import flash.events.*;
public class Map extends MovieClip
{
var dragdrops:Array;
public function Map()
{
// constructor code
dragdrops = [tt1];
var currentObject:DragDrop;
for(var i:uint = 0; i < dragdrops.length; i++)
{
currentObject = dragdrops[i];
currentObject.target = getChildByName(currentObject.name + "_target");
}
}
public function match():void
{
}
}
} 당신의 hitTestObject
방법이 제대로 호출되지 않기 때문에
내 대답 읽기. hitTestObject 메서드는 항상 잘못 호출 된 채로 있습니다. – helloflash