我得到错误:空对象引用的方法。我很困惑,不知道真正的原因是什么。
所以我在舞台上有一个播放器movieClip,它有一个“player_mc”实例,它将通过我的Document类并进入Player类。
播放器.as
import flash.display.*;
import flash.events.*;
public class Player extends MovieClip
{
public var myPlayer:MovieClip;
public function Player(player:MovieClip)
{
myPlayer = player;
addEventListener(Event.ENTER_FRAME,on_enter);
}
文档.as
import flash.display.*;
import Components.Player.Player;
public class Game_Main extends MovieClip
{
public var player:Player;
public function Game_Main()
{
player = new Player(player_mc);
}
}
现在我认为这就是问题所在。我在舞台上有一个 green_enemy 电影剪辑,它有基类 Enemy。
敌人
import flash.display.MovieClip;
import Components.Player.Player;
import flash.events.Event;
public class Enemy extends MovieClip
{
var theplayer:Player;
public function Enemy()
{
this.addEventListener(Event.ENTER_FRAME,on_enter);
}
public function on_enter(e:Event):void
{
if (this.hitTestObject(theplayer.myPlayer)) //calls player_mc from Player class
{
trace("hi");
}
}
}
我喜欢在 Enemy 功能上做的是,当 Enemy 与“player_mc”(在舞台上)发生碰撞时,它会做一些事情。也许我的代码是错误的。
任何帮助/提示将不胜感激。谢谢!