我有个问题,希望各位高手帮帮忙
在飞行射击游戏里,玩家控制飞机的子弹用attachMove命令来提取,我是这样写的
function attack(){
i=1000*Math.random();
attachMovie("zidan","zidan"+i,i);
with(_root["zidan"+i]){
_x=_root.player._x;
_y=_root.player._y;
}
}
setInterval(attack,50);
上面是写在主场景时间轴第一真上的,_player是玩家控制飞机的实例名,然后在元件子弹里有个子元件,上面写
onClipEvent(enterFrame){
_parent._x+=5;
}
我的问题是怎么判断子弹打中了敌人,hitTest命令要放在什么地方?我如果放在子弹元件的子元件里,就是
onClipEvent(enterFrame){
if(this.hitTest(enemy)){
enemy.gotoAndPlay("baoza")
}
_parent._x+=5;
}上面加一行,这样可以实现检测碰撞,但是这样的话只对一个敌人有效果,如果有10个敌人,那不是要加上10个判断语句,特别麻烦。
我又想把碰撞检测命令加在敌人元件上面,但是我写if(this.hitTest(_root["zidan"+i])){的时候,这样没效果,系统似乎不认这个_root["zidan"+i]名字。
希望各位高手帮帮我,这到底该怎么做?