【问题标题】:Getting a Sprite to 'follow' another Sprite in SpriteKit在 SpriteKit 中让 Sprite “跟随”另一个 Sprite
【发布时间】:2016-04-15 16:32:39
【问题描述】:

我正在努力自己制作一款简单的“塔防”游戏(既要学习 SpriteKit,又要在游戏开发中涉足)。

我已经完成了大部分游戏,但我的问题是当塔楼向穿过屏幕的敌人“射击”时。

我不太清楚如何将塔“子弹”移到敌人身上。敌人本身静态地移动,点对点,直到它到达它死亡的端点。

但是,子弹需要动态移动它的“路径”,所以我不能使用 moveTo(x: , y:) 方法来移动它,否则它看起来很傻(子弹会直线移动到敌人在子弹初始化时)。

我不确定我是否需要实现路径(即 CGPath),因为坦率地说,我无法完全理解 CGPath 是什么。所以在这里,我对前进的方向有点困惑。

是否有一个简单的函数可以让精灵移动或“跟随”另一个精灵? (在这种情况下,当它们发生碰撞时,我可以简单地删除子弹)。

【问题讨论】:

标签: swift sprite-kit sprite cgpoint


【解决方案1】:

对于每个更新周期,计算从子弹到敌人位置的向量。将其标准化为长度 1。然后通过 SKAction 将子弹移动到此向量的末尾。您必须对移动距离和子弹速度进行一些计算,才能计算出 SKAction 需要多长时间。您可以使用 SKConstraint 旋转子弹以自动面对敌人。

此链接将对矢量内容有所帮助,但稍后我会尝试发布一些代码:

https://www.raywenderlich.com/90520/trigonometry-games-sprite-kit-swift-tutorial-part-1

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多