所以我仍然是Swift的初学者,我目前正在开发一个游戏,该游戏中我想更改在GameScene中创建的标签中表示的整数
func GUI() {
let xpLab: SKLabelNode = SKLabelNode(fontNamed: "Copperplate")
xpLab.fontSize = 14
xpLab.fontColor = .black
xpLab.text = "0"
xpLab.position = CGPoint(x: 300, y: 120)
cam.addChild(xpLab)
let moneyLab: SKLabelNode = SKLabelNode(fontNamed: "Copperplate")
moneyLab.fontSize = 14
moneyLab.fontColor = .black
moneyLab.text = "100"
moneyLab.position = CGPoint(x: 300, y:145)
cam.addChild(moneyLab)
}
我想要的是当我的2个精灵节点之间发生碰撞时,框中的数字增加+50。
在我的GameScene.swift中找到的我的碰撞代码如下
if firstBody.node?.name == "enemy" && secondBody.node?.name == "troop"{
let enemy = firstBody.node as! Enemy
let troop = secondBody.node as! Player
enemy.EnemyHealth -= troop.playerAttack
troop.playerHealth -= enemy.enemyAttack
print(enemy.EnemyHealth)
print(troop.playerHealth)
troop.physicsBody?.applyImpulse(CGVector(dx: -20, dy: 0))
enemy.physicsBody?.applyImpulse(CGVector(dx: 20, dy: 0))
if (enemy.EnemyHealth <= 0) {
firstBody.node?.removeFromParent()
} else if (troop.playerHealth <= 0){
secondBody.node?.removeFromParent()
}
}
所以基本上我想要的是当敌人的生命值小于等于0时,标签中的值将增加+50。如果有人知道该怎么做,将不胜感激