首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >尝试让AS3检测冲突,但出现错误1009 (空对象)

尝试让AS3检测冲突,但出现错误1009 (空对象)
EN

Stack Overflow用户
提问于 2017-03-11 15:59:07
回答 1查看 24关注 0票数 1

我刚刚开始学习AS3,因为我必须为一个任务创建一个简单的游戏,我有两个名为obj_laser和obj_enemy1的对象,但当我运行我创建的冲突代码时,它总是出现错误1009。这是一些代码,我知道它很乱。

代码语言:javascript
复制
stage.addEventListener(Event.ENTER_FRAME, runGame);
function runGame(event: Event): void {

//发射激光

代码语言:javascript
复制
LASERALARM++;
if (LASERALARM >= 10) {
    var laser: obj_laser = new obj_laser
    var laser2: obj_laser = new obj_laser
    var flare: obj_flare = new obj_flare
    var flare2: obj_flare = new obj_flare
    laser.x = obj_spaceship.x + 12
    laser.y = obj_spaceship.y
    laser2.x = obj_spaceship.x - 12
    laser2.y = obj_spaceship.y
    addChild(laser);
    addChild(laser2);
    flare.x = obj_spaceship.x + 12
    flare.y = obj_spaceship.y
    flare2.x = obj_spaceship.x - 12
    flare2.y = obj_spaceship.y
    addChild(flare);
    addChild(flare2);
    LASERALARM = 0;

//移动激光

代码语言:javascript
复制
    laser.addEventListener(Event.ENTER_FRAME, moveLaser);
    function moveLaser(event: Event): void {
        laser.y -= 5;
        laser2.y -= 5;
    }
}

//派生敌人

代码语言:javascript
复制
ENEMYALARM++
if (ENEMYALARM >= (randomRange(100, 400))) {
    var enemy1: obj_enemy1 = new obj_enemy1
    enemy1.x = (randomRange(15, 165));
    enemy1.y = -10;
    addChild(enemy1);
    ENEMYALARM = 0;
    //Move Enemy

    enemy1.addEventListener(Event.ENTER_FRAME, moveEnemy);
    function moveEnemy(event: Event): void {
        enemy1.y += 2;
    }
if (laser.hitTestObject(enemy1)) {
    parent.removeChild(laser);
    parent.removeChild(enemy1);
}
}
EN

回答 1

Stack Overflow用户

发布于 2017-03-11 19:37:11

从本质上讲,您正在尝试对没有值的变量执行某些操作。

单击错误应该会将您带到代码中分解的位置。此外,开始在代码的不同位置跟踪您的变量,以尝试确定它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42732834

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档