Так что я создал NSUserDefault хранить строку в моей GameViewControllerNSUserDefaults правильно хранения строк в SpriteKit Swift
NSUserDefaults.standardUserDefaults().setObject("_1", forKey: "SkinSuffix")
Идея заключается в том, что хранит суффикс, который я придаю в конец имени изображения в порядке чтобы сохранить, какой скин персонажа должен использовать игрок.
Когда я звоню значение в моем классе GameScene как так
var SkinSuffix = NSUserDefaults.standardUserDefaults().stringForKey("SkinSuffix")
println(SkinSuffix)
печатает «факультативным (» _ 1 «)» вместо просто «_1» так что, когда я пытаюсь изменить имя моего файла изображения например, он не загружает файл изображения
hero = SKSpriteNode(texture: heroAtlas.textureNamed("10Xmini_wizard\(SkinSuffix)"))
Как исправить эту проблему?
Знаете ли вы, что такое опции в Swift? 'stringForKey()' возвращает 'String?' - знаете ли вы, что означает знак вопроса? –
В основном это означает, что он может обрабатывать ответ, который делает/не существует (nil) правильно? И разворачивание в основном делает необязательным необязательным ... говоря, что оно должно иметь значение (не может быть nil). Верный? –