gpt4 book ai didi

ios - 如何在 Swift 中拍摄移动的 Sprite ?

转载 作者:行者123 更新时间:2023-11-29 01:24:02 25 4
gpt4 key购买 nike

我正在尝试让静止的怪物向移动的玩家射击。玩家位置和怪物位置都获得了正确的值,这段代码写在每秒调用的函数中。现在,射弹出现了,但并没有离开怪物。除了 .applyAngularImpulse,我还应该使用其他东西吗?

    let deltaX = player.position.x - monster.position.x
let deltaY = player.position.y - monster.position.y
let angle = atan2(deltaY, deltaX)

monProjectile.physicsBody?.applyAngularImpulse(angle)

最佳答案

更新

查看了您提供的代码后,我怀疑有两点有问题:

1) 您正在指定我在您的项目中看不到的“射弹”图像。

2) 您正在尝试应用角脉冲(即自旋)而不是常规脉冲(即方向加速度)。

要解决第一个问题,请为您的射弹添加一个图像。要解决第二个问题,请考虑将 applyImpulse()CGVector 结合使用。

原始答案

在我的脑海中,有几件事可能会导致这种情况:

1) 你施加了多大的冲动?打印出该值并查看您使用的是哪种数字。

2) 你的抛射物在创建时是否与怪物重叠?如果是这样,它可能会发生碰撞并卡住。

3) 弹丸是否有可能与其他节点完全碰撞,例如背景图片?

您应该考虑为您的 SKViewshowsPhysics 设置为 true,这样您就可以更清楚地看到正在发生的事情。

关于ios - 如何在 Swift 中拍摄移动的 Sprite ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34233788/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com