所以,我有这个 Player.as 类文件,代码如下:
private function PressAKey(event:KeyboardEvent):void
{
getDistance();
if(event.keyCode == 32 && placedBomb == false && bombNumber == 0)//space
{
xKey = true;
placeBomb();
placedBomb = true;
}
}
将其与以下 placeBomb() 函数结合使用:
private function placeBomb():void{
MainClass.container.addChildAt(bomb,0);
bomb.x = this.x;
bomb.y = this.y+20;
bombNumber ++;
}
问题来自这个函数,它试图计算玩家和炸弹之间的距离,以便我可以开始建立交互:
private function getDistance():void{
distance = Math.sqrt( ( this.x - MainClass.container.bomb.x ) * ( this.x - MainClass.container.bomb.x ) + ( this.y - MainClass.container.bomb.y ) * ( this.y - MainClass.container.bomb.y ) );
trace(distance);
}
尝试此操作时出现此错误:
TypeError: Error #1010: A term is undefined and has no properties.
at Player/getDistance()
at Player/PressAKey()
你知道我错过了什么吗?这绝对是一个范围界定问题,那么我需要包括什么才能让整个班级都识别炸弹?