如何创建新的保存并加载它?

时间:2017-01-21 12:17:55

标签: c# unity3d unity5 unity3d-2dtools

我正在尝试做什么:

Main menu

当我按下播放按钮时,面板上显示+。我为+按钮

创建了一个简单的脚本
    public void addSave()
{
    if (i != 0)
    {
        File.Delete("Assets/Game1.unity");//If there is already a save then delete it
        i = 0;
    }
    if (i == 0)
    {
        File.Copy("Assets/Game.unity", "Assets/Game1.unity");//And copy the scene to make the new one.
        OpenSave.SetActive(true);
        i++;
    }
}

当我按下Save image时,它必须加载Game1.unity,但它说:“无法加载场景'Game1',因为它尚未添加到构建设置或AssetBundle尚未加载装“。那么如何将其添加到脚本中的构建设置中呢?

我找到this但是如何在游戏玩法之前制作新场景?

编辑:我已添加Game1.unity手动构建设置,因此+按钮只会重置游戏。但也许有更好的方法来做到这一点?

或许有更好的方法可以做到这一点?

1 个答案:

答案 0 :(得分:1)

您不应该使用场景来保存和加载游戏。实际上,最好只使用主场景来处理所有事情(Unity场景系统很丑陋而且很慢)。

您可以根据需要使用任何序列化方法,例如xml,json,协议缓冲区或资源商店中的那些。对于这类事情,序列化更加灵活和易于管理。