hitTestObject 在 actionscript 中不工作 class
hitTestObject is not working in actionscript class
我正在尝试测试 .as 文件中定义的子弹是否接触到 .fla 文件中定义的播放器。
我的 .fla 文件中有这个 if 语句
if (spaceBarPressed == true) {
var eb = new EnemyBullet(player)
stage.addChild(eb)
eb.x = enemy.x + 120
eb.y = enemy.y + 120
}
这在我的 .as 文件中
public function EnemyBullet(player) {
addEventListener(Event.ENTER_FRAME, update)
if (this.hitTestObject(player)) {
trace("hit")
}
}
function update(event:Event) {
this.x+=5
}
但我似乎无法让它工作。
我通过将对象播放器发送到 class 中的函数 EnemyBullet 来修复它,并将其存储在 DisplayObject 类型的变量中以在函数更新中引用它。
.fla文件中if语句的内容:
if (spaceBarPressed == true) {
var eb = new EnemyBullet(player)
stage.addChild(eb)
eb.x = enemy.x + 120
eb.y = enemy.y + 120
}
.as 文件的内容
package {
import flash.display.MovieClip;
import flash.display.DisplayObject;
import flash.events.Event
public class EnemyBullet extends MovieClip {
var $thing:DisplayObject
public function EnemyBullet($testObject:DisplayObject) {
$thing = $testObject
addEventListener(Event.ENTER_FRAME, update)
}
function update(e:Event) {
this.x+=5
if ($thing.hitTestObject(this) ) {
trace("HIT")
}
}
}
}
我正在尝试测试 .as 文件中定义的子弹是否接触到 .fla 文件中定义的播放器。
我的 .fla 文件中有这个 if 语句
if (spaceBarPressed == true) {
var eb = new EnemyBullet(player)
stage.addChild(eb)
eb.x = enemy.x + 120
eb.y = enemy.y + 120
}
这在我的 .as 文件中
public function EnemyBullet(player) {
addEventListener(Event.ENTER_FRAME, update)
if (this.hitTestObject(player)) {
trace("hit")
}
}
function update(event:Event) {
this.x+=5
}
但我似乎无法让它工作。
我通过将对象播放器发送到 class 中的函数 EnemyBullet 来修复它,并将其存储在 DisplayObject 类型的变量中以在函数更新中引用它。
.fla文件中if语句的内容:
if (spaceBarPressed == true) {
var eb = new EnemyBullet(player)
stage.addChild(eb)
eb.x = enemy.x + 120
eb.y = enemy.y + 120
}
.as 文件的内容
package {
import flash.display.MovieClip;
import flash.display.DisplayObject;
import flash.events.Event
public class EnemyBullet extends MovieClip {
var $thing:DisplayObject
public function EnemyBullet($testObject:DisplayObject) {
$thing = $testObject
addEventListener(Event.ENTER_FRAME, update)
}
function update(e:Event) {
this.x+=5
if ($thing.hitTestObject(this) ) {
trace("HIT")
}
}
}
}