【问题标题】:How to move spriteKit node up and down with a button如何使用按钮上下移动 spriteKit 节点
【发布时间】:2014-07-02 17:39:57
【问题描述】:

我想使用一个按钮上下移动我的精灵。由于您不能在 sprite Kit 中使用 UIButtons,所以我使用不同的 SpriteKitNodes。节点将是箭头图像。但我想使用箭头图像来移动我的原始精灵,但只需触摸它。我以为我会使用 SKAction,但我被卡住了。是否可以使用另一个精灵移动一个精灵?

【问题讨论】:

    标签: ios xcode sprite-kit


    【解决方案1】:

    SpriteKit 中可能没有为按钮提供任何规定,但可以轻松地将 SKSpriteNode 子类化以充当按钮。我创建了这样一个类,可以在 GitHub here 上找到。

    不建议使用SKAction 进行基于方向按钮的移动。相反,您需要为方向按钮使用标志,您将在 -update: 方法中移动节点。

    将标志作为实例变量进行维护。

    @implementation MyScene
    {
        BOOL upDirection;
        BOOL downDirection;
    }
    

    -initWithSize: 方法中将它们初始化为 FALSE。

    这就是你应该如何处理 -update 方法中的标志:

    -(void)update:(CFTimeInterval)currentTime
    {
        /* Called before each frame is rendered */
    
        if (upDirection)
        {
            myNode.position = CGPointMake(myNode.position.x, myNode.position.y + 5); //Increment value can be adjusted
        }
    
        if (downDirection)
        {
            myNode.position = CGPointMake(myNode.position.x, myNode.position.y - 5); //Decrement value can be adjusted
        }
    }
    

    【讨论】:

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