From 1597d5382671fd3bd8d88bdfec7340f001180a75 Mon Sep 17 00:00:00 2001 From: liuyu <272912176@qq.com> Date: Wed, 4 Sep 2024 17:12:56 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AF=BB=E5=8F=96=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/Scripts/CXX/Score/ScoreBase.cs | 6 +++++- Assets/Scripts/CXX/Score/Score_1002.cs | 17 ++++++++++++++++- .../ExcelData/DataContainer/TB_UserExamStat.cs | 5 +++++ Assets/Scripts/Project/Manager/ReconnectMgr.cs | 15 ++------------- 4 files changed, 28 insertions(+), 15 deletions(-) diff --git a/Assets/Scripts/CXX/Score/ScoreBase.cs b/Assets/Scripts/CXX/Score/ScoreBase.cs index 87eb5c6..7c0c3e5 100644 --- a/Assets/Scripts/CXX/Score/ScoreBase.cs +++ b/Assets/Scripts/CXX/Score/ScoreBase.cs @@ -82,5 +82,9 @@ public abstract class ScoreBase : MonoBehaviour /// /// 记录现场环境中scoreBase的各项List缓存 /// - public abstract void SaveSceneBufferList(); + public abstract string SaveSceneBufferList(); + /// + /// 还原现场环境中scoreBase的各项List缓存 + /// + public abstract void LoadSceneBufferList(string sceneInfo); } diff --git a/Assets/Scripts/CXX/Score/Score_1002.cs b/Assets/Scripts/CXX/Score/Score_1002.cs index 8cfec02..bc603de 100644 --- a/Assets/Scripts/CXX/Score/Score_1002.cs +++ b/Assets/Scripts/CXX/Score/Score_1002.cs @@ -465,7 +465,7 @@ public class Score_1002 : ScoreBase /// 保存场景中List缓存,用于断线重连 /// /// - public override void SaveSceneBufferList() + public override string SaveSceneBufferList() { BufferTemp_1002 tmp = new BufferTemp_1002(); tmp.TestPen3list = TestPen3list; @@ -477,6 +477,21 @@ public class Score_1002 : ScoreBase tmp.currentInstallTestJieXian = currentInstallTestJieXian; string sceneInfo = JsonConvert.SerializeObject(tmp, Formatting.Indented); Debug.Log("==场景信息:" + sceneInfo); + return sceneInfo; + //throw new System.NotImplementedException(); + } + + public override void LoadSceneBufferList(string sceneInfo) + { + BufferTemp_1002 tmp = new BufferTemp_1002(); + tmp = JsonMapper.ToObject(sceneInfo); + TestPen3list = tmp.TestPen3list; + InSwitchCloseYDList = tmp.InSwitchCloseYDList; + InSwitchOpenYDList = tmp.InSwitchOpenYDList; + currentunInstallJieXian = tmp.currentunInstallJieXian; + currentInstallJieXian = tmp.currentInstallJieXian; + installCover = tmp.installCover; + currentInstallTestJieXian = tmp.currentInstallTestJieXian; //throw new System.NotImplementedException(); } } diff --git a/Assets/Scripts/ExcelData/DataContainer/TB_UserExamStat.cs b/Assets/Scripts/ExcelData/DataContainer/TB_UserExamStat.cs index 090cc29..10b8c4e 100644 --- a/Assets/Scripts/ExcelData/DataContainer/TB_UserExamStat.cs +++ b/Assets/Scripts/ExcelData/DataContainer/TB_UserExamStat.cs @@ -75,4 +75,9 @@ public class TB_UserExamStat /// 当前场景内的所有可触发物品 /// public List currentSceneTriggers = new List(); + + /// + /// 场景内所有缓存信息,不定数据格式 + /// + public string currentSceneOtherInfo = ""; } diff --git a/Assets/Scripts/Project/Manager/ReconnectMgr.cs b/Assets/Scripts/Project/Manager/ReconnectMgr.cs index e757b2a..495b2c4 100644 --- a/Assets/Scripts/Project/Manager/ReconnectMgr.cs +++ b/Assets/Scripts/Project/Manager/ReconnectMgr.cs @@ -61,6 +61,8 @@ public class ReconnectMgr : SingletonMono sub.isDone = item.Value.isDone; UserExamStat.allSubScore.Add( sub ); }; + //保存场景内独有信息 + UserExamStat.currentSceneOtherInfo = scoreBase.SaveSceneBufferList(); } /*UserExamStat.processId = ProcessManager.Instance.processId; UserExamStat.subProcessId = ProcessManager.Instance.subProcessId; @@ -123,15 +125,6 @@ public class ReconnectMgr : SingletonMono File.WriteAllText(localStatPath, UserJson); } - /// - /// 记录场景中的信息 - /// - public void RealtimeSceneWriter() - { - ScoreBase scoreBase = FindAnyObjectByType(); - scoreBase.SaveSceneBufferList(); - } - /// /// 读取用户状态(先使用同步,后用异步) /// @@ -280,10 +273,6 @@ public class ReconnectMgr : SingletonMono // Update is called once per frame void Update() { - if (Input.GetKeyDown(KeyCode.U)) - { - RealtimeSceneWriter(); - } if (Input.GetKeyDown(KeyCode.T))//测试用,按T读取状态保存 { RealtimeStatWriter();