我有两个场景MAP和GAME。
在MAP上,我想使用按钮上的变量(在检查器中)在GAME中构建关卡。
我有三种游戏模式{1,2,3}
我也有一个需要达到的分数{我希望能够设置此分数}
单击按钮后,我希望它保存到PlayerPrefs,然后在GAME中将读取保存了哪些PlayerPrefs,然后加载该数据。
按钮脚本
public class LevelButton : MonoBehaviour {
public float GameScoreNeeded;
public int GameMode;
}
public void MakeLevel()
{
PlayerPrefs.SetInt("GameMode") = GameMode;
PlayerPrefs.SetFloat("GameScoreNeedeed") = GameScoreNeeded;
}
在游戏上
void Start(){
BuildLevel();
}
public void BuildLevel(){
gameMode = PlayersPrefs.GetInt("GameMode");
gameScoreNeeded = PlayersPrefs.GetFloat("GameScoreNeeded");
}
//Rest of code
我认为这是需要发生的,但是我似乎无法从检查器中保存
int
。 最佳答案
但我似乎无法从检查员那里获取该整数以进行保存。
PlayerPrefs.SetInt("GameMode") = GameMode;
PlayerPrefs.SetFloat("GameScoreNeedeed") = GameScoreNeeded;
您没有正确使用
PlayerPrefs
。它有两个参数。键和值。加载代码似乎正确,但保存代码却不正确。以下是保存值的正确方法:PlayerPrefs.SetInt("GameMode", GameMode);
PlayerPrefs.SetFloat("GameScoreNeedeed", GameScoreNeeded);
在上面的代码之后调用
PlayerPrefs.Save();
是有意义的。之后,您可以使用PlayersPrefs.GetInt
或PlayersPrefs.GetFloat
读取保存的值。关于c# - 如何使用检查器在单击按钮时设置PlayerPrefs,以切换场景?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38337822/