0
我在Unity中创建了一个相当基本的二维滚动游戏,其中一种游戏模式是生存。当你死的时候,这个屏幕会加载并允许你输入你的高分,一旦按下按钮,高分将被保存到高分表中。Unity中使用PlayerPrefsX的高分逻辑
然而,虽然我可以取代它的分数高于,但我不能为我的生活想到将替代的分数放置在它下面的位置的逻辑,那么该分数将下降一个,然后下一个分数等
我在的阶段是在下面,用代码简单地取代所有低于当前商店删除的高分,因为它不是什么需要做的。我现在有保存到playerprefsX int数组五个通用的分数,所以我知道所有的下面的代码的工作,它只是删除所有的分数下来一个和删除最后的比分是证明我
public class high_score_input : Game_Over {
private string name = "highscores";
private int score;
public int[] highscores = new int[5];
// Use this for initialization
void Start() {
GameObject levelcontroller = GameObject.Find ("levelcontroller");
survival_mode survival = levelcontroller.GetComponent<survival_mode>();
score = survival.setScore();
highscores = PlayerPrefsX.GetIntArray(name);}
void OnGUI()
{
base.OnGUI();
if (GUI.Button (new Rect (Screen.width/10, 250, 120, 30), "Save High Score"))
{
for(int i = 0;i<highscores.Length;i++)
{
if(score>highscores[i])
{
}
}
PlayerPrefsX.SetIntArray(name, highscores);
}
}
那么这不仅会检查最后一个插槽中的分数吗? – user3617507
是的,但这就是为什么那种类型。您只需检查新分数是否超过*最低*分数。第一类使操作更容易。第二类确保你的分数保持秩序。 – rutter
啊是的,我想我明白你的意思 – user3617507