使用此代码,我总是得到当前分数,而我想保存高分我尝试一切来解决它,但一无所获。
我想保存 highscore 的 hgscr ,当我用 loadPlayer() 调用时,我想与当前得分的 topScore 进行比较。毕竟,我将当前分数和高分数据称为我的分数页面。
播放器页面
if (isStarted == true)
{
if (rb2d.velocity.y > 0 && transform.position.y > topScore)
{
topScore = transform.position.y; // Current Score
}
scoreText.text = "Score: " + Mathf.Round(topScore).ToString();
}
PlayerData data = SaveSystem.LoadPlayer();
if (topScore > data.hgscrp) // current score > where I get highscore data from save page
{
hgscr = topScore; // save highs score for display on score page and compare current score after game restart
scsc = Mathf.Round(topScore).ToString(); // save current score for display on score page
SaveSystem.SavePlayer(this);
}
else
{
scsc = Mathf.Round(topScore).ToString();
SaveSystem.SavePlayer(this);
}
}
保存页面
public string cscore;
public float hgscrp;
public PlayerData (Controller player)
{
cscore = player.scsc;
hgscrp = player.hgscr;
}