Ich habe 2 verschiedene Lua-Dateien, main.lua
und game_model.lua
. Ich versuche, einige Details in einer JSON-Datei zu speichern (I gegoogelt, dass eine JSON-Datei wäre der beste Weg, die Einstellungen eines Benutzers und Punkte speichern), aber ich bin immer folgende Fehlermeldung:Versuch zu indizieren lokal (ein boolescher Wert)
Error: File: main.lua Line: 11 Attempt to index local 'game' (a boolean value)
Warum bekomme ich diesen Fehler und wie kann ich ihn beheben? Hier
ist der Code in meinem main.lua
:
--Main.lua
display.setStatusBar(display.HiddenStatusBar)
local composer = require("composer")
local game = require("data.game_model")
myGameSettings = {}
myGameSettings.highScore = 1000
myGameSettings.soundOn = true
myGameSettings.musicOff = true
myGameSettings.playerName = "Andrian Gungon"
game.saveTable(myGameSettings, "mygamesettings.json")
composer.gotoScene("scripts.menu")
game_model.lua
(im data
Unterverzeichnis) enthält dieser Code:
--game_model.lua (located at data/game_model.lua)
local json = require("json")
function saveTable(t, filename)
local path = system.pathForFile(filename, system.DocumentsDirectory)
local file = io.open(path, "w")
if (file) then
local contents = json.encode(t)
file:write(contents)
io.close(file)
return true
else
print("Error!")
return false
end
end
function loadTable(filename)
local path = system.pathForFile(filename, system.DocumentsDirectory)
local contents = ""
local myTable = {}
local file = io.open(path, "r")
if (file) then
local contents = file:read("*a")
myTable = json.decode(contents);
io.close(file)
return myTable
end
return nil
end
Vielen Dank für Ihre Antwort ... :) –