检测到碰撞时as3中的错误#1010

时间:2014-11-24 07:46:41

标签: actionscript-3 flash

我得到一个TypeError:错误#1010:一个术语未定义且没有属性。                             在Defender / checkcollision()                              在Defender / gameloop()

请告诉我如何解决这个问题。 我给你as3代码

public function startDefender() {
        gamelevel = 3; //need some improvements here;
        isfiring = true;
        gunposx = gun.x;
        gunposy = gun.y;
        bullets = new Array();
        vehicles = new Array();
        missiles = new Array();
        health = 100;
        hits = 0;
        desiredhits = 10;
        _healthmeter._healthbar.width *= health / 100;
        gun.startGun();
        if(gamelevel != 1){
            setinterceptor();
            startinterceptortimer();
        }
        setvehicletimer();
        addEventListener(Event.ENTER_FRAME, gameloop);
    }
public function checkcollision(){   //checks for any collision
        //COLLISION: bullets and vehicles
        if((bullets.length != 0) && (vehicles.length != 0)){
            for(var _b:int = bullets.length - 1; _b >= 0; _b--){
                for(var _v:int = vehicles.length - 1; _v >= 0; _v--){
                    if(bullets[_b].hitTestObject(vehicles[_v])){
                        trace("Sucks");
                        bullets[_b].remove();
                        vehicles[_v].remove();
                        //increase the score and update scoremeter and check for desired hits
                    }
                }
            }
        }

当子弹撞到车辆时我得到了这个错误     TypeError:错误#1010:术语未定义且没有属性。     在Defender / checkcollision()     在Defender / gameloop()

请帮助我...

1 个答案:

答案 0 :(得分:0)

                if(bullets[_b].hitTestObject(vehicles[_v])){
                    trace("Sucks");
                    bullets[_b].remove();
                    vehicles[_v].remove();
                    return;