我正在尝试在 SpriteKit(Xcode 7 测试版)中制作像 Doodle Jump 这样的垂直无尽运行者,但不知道如何不断向上移动 Node
。
override func didMoveToView(view: SKView) {
makeBackground()
// Bubble
let bubbleTexture = SKTexture(imageNamed: "bubble.png")
bubble = SKSpriteNode(texture: bubbleTexture)
bubble.position = CGPointMake(CGRectGetMidX(self.frame), CGRectGetMidY(self.frame))
bubble.physicsBody = SKPhysicsBody(circleOfRadius: bubbleTexture.size().height/2)
bubble.physicsBody!.dynamic = false
bubble.physicsBody!.allowsRotation = false
let float = SKAction.moveToY(+yScale, duration: 0.2)
bubble.SKAction.repeatActionForever(runAction(float))
self.addChild(bubble)
}
在回答了您的最新帖子后,碰巧在这里看到了您的帖子;我想我也会回答。
您只需要以下内容,它告诉 SKAction
重复一个 Action 作为参数:
let float = SKAction.repeatActionForever(SKAction.moveToY(+yScale, duration: 0.2))
bubble.runAction(float)
附注:
在 Swift 中,可以将变量命名为例如 float
。但它被广泛反对,因为它有一个一等变量,即 float
。但在 Swift 中,float 是大写的;因此,这里没有冲突。但是,为了避免我们的额头不时被高级程序员折断,我们可以将您的操作命名为,例如,“ float ”,我觉得它很合适,因为“-ing”(连续动词形式或动名词),传达行动感。
关于ios - 如何让节点永远朝一个方向移动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31878668/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) | Powered by Discuz! X3.4 |