我几乎完成了我的游戏(只是图形和这个要做),但不知道如何保存高分。我搜索了电晕的apis,但没有找到我需要的东西。我也下载了这个http://techority.com/2011/12/28/ego-easy-saving-and-loading-in-your-corona-apps/,但它一直保存错误的高分......
非常感谢有关最佳和最简单方法的任何想法,
提前感谢。
答案 0 :(得分:1)
我使用以下内容来保存附加到我游戏中的高分。它不是您想要的解决方案,但您应该能够根据需要对其进行修改。
我宣布一个名为highscore的全局变量,用于跟踪所有分数。由于我有一个关卡选择屏幕和高分屏幕,我决定在我的菜单中声明这些,这样我就可以在导航游戏之前加载它们并提供它们。
然后我可以通过简单地调用Highscores[levelNumber]
来获得每个级别的每个单独的高分。当我想更改高分时,我只需致电Highscores[1] = 500
并记得致电saveHighscores()
将以下内容放入主
local highscoreHandler = require("highscoreHandler")
highscores =
{
0, 0, 0, 0, 0
}
highscores = loadHighscores()
并将其放入名为highscoreHandler.lua
的单独文件中local json = require "json"
function loadHighscores()
local base = system.pathForFile( "highscores.json", system.DocumentsDirectory)
local jsoncontents = ""
local highscoresArray = {}
local file = io.open( base, "r" )
if file then
local jsoncontents = file:read( "*a" )
highscoresArray = json.decode(jsoncontents);
io.close( file )
return highscoresArray
end
return highscores
end
function saveHighscores()
local base = system.pathForFile( "highscores.json", system.DocumentsDirectory)
local file = io.open(base, "w")
local jsoncontents = json.encode(highscores)
file:write( jsoncontents )
io.close( file )
end