赞 | 29 |
VIP | 0 |
好人卡 | 0 |
积分 | 66 |
经验 | 0 |
最后登录 | 2024-11-26 |
在线时间 | 1505 小时 |
Lv4.逐梦者
- 梦石
- 0
- 星屑
- 6601
- 在线时间
- 1505 小时
- 注册时间
- 2013-12-3
- 帖子
- 322
|
本帖最后由 HM495 于 2023-6-19 12:13 编辑
- DataManager.makeSavefileInfo = function() {
- const info = {};
- info.title = $dataSystem.gameTitle;
- info.characters = $gameParty.charactersForSavefile();
- info.faces = $gameParty.facesForSavefile();
- info.playtime = $gameSystem.playtimeText();
- info.timestamp = Date.now();
- info.isOpeningCleared = $gameSwitches.value(1);//记录该存档是否已通过序章
- return info;
- };
- //判断存档中是否有已播过序章的存档
- DataManager.isAnySavefileOpeningCleared = function() {
- for (var i=0;i<DataManager._globalInfo.length;i++)
- {
- if(DataManager._globalInfo[i] != null){
- if(DataManager._globalInfo[i].isOpeningCleared )
- {
- return true
- }
- }
- }
- return false;
- };
复制代码
如果我没理解错的话,你应该是跳过了默认的Title,自动新游戏进入某地图后,用地图场景伪装了一个标题界面吧
在你播序章的事件开头用DataManager.isAnySavefileOpeningCleared ()作为条件判定一次“是否存在已经看完序章的存档”
如果没有,就继续播序章
播完序章打开开关,做一次自动存档
同样这个思路你还可以判定你的游戏进度在标题做一些别的表现
如果你不想用游戏存档判定,那换个思路存进ConfigManager里,加一个跳过片头的选项,在播完序章后,将这个开关打开并保存 |
|