微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Phaser 3 穿甲弹多次命中

如何解决Phaser 3 穿甲弹多次命中

对于一款游戏,我尝试制作能够刺穿敌人的子弹,由于使用了overlap() 函数,这本身就很容易了。 我的问题是子弹多次击中敌人并最终立即杀死他们。

有没有办法说“每个敌人只命中/碰撞一次”?

我的碰撞:

this.scene.physics.add.overlap(
     this.scene.enemyGroup,this.scene.playerProjectiles_PierceEnemies,function (enemy,projectile) {
          enemy.health -= projectile.dmg;
          if (enemy.health == 0) {
              enemy.destroy();
          }
     });

解决方法

您可以为子弹添加“is_live”属性,并在碰撞时将属性更新为 false,然后在您的重叠()函数中仅检查实时子弹。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。