Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/413.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在Phaser.js中检测重叠?_Javascript_Html_Css_Game Physics_Phaser Framework - Fatal编程技术网

Javascript 如何在Phaser.js中检测重叠?

Javascript 如何在Phaser.js中检测重叠?,javascript,html,css,game-physics,phaser-framework,Javascript,Html,Css,Game Physics,Phaser Framework,我是Phaserjs的新手,我正在尝试做一个射击游戏。我想让伤害函数在子弹碰到plane2时触发,那是绿色的平面。有人能告诉我我做错了什么吗? 这是我的密码: var配置={ 类型:Phaser.AUTO, 宽度:800, 身高:800, 家长:“游戏”, 物理学:{ 默认值:“arcade”, 拱廊:{ 调试:对,, 重力:{y:0} } }, 场景:{ 预加载:预加载, 创建:创建, 更新:更新 } }; var plane1 var plane2 var-hp; var-botHp; 函

我是Phaserjs的新手,我正在尝试做一个射击游戏。我想让伤害函数在子弹碰到plane2时触发,那是绿色的平面。有人能告诉我我做错了什么吗? 这是我的密码:

var配置={
类型:Phaser.AUTO,
宽度:800,
身高:800,
家长:“游戏”,
物理学:{
默认值:“arcade”,
拱廊:{
调试:对,,
重力:{y:0}
}
},
场景:{
预加载:预加载,
创建:创建,
更新:更新
}
};
var plane1
var plane2
var-hp;
var-botHp;
函数预加载(){
this.load.setBaseURL('https://shoot.abaanshanid.repl.co/assets');
这个.load.image(“bg”、“bg.jpg”);
这个.load.image(“plane1”、“plane1.png”);
这个.load.image(“plane2”、“plane2.png”);
这个.load.image(“bullet”、“bullet.png”);
}
函数创建(){
this.background=this.add.image(400400,“背景”);
plane1=this.physics.add.sprite(400700,“plane1”);
plane2=this.physics.add.sprite(400100,“plane2”);
plane1.enableBody=真;
}
函数更新(){
keys=this.input.keyboard.createCursorWorkeys();
if(键。左。isDown){
plane1.x=plane1.x-7.5;
}else if(key.right.isDown){
plane1.x=plane1.x+7.5;
}else if(key.space.isDown){
var bullet=this.physics.add.sprite(plane1.x600,“bullet”);
bullet.enableBody=true;
setInterval(函数(){
bullet.y=bullet.y-25;
},50);
这个。物理。重叠(子弹,飞机2,这个。损坏);
} 
}
功能损害(){
console.log(“更少的HP”)
}
var game=new Phaser.game(配置);

答复
这项工作:

this.physics.add.overlap(bullet,plane2,damage);
但它有点滞后。我试图在撞击时摧毁子弹,我还发现:

this.physics.add.collider(bullet,plane2,damage);