Я создаю игру, и я пытаюсь сохранить запись всех убитых врагов, но мой узел SKLabel не обновляется. Вот как я его внедряюЦелое значение не обновляется
class GameScene: SKScene, SKPhysicsContactDelegate {
var Enemy1KillCounter:Int = 0
var Enemy1KillCounterLabel = SKLabelNode()
override func didMoveToView(view: SKView) {
createEnemyKilledLabel()
}
func createEnemyKilledLabel() {
Enemy1KillCounterLabel.text = "\(Enemy1KillCounter)"
Enemy1KillCounterLabel.fontSize = 65
Enemy1KillCounterLabel.fontColor = SKColor .blackColor()
Enemy1KillCounterLabel.position = CGPointMake(400, 400)
self.addChild(Enemy1KillCounterLabel)
}
func updateEnemy1KillCounter() {
Enemy1KillCounter = Enemy1KillCounter + 1
print(Enemy1KillCounter)
}
// I use the next method because i call this method in my enemy class
when the enemy is "killed"
func Enemy1DieG() {
updateEnemy1KillCounter()
}
Кто-нибудь знает, почему мой ярлык не обновляется?
Я позвонил в мою функцию didMoveToView. Как обновить текст? использовать метод обновления? потому что у меня также есть метод печати там для моего отладчика, и он не обновляется либо он просто говорит 1 каждый раз, а не добавляет 1 каждый раз @MirekE – gkolman
Да, поместите его в функцию обновления. Не уверен, почему ваша печать не отражает добавление. Положите еще одну печать перед добавлением, чтобы проверить, что вы не присваиваете 0 где-то ... – MirekE
Я назначил 0 в качестве базового значения моего целого числа. Я думаю, что то, что продолжает происходить, - это мое целое число, которое по умолчанию остается равным 0. но почему бы не изменить его ? @MirekE – gkolman