From 51c7fd2e496cd7ab46962d0eee71a5f30315d52c Mon Sep 17 00:00:00 2001 From: oc Date: Wed, 9 May 2018 00:08:22 +0800 Subject: [PATCH] Save Pages --- libs/actions.js | 12 ++++++------ libs/control.js | 22 +++++++++++----------- libs/events.js | 2 +- libs/ui.js | 5 +++-- main.js | 2 ++ 5 files changed, 23 insertions(+), 20 deletions(-) diff --git a/libs/actions.js b/libs/actions.js index 085318d5..0bf91aa6 100644 --- a/libs/actions.js +++ b/libs/actions.js @@ -1658,7 +1658,7 @@ actions.prototype.clickSyncSave = function (x,y) { if (data instanceof Array) { core.ui.drawConfirmBox("所有本地存档都将被覆盖,确认?", function () { - for (var i=1;i<=150;i++) { + for (var i=1;i<=5*(main.savePages||30);i++) { if (i<=data.length) { core.setLocalStorage("save"+i, data[i-1]); } @@ -1673,8 +1673,8 @@ actions.prototype.clickSyncSave = function (x,y) { }) } else { - var index=150; - for (var i=150;i>=1;i--) { + var index=5*(main.savePages||30); + for (var i=5*(main.savePages||30);i>=1;i--) { if (core.getLocalStorage("save"+i, null)==null) index=i; else break; @@ -1797,7 +1797,7 @@ actions.prototype.clickLocalSaveSelect = function (x,y) { switch (selection) { case 0: saves=[]; - for (var i=1;i<=150;i++) { + for (var i=1;i<=5*(main.savePages||30);i++) { var data = core.getLocalStorage("save"+i, null); if (core.isset(data)) { saves.push(data); @@ -1805,7 +1805,7 @@ actions.prototype.clickLocalSaveSelect = function (x,y) { } break; case 1: - for (var i=150;i>=1;i--) { + for (var i=5*(main.savePages||30);i>=1;i--) { saves=core.getLocalStorage("save"+i, null); if (core.isset(saves)) { break; @@ -1869,7 +1869,7 @@ actions.prototype.clickStorageRemove = function (x, y) { core.drawText("\t[操作成功]你的所有存档已被清空。"); break; case 1: - for (var i=1;i<=150;i++) { + for (var i=1;i<=5*(main.savePages||30);i++) { core.removeLocalStorage("save"+i); } core.drawText("\t[操作成功]当前塔的存档已被清空。"); diff --git a/libs/control.js b/libs/control.js index 9d91b972..a7047e7a 100644 --- a/libs/control.js +++ b/libs/control.js @@ -1550,9 +1550,9 @@ control.prototype.replay = function () { } core.status.replay.steps++; - if (core.status.replay.steps%20==0) { - if (core.status.replay.save.length == 30) - core.status.replay.save.shift(); + if (core.status.replay.steps%50==0) { + //if (core.status.replay.save.length == 30) + // core.status.replay.save.shift(); core.status.replay.save.push({"data": core.saveData(), "replay": { "totalList": core.clone(core.status.replay.totalList), "toReplay": core.clone(core.status.replay.toReplay), @@ -1584,7 +1584,7 @@ control.prototype.replay = function () { core.useItem(itemId, function () { core.replay(); }); - }, 750 / Math.sqrt(core.status.replay.speed)); + }, 750 / core.status.replay.speed); } return; } @@ -1602,7 +1602,7 @@ control.prototype.replay = function () { core.changeFloor(floorId, stair, null, null, function () { core.replay(); }); - }, 750 / Math.sqrt(core.status.replay.speed)); + }, 750 / core.status.replay.speed); return; } } @@ -1635,7 +1635,7 @@ control.prototype.replay = function () { core.status.event.selection = parseInt(selections.shift()); core.events.openShop(shopId, false); - }, 750 / Math.sqrt(core.status.replay.speed)); + }, 750 / core.status.replay.speed); return; } } @@ -1898,7 +1898,7 @@ control.prototype.syncSave = function (type) { // data if (type=='all') { saves=[]; - for (var i=1;i<=150;i++) { + for (var i=1;i<=5*(main.savePages||30);i++) { var data = core.getLocalStorage("save"+i, null); if (core.isset(data)) { saves.push(data); @@ -1906,7 +1906,7 @@ control.prototype.syncSave = function (type) { } } else { - for (var i=150;i>=1;i--) { + for (var i=5*(main.savePages||30);i>=1;i--) { saves=core.getLocalStorage("save"+i, null); if (core.isset(saves)) { break; @@ -1967,7 +1967,7 @@ control.prototype.syncLoad = function () { if (data instanceof Array) { core.status.event.selection=1; core.ui.drawConfirmBox("所有本地存档都将被覆盖,确认?", function () { - for (var i=1;i<=150;i++) { + for (var i=1;i<=5*(main.savePages||30);i++) { if (i<=data.length) { core.setLocalStorage("save"+i, data[i-1]); } @@ -1983,8 +1983,8 @@ control.prototype.syncLoad = function () { } else { // 只覆盖单存档 - var index=150; - for (var i=150;i>=1;i--) { + var index=5*(main.savePages||30); + for (var i=5*(main.savePages||30);i>=1;i--) { if (core.getLocalStorage("save"+i, null)==null) index=i; else break; diff --git a/libs/events.js b/libs/events.js index 75f74fa3..66e85d20 100644 --- a/libs/events.js +++ b/libs/events.js @@ -678,7 +678,7 @@ events.prototype.doAction = function() { core.status.route.push("choices:"+index); core.events.insertAction(data.choices[index].action); core.events.doAction(); - }, 750 / Math.sqrt(core.status.replay.speed)) + }, 750 / core.status.replay.speed) } else { core.stopReplay(); diff --git a/libs/ui.js b/libs/ui.js index f875e18b..b539d278 100644 --- a/libs/ui.js +++ b/libs/ui.js @@ -1571,7 +1571,8 @@ ui.prototype.drawSLPanel = function(index) { if (index<0) index=0; var page = parseInt(index/10), offset=index%10; - if (page>=30) page=29; + var max_page = main.savePages || 30; + if (page>=max_page) page=max_page - 1; if (offset>5) offset=5; index=10*page+offset; @@ -1617,7 +1618,7 @@ ui.prototype.drawSLPanel = function(index) { } } } - this.drawPagination(page+1, 30); + this.drawPagination(page+1, max_page); if (core.status.event.selection) core.setFillStyle('ui', '#FF6A6A'); diff --git a/main.js b/main.js index c4327eaf..3dddfd0d 100644 --- a/main.js +++ b/main.js @@ -14,6 +14,8 @@ function main() { this.isCompetition = false; // 是否是比赛模式 + this.savePages = 30; // 存档页数,每页可存5个;默认为30页150个存档 + //------------------------ 用户修改内容 END ------------------------// this.dom = {