查看: 3343|回复: 18

[有事请教] 如何判断是否有存档

[复制链接]
梦石
0
星屑
3922
在线时间
1198 小时
注册时间
2016-8-9
回帖
2355

开拓者

发表于 2018-10-20 21:25:30 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
好久没提问了

跪求大佬告知如何判断是否有存档1,如果有的话直接读取存档1,没有的话开新游戏

我从汪汪大大小白机翻那里找的代码,结合坦克君的自动读档代码,没效果,跪求指点

[pre lang="javascript"]if (!DataManager.isThisGameFile(save(1))) return;
                    //$.toaster({ message : "读取成功!"})
                                                                                               
                        // Extract data from savegame
                        console.log("Extract save contents");
                        DataManager.createGameObjects();
                        DataManager.extractSaveContents(JsonEx.parse(StorageManager.load(1)));
                        //console.log(LZString.decompressFromBase64(data.savedata));
                        //console.log(JsonEx.parse(LZString.decompressFromBase64(data.savedata)));

                        // Move player
                        console.log("Reserve transfer player");
                        $gamePlayer.reserveTransfer($gameMap.mapId(), $gamePlayer.x, $gamePlayer.y);
                        $gamePlayer.requestMapReload();

                        // Initialize map
                        console.log("Goto Scene_Map");
                        $gameSystem.onAfterLoad();
                        Scene_Load.prototype.reloadMapIfUpdated.call(null);
                        SceneManager.goto(Scene_Map);
                        if (SceneManager._scene) {
                                SceneManager._scene.fadeOutAll();
                        }                                                              
            } else {
                        DataManager.setupNewGame();
            SceneManager.goto(Scene_Map);
                }
    }[/pre]
酸酸甜甜就④哇噢
梦石
0
星屑
12161
在线时间
4435 小时
注册时间
2014-4-11
回帖
5616

开拓者

发表于 2018-10-20 21:49:08 | 显示全部楼层

        if (DataManager.loadGame(this.savefileId())) {
     

点评

谢谢大佬,爱您~~~~  发表于 2018-10-20 23:05
是的  发表于 2018-10-20 23:01
谢谢大佬,如果只判断存档1的话是不是括号里写1?  发表于 2018-10-20 21:55

评分

参与人数 1赞 +1 收起 理由
白嫩白嫩的 + 1 谢谢大佬

查看全部评分

回复

使用道具 举报

梦石
0
星屑
3922
在线时间
1198 小时
注册时间
2016-8-9
回帖
2355

开拓者

 楼主| 发表于 2018-10-20 23:44:51 | 显示全部楼层
yang1zhi 发表于 2018-10-20 21:49
if (DataManager.loadGame(this.savefileId())) {

大佬 不行啊,提示 this.savefileId is not a function
酸酸甜甜就④哇噢
回复

使用道具 举报

梦石
0
星屑
22573
在线时间
2604 小时
注册时间
2015-7-4
回帖
917
发表于 2018-10-21 00:08:06 | 显示全部楼层
你用这个试试:
DataManager.isThisGameFile(id)

点评

好的 我去试试看 谢谢帅哥~  发表于 2018-10-21 17:03

评分

参与人数 1赞 +1 收起 理由
白嫩白嫩的 + 1 认可答案

查看全部评分

回复

使用道具 举报

梦石
0
星屑
12161
在线时间
4435 小时
注册时间
2014-4-11
回帖
5616

开拓者

发表于 2018-10-21 08:32:57 | 显示全部楼层
白嫩白嫩的 发表于 2018-10-20 23:44
大佬 不行啊,提示 this.savefileId is not a function

当然不行啊this.savefileId是个函数,你在没这个函数的地方用自然不行
他就是个求存档ID的啊,你改成你的就行了
你不是说你要改成1的吗

点评

不可能啊,我就是用的这个。有存档的时候会读存档,没存档的时候是else  发表于 2018-10-21 17:29
都是提示 this.savefileId is not a function,然后我用楼上帅哥的代码改成(1)可以用了,也谢谢大佬您帮忙啦~~~  发表于 2018-10-21 17:21
改成 if (DataManager.loadGame(1)) { 有提示什么  发表于 2018-10-21 17:06
改成 if (DataManager.loadGame(this.savefileId(1))) { 也不行, 改成 if (DataManager.loadGame(1)) { 还是不行。。。  发表于 2018-10-21 17:02
回复

使用道具 举报

梦石
0
星屑
3922
在线时间
1198 小时
注册时间
2016-8-9
回帖
2355

开拓者

 楼主| 发表于 2018-10-21 17:11:21 | 显示全部楼层
Fan723 发表于 2018-10-21 00:08
你用这个试试:
DataManager.isThisGameFile(id)

可以了,非常感谢,我是个代码盲,之前用事件做东西还算得心应手,但随着欲望的扩大,发现单靠事件根本不行,必须要用代码了,作为初学者拿现成的代码去拼凑都不知道问题出在哪里,真感谢论坛你们这些大神的指点,没有你们,我现在估计都该玩不下去出坑了

点评

握爪握爪~~~  发表于 2018-10-21 19:13
能用就好,我也只是最近在改YEP的存档界面插件,就顺便给你翻了一下。我也是从零开始学JS的,大家互相学习共同进步就是了。  发表于 2018-10-21 18:30
酸酸甜甜就④哇噢
回复

使用道具 举报

梦石
0
星屑
4134
在线时间
443 小时
注册时间
2015-4-4
回帖
117
发表于 2018-10-21 21:01:14 | 显示全部楼层
本帖最后由 玄羽 于 2018-10-21 21:02 编辑

if (DataManager.isAnySavefileExists()){
        DataManager.loadGame(1);
        this.fadeOutAll();
        SceneManager.goto(Scene_Map);
}
else {
        DataManager.setupNewGame();
        this.fadeOutAll();
        SceneManager.goto(Scene_Map);
}

点评

这个代码更棒,我之前用的那个太繁琐了,亲测可用  发表于 2018-10-21 22:43

评分

参与人数 1赞 +1 收起 理由
白嫩白嫩的 + 1 认可答案

查看全部评分

回复 1 0

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部