我正在使用Twitter API来发布高分,但它似乎正在正确地收集得分变量,但是它没有在他们玩转的时候得到高分值。
示例:我是第一次开始游戏而我的高分为0.我在游戏结束时获得20分,并且想要发推,但我的推文显示为0.在下一场比赛中显示为20.
所以它每次基本落后1转并显示之前的高分。我感觉它是一个基本的错误,但我看不到,绕过它。
我有两个文件可以保存排行榜等的分数。
local scoring = require("helpers.scoring")
local utils = require("helpers.globals")
function scene:createScene( event )
local group = self.view
utils.loadHighscoreInfo()
- Gameover -
if miles > utils.highscore then
utils.highscore = miles
utils.saveHighscoreInfo()
scoring.setHighScore( utils.highscore, utils.leaderboard )
end
- 推特设立 -
local options = {
message = " I scored " .. utils.highscore .. " Miles ",
listener = tweetCallback
}
function tweetCallback( event )
if ( event.action == "cancelled" ) then
print( "User cancelled" )
else
native.showPopup( "twitter", options )
print( "Thanks for the tweet!" )
end
end
答案 0 :(得分:1)
在处理推文之前更新选项消息。
local options = {
message = " I scored " .. utils.highscore .. " Miles ",
listener = tweetCallback
}
当utils.highscore更改时,它不会动态更新,它会在您声明它时(第一次运行每个游戏)获取值的快照。因此,您只需在游戏结束时使用
更新它options.message = "I scored" .. utils.highscore .. " Miles "