8-3. 人物数值及场景的保存加载

人物数值保存加载

在 Data 中添加一个 floatSavedData

然后在 Character 里面进行设置,读取血量之后记得通知血条栏更新血量

场景保存加载

Data 中增加一个字符串,用于存储场景信息。存储的时候传入一个 GameSceneSO,通过 JsonUtility 转换为 字符串。然后读取的时候,将保存的 string 反序列化为 GameSceneSO

场景是通过 SceneLoadManager 进行管理的,所以需要对它也添加 ISaveable 接口

存储的时候,就把当前的场景传进去。读取的时候,首先要判断是否有记录,如果有记录才读取场景和玩家的坐标,并重新加载场景

存储点记录

可以自己实现,我偷懒就不实现了

其它问题

我发现野猪的位置在场景加载后好像不正确,原因是加载事件产生的时候,此时野猪是不存在的,无法修改坐标。等场景加载完毕之后,野猪的位置回到了初始点,所以场景加载会导致野猪的问题不正确。

所以如果要做的好一点的话,场景加载和位置加载应该要分成两个事件会比较好

我赶进度,就不做了

项目相关代码

代码仓库:https://gitee.com/nbda1121440/2DAdventure.git

标签:20240229_1102

posted @   hellozjf  阅读(48)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示