私は以前にこれに似た質問をしましたが、答えがうまくいかないようです。
Settings という辞書があります。
var settings = 文字列: 任意
これは、テキスト ファイルを読み取ることによって入力されます - すべて正常に動作します
実行するprintln(settings)
と、必要に応じて塗りつぶされた辞書が返されます。
[monsterRate: 1.0、monsterMinSpeed: 10.0、weaponPickupRate: 10.0、weaponPickupAmount: 50.0、goldPerMonster: 10.0、totalMonsters: 10.0、LevelNum: 1.0、monsterMaxSpeed: 15.0]
実行するとOptional("10.0")println(settings["monsterMinSpeed"])
が返されます
ただし、変数を辞書が保持する値に設定しようとすると、機能しません。
monsterMinSpeed = (settings["monsterMinSpeed"] as? Double) ?? 0.0
monsterMaxSpeed = (settings["monsterMaxSpeed"] as? Double) ?? 0.0
monsterRate = (settings["monsterRate"] as? Double) ?? 0.0
weaponPickupAmount = (settings["weaponPickupAmount"] as? Double) ?? 0.0
weaponPickupKills = (settings["weaponPickupKills"] as? Double) ?? 0.0
goldPerMonster = (settings["goldPerMonster"] as? Double) ?? 0.0
辞書には値がありますが、提供しているキーが存在しないかのように常に 0.0 を使用します - nil を返すため、変数を 0.0 に設定します
誰か助けてくれませんか?