Project1

标题: 请教一下,如何修改存档读取的优先度?(已解决) [打印本页]

作者: reusyin    时间: 2019-10-17 15:41
标题: 请教一下,如何修改存档读取的优先度?(已解决)
本帖最后由 reusyin 于 2019-10-18 00:42 编辑

我在游戏中增加了一个自动存档功能,在31号档位,然后用yep savecore将存档数改为30,这样就不会影响到自动存档。

然而在游戏中进入标题画面再读取时,会自动选中最新的档位,也就是31号(虽然在存档界面看不到)……这样就造成了麻烦。

请问大佬如何修改成在读取时默认选中第一个存档位置而不是最新的存档位置,或是有其他解决方法也欢迎提出,谢谢!
作者: hyrious    时间: 2019-10-17 20:09
dirty 思路:
  1. DataManager.lastAccessedSavefileId = function() {
  2.     var x = this._lastAccessedId;
  3.     if (x >= 31) x = 1;
  4.     return x;
  5. }
复制代码

作者: reusyin    时间: 2019-10-17 21:10
hyrious 发表于 2019-10-17 20:09
dirty 思路:

谢谢大佬,不过貌似对我的游戏不管用呢……是改成.js放在插件文件夹里吗?
作者: 白嫩白嫩的    时间: 2019-10-17 22:59
我的建议是自动存档放第一个,游戏里明说告诉玩家,其实没必要这么纠结
作者: yang1zhi    时间: 2019-10-17 23:03
恩,让自动存档也出现在列表就行
作者: reusyin    时间: 2019-10-18 00:41
白嫩白嫩的 发表于 2019-10-17 22:59
我的建议是自动存档放第一个,游戏里明说告诉玩家,其实没必要这么纠结

仔细想了想,你说的确实有道理……问题解决
作者: yinzord    时间: 2020-6-23 00:47
楼主,俺遇到了类似的问题
玩家平时读档一般习惯读取自己手动存的那个档位。
通常大家都习惯从上到下按顺序存档,现在autosave在第一行,是file1,而玩家玩的久了可能会存到file30、40或者更多,
这样导致每次自动保存后,再进入存档页面系统指针都会跳回第一行,优先选择“最后保存的档案”,要翻很久才能翻到自己手动存档,非常麻烦
请问大佬有解决类似问题的经验吗

批注 2020-06-23 004626.jpg (31.59 KB, 下载次数: 49)

批注 2020-06-23 004626.jpg

批注 2020-06-23 004640.jpg (36.02 KB, 下载次数: 40)

批注 2020-06-23 004640.jpg

作者: chd114    时间: 2020-6-23 01:35
yinzord 发表于 2020-6-23 00:47
楼主,俺遇到了类似的问题
玩家平时读档一般习惯读取自己手动存的那个档位。
通常大家都习惯从上到下按顺序 ...

存档界面改大,让所有存档显示在一个界面
作者: 开关关    时间: 2020-6-23 01:51
本帖最后由 开关关 于 2020-6-23 01:52 编辑
yinzord 发表于 2020-6-23 00:47
楼主,俺遇到了类似的问题
玩家平时读档一般习惯读取自己手动存的那个档位。
通常大家都习惯从上到下按顺序 ...


打开 js\rpg_managers.js ,找到298行,按照如下代码所示修改,将 1 改成 2 ,读档界面就不会自动选中1号存档了(除非只有1号存档)。那么自然而然,就会自动选中最近玩家手动存档的档位。
JAVASCRIPT 代码复制
  1. DataManager.latestSavefileId = function() {
  2.     var globalInfo = this.loadGlobalInfo();
  3.     var savefileId = 1;
  4.     var timestamp = 0;
  5.     if (globalInfo) {
  6.         for (var i = 2; i < globalInfo.length; i++) { // Kgg:将 var i = 1 改成了 var i = 2 ,在寻找最近存档时忽略1号存档。
  7.             if (this.isThisGameFile(i) && globalInfo[i].timestamp > timestamp) {
  8.                 timestamp = globalInfo[i].timestamp;
  9.                 savefileId = i;
  10.             }
  11.         }
  12.     }
  13.     return savefileId;
  14. };
如果用了包含完整存档系统的插件,就需要找到类似的代码进行修改。




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1