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

在Phaser 3中用剑击中敌人

如何解决在Phaser 3中用剑击中敌人

我目前在一个使用Phaser 3的小型2D游戏项目中,我对这个框架是全新的,所以在为玩家创建动画时遇到了问题。 我在将剑作为精灵时确实使用了这段代码

this.physics.add.collider(player.sword,enemy,EPT._enemy.beKilled,null,T);

这是“被杀死”的代码

 beKilled(sword,enemy)
   {
      var x =  enemy.body.right;
      var y =  enemy.body.bottom;
      enemy.destroy();
      EPT._item.createItems(x,y);
   },

我的游戏玩家会用剑击中敌人以杀死敌人。每当玩家攻击时,此代码会将剑从0度旋转到90度四分之一圈

 sword.angle += 9;  
 if(sword.angle <= 100  && sword.angle >= 85)
 {
   sword.disableBody(true,true);
   sword.angle = 0;
 }

但是,它没有达到我的预期,剑确实与敌人发生了碰撞,但敌人并未被消灭。 关键是如果剑刚硬到无法改变角度,代码就可以正确运行,那么我认为因为角度变化太快,剑与敌人无法相互碰撞 我希望您能给我一些有关此问题的建议,任何建议或技巧将不胜感激。

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