Swift 3.0 сохраняет счет с помощью SpriteKit

65
5

Я пытаюсь сохранить целое число "highScore", которое сохраняется после закрытия приложения с помощью SpriteKit.

Это. Просто одно целое на одном экране, которое я в конечном итоге установил в своей игре независимо от того, будет ли новый балл выше, чем сохраненный результат.

Я понимаю, что для stackoverflow существует много вариантов, но все они для версий Swift меньше 3.0. Они используют кучу методов и встроенных функций, которые я не понимаю как новичок. После попытки конвертировать все эти параметры в Swift 3.0 и неудачно, я надеюсь, что кто-то может показать мне пример кода, как это сделать.

Я буду рад ответить на любые другие вопросы.

спросил(а) 2021-01-19T16:36:10+03:00 9 месяцев назад
1
Решение
91

Для этой цели вы можете использовать класс UserDefaults.

Если у вас есть какой-либо синглтон GameManager, вы можете определить вычисленную переменную, которая сохраняет и читает из UserDefaults:

var highScore: Int {
get {
return UserDefaults.standard.integer(forKey: "highScore")
}
set {
UserDefaults.standard.set(newValue, forKey: "highScore")
}
}

ответил(а) 2021-01-19T16:36:10+03:00 9 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема