unity3d - 单击按钮开始最高解锁级别(场景)
问题描述
我是开发新手,所以我的游戏需要一些帮助!在我的游戏中,我有 2 个按钮,一个是“播放”,另一个是“关卡选择”,我卡在“播放”按钮上,需要制作一个始终加载已解锁的最高级别的脚本,不是当前级别,而是最高级别。这是我用于级别管理器的代码
public List<Button> levelButton;
public Sprite lockimage;
public bool delete;
private void Start()
{
int saveIndex = PlayerPrefs.GetInt("SaveIndex");
for (int i = 0; i < levelButton.Count; i++)
{
if (i <= saveIndex)
{
levelButton[i].interactable = true;
}
else
{
levelButton[i].interactable = false;
levelButton[i].GetComponent<Image>().sprite = lockimage;
}
}
}
public void LevelSelect()
{
int level = int.Parse(EventSystem.current.currentSelectedGameObject.name);
SceneManager.LoadScene(level);
}
public void PlayGame()
{
//code here
}
public void ResetGame()
{
PlayerPrefs.SetInt("SaveIndex", 0);
SceneManager.LoadScene(0);
}
public void DontResetGame()
{
SceneManager.LoadScene(0);
}
}
解决方案
SceneManager.LoadScene(PlayerPrefs.GetInt("SaveIndex"));
编辑:添加一些信息/上下文。
我意识到您根据从 PlayerPrefs 获得的 int save_index 值在启动函数上设置了级别按钮的交互性。
从那里,我假设您可以使用 PlayGame 函数上的相同值直接加载关卡。
请注意,如果 PlayerPrefs 上还没有“SaveIndex”键,我编写的代码将引发错误
推荐阅读
- kubernetes - 如果通过附加现有 PV/PVC 重新安装 pod,如何恢复所有存储库?
- flutter - 如何显示int值
- javascript - 我想通过传递 lat 和 log 从开放式笼子地理编码的 promise aaray 中检索位置,但不知道如何检索该值
- nested - ScrollView 我无法控制设计(在嵌套的 ScrollView 中向上或向下我的元素超过屏幕大小
- java - 当数据从 Activity 传递到 Fragment 时, Fragment 中的 RecycleView 什么也不显示
- reactjs - 无法对未安装的组件执行 React 状态更新 - 内存泄漏?
- sql - 让 Excel 执行 SQL 脚本并导入 SQL 运行脚本后出现的表
- r - 在 NA 大于一的 dplyr 过滤器行中
- networking - 我收到一条错误消息,提示我的 ovs-ofctl 命令错误
- python - 有没有办法延迟对 matplotlib 滑块的 on_changed() 调用?