gpt4 book ai didi

ios - 基于 Swift SpriteKit 分数更改背景

转载 作者:可可西里 更新时间:2023-11-01 01:39:31 25 4
gpt4 key购买 nike

我正在尝试构建一个游戏 (Swift Sprite Kit),其中场景的背景会在用户通过一定数量的分数后立即改变。这不起作用(在 GameScene 中)

func addSwitchBackgrounds() {

let pointsLable = MLPointsLabel(num: 0)

if (pointsLable == 30) {

let backgroundTexture = SKTexture (imageNamed: "Store")
let backgroundImage = SKSpriteNode (texture: backgroundTexture,size:view!.frame.size)
backgroundImage.position = view!.center

}
}

谁能帮忙?

最佳答案

这个简单的例子应该为您指出正确的方法(只需复制并粘贴以查看它是如何工作的)...

import SpriteKit

class GameScene: SKScene, SKPhysicsContactDelegate {

let backgroundNode = SKSpriteNode(imageNamed: "background")

var score = 0

let label = SKLabelNode(fontNamed: "ArialMT")

override func didMoveToView(view: SKView) {
//setup scene


backgroundNode.position = CGPoint(x: CGRectGetMidX(self.frame), y: CGRectGetMidY(self.frame))

label.position = CGPoint(x: CGRectGetMidX(self.frame), y: CGRectGetMidY(self.frame))

label.text = "SCORE : 0"

self.addChild(backgroundNode)

self.addChild(label)

}


override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {


score++

if(score == 5){

self.backgroundNode.texture = SKTexture(imageNamed: "background_v2")



}
label.text = "SCORE : \(score)"

}


}

首先,您创建一个 backgroundNode 属性,然后在代码中更改其纹理。您不必在更新方法中不断检查当前分数。只有当分数增加时,您才能进行该检查。我不确定你在哪里调用 addSwitchBackgrounds,但只是想让你知道,没有必要为此使用 update: 方法。

关于ios - 基于 Swift SpriteKit 分数更改背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31476354/

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