【问题标题】:How to move sprites immediately inside the loop (FOR,WHILE ..)如何在循环内立即移动精灵(FOR,WHILE ..)
【发布时间】:2013-11-03 11:04:33
【问题描述】:

我正在制作一个益智游戏,当我尝试使用 SKAction moveTo 将精灵移动到新位置时遇到问题。

这是我的情况:

我在列表中有 4 个精灵,我想通过将它们放入 for 循环并使用 moveTo 动作将它们移动到新位置。但是 moveTo 不能立即移动精灵,它需要等到循环完成才能移动精灵。问题是我使用精灵位置作为停止循环的条件。 (例如:如果精灵位置达到限制常数,它不能再移动,循环将被打破)

我的问题:我们有什么办法让精灵在循环内立即移动?或者你知道解决我的案子的更好方法吗?

我们将不胜感激。

谢谢。

【问题讨论】:

    标签: game-engine sprite-kit skspritenode


    【解决方案1】:

    不要使用for 循环,而是使用重复计时器。当计时器触发时,移动您的精灵并测试是否使计时器无效(而不是退出循环)。

    【讨论】:

    • 你能告诉我更清楚一点吗?我刚开始学习,所以对我来说有点复杂。非常感谢你,即使你减去我的观点:D
    • 不,我不知道是谁给了-1。尝试在文档中阅读有关 NSTimer 的信息。你告诉它多久触发一次以及每次调用什么方法。在它运行该方法之后,会发生正常的运行循环,例如屏幕绘制。完成后,您将使其无效并停止。
    • 非常感谢,我会努力的。很抱歉,我还没有权限为你投票。我会尽我所能。
    猜你喜欢
    • 2020-09-18
    • 2019-11-10
    • 2018-11-05
    • 1970-01-01
    • 2018-10-14
    • 1970-01-01
    • 2017-04-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多