I am afraid that didnt work.
For the code you pasted above, shouldn’t a “gamedata.json” already exist, or else in what file will the table saved?
Here’s my current code for menu.lua . The code you gave above is in scene:show()
local composer = require( "composer" ) local scene = composer.newScene() local widget = require( "widget" ) local myData = require( "mydata" ) local mydata={} local json=require("json") local loadsave = require("loadsave") mydata = loadsave.loadTable("gamedata.json") local function handleCancelButtonEvent( event ) if ( "ended" == event.phase ) then composer.gotoScene( "mainscreen", { effect="crossFade", time=333 } ) end end local function handleLevelSelect( event ) if ( "ended" == event.phase ) then myData.settings.currentLevel = event.target.id composer.removeScene("level1", false ) composer.removeScene("level2", false ) composer.removeScene("level3", false ) composer.removeScene("level4", false ) composer.gotoScene(event.target.id, { effect="crossFade", time=333 } ) end end function scene:create( event ) local sceneGroup = self.view --images and buttons code goes here end function scene:show( event ) local sceneGroup = self.view mydata = loadsave.loadTable("gamedata.json") if mydata == nil then mydata={} mydata.unlockedlevels=1 mydata.maxlevels=50 loadsave.saveTable(mydata, "gamedata.json") end if ( event.phase == "did" ) then end end function scene:hide( event ) local sceneGroup = self.view if ( event.phase == "will" ) then end end function scene:destroy( event ) local sceneGroup = self.view end scene:addEventListener( "create", scene ) scene:addEventListener( "show", scene ) scene:addEventListener( "hide", scene ) scene:addEventListener( "destroy", scene ) return scene
Any further help would be appreciated.