在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 (将#修改为@)