如何使用playerprefs来锁定玩家死亡的等级?

时间:2017-10-16 01:04:55

标签: unity3d

我有60个级别的按钮。 当玩家死亡时,我想用playerprefs锁定一些级别。

例如,当玩家在等级5中死亡时,锁定等级5和等级4并使其从等级3重启。

1 个答案:

答案 0 :(得分:0)

简单的例子是:

public void OnLevelStart(int currentLevel)
{
    PlayerPrefs.SetInt("Last level", currentLevel);
}

private int levelPenaltyOffset = 2;

public int GetLastLevel()
{
    int result = levelPenaltyOffset;
    if (PlayerPrefs.HasKey("Last level"))
    {
        result = PlayerPrefs.GetInt("Last level")
    }
    return result;
}

您需要在更改级别时调用OnLevelStart以保存新值。当您需要了解最后一级玩家时,您将调用GetLastLevel。如果playerprefs没有值(用户尚未启动任何级别)方法返回2(您想要锁定最后一个级别)。所以你可以像这样使用它:

int levelToLoad = GetLastLevel() - levelPenaltyOffset;

在这种情况下,如果玩家尚未开始,您将获得数字0的等级。