コード例 #1
0
    /// <summary>
    /// 写入初始化游戏进度存档
    /// </summary>
    public void CreateInitSaveFile()
    {
        PlayerPos     = initPlayerPos;
        PlayerForward = initPlayerForward;
        PlayerScene   = initPlayerScene;
        Url2Point     = new Dictionary <string, int>()
        {
            { "Player", (int)COLOR_TYPE.NULL },
            { "BKeyFlag", 0 }
        };

        FormatSaveFile saveFile = new FormatSaveFile
        {
            scene = PlayerScene,
            pos   = PlayerPos,
            euler = PlayerForward,
            cache = Url2Point
        };

        SerializeTool.ToFile(saveFile, savePath, saveFileName);

        string hash = SerializeTool.GetMD5Hash(savePath + @"\" + saveFileName);

        SerializeTool.ToFile(hash, savePath, hashFileName);
    }
コード例 #2
0
    /// <summary>
    /// 外部调用的存档命令
    /// </summary>
    public void OnGameSave()
    {
        // TODO:
        // 序列化文件存档的动作
        if (LevelManager.Instance != null)
        {
            var player = LevelManager.Instance.PlayerTrans;
            PlayerPos     = player.position;
            PlayerForward = player.forward;
        }
        SerializeTool.ToFile(
            new FormatSaveFile
        {
            scene = PlayerScene,
            pos   = PlayerPos,
            euler = PlayerForward,
            cache = Url2Point
        },
            savePath, saveFileName);

        string hash = SerializeTool.GetMD5Hash(savePath + @"\" + saveFileName);

        SerializeTool.ToFile(hash, savePath, hashFileName);
    }
コード例 #3
0
    public bool SaveFileIntact()
    {
        string hash = SerializeTool.GetMD5Hash(savePath + @"\" + saveFileName);

        return(hash.Equals(SerializeTool.ReadFile(savePath + @"\" + hashFileName)));
    }