/// <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); }
/// <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); }
public bool SaveFileIntact() { string hash = SerializeTool.GetMD5Hash(savePath + @"\" + saveFileName); return(hash.Equals(SerializeTool.ReadFile(savePath + @"\" + hashFileName))); }