diff --git a/libs/events.js b/libs/events.js index bfe8802b..4c7ae9b9 100644 --- a/libs/events.js +++ b/libs/events.js @@ -1802,8 +1802,10 @@ events.prototype._action_choices = function (data, x, y, prefix) { var action = core.status.replay.toReplay.shift(); // --- 忽略可能的turn事件 if (action == 'turn') action = core.status.replay.toReplay.shift(); + if (core.hasFlag('@temp@shop') && action.startsWith('shop:')) action = core.status.replay.toReplay.shift(); if (action.indexOf('choices:') == 0) { var index = action.substring(8); + if (index == "-1") index = data.choices.length - 1; if (index == 'none' || ((index = parseInt(index)) >= 0) && index < data.choices.length) { core.status.event.selection = index; setTimeout(function () { diff --git a/libs/utils.js b/libs/utils.js index ae36a708..c686d158 100644 --- a/libs/utils.js +++ b/libs/utils.js @@ -606,6 +606,19 @@ utils.prototype._decodeRoute_decodeOne = function (decodeObj, c) { break; case "S": decodeObj.ans.push("shop:" + nxt); + // V266->V2.7商店录像兼容性 + if (core.initStatus.shops[nxt]) { + if (!isNaN(decodeObj.route.charAt(decodeObj.index))) { + var selections = this._decodeRoute_getNumber(decodeObj, true); + // 只接普通商店 + if (!core.initStatus.shops[nxt].item && !core.initStatus.shops[nxt].commonEvent) { + decodeObj.ans = decodeObj.ans.concat(selections.split("").map(function (one) { + return 'choices:' + one; + })); + decodeObj.ans.push("choices:-1"); + } + } + } break; case "T": decodeObj.ans.push("turn"); diff --git a/v2.x-final更新.txt b/v2.x-final更新.txt index 91323cee..8becab5f 100644 --- a/v2.x-final更新.txt +++ b/v2.x-final更新.txt @@ -72,7 +72,7 @@ (OK) 右键反复弹出;(OK) 上下楼梯绑定楼传;(OK) 属性框出现0问题;(OK) 上下楼点选点 (OK) 地图编辑框无效;(OK) jumpHero和帧动画冲突;(OK) bookDetails重复计算buff;(OK) 怪物属性多选 (OK) 图片化文本翻转;(OK) 绘制矩形(边框)旋转; -特殊属性&光环检查;(OK) 钥匙不消耗;录像接档问题 +特殊属性&光环检查;(OK) 钥匙不消耗;(OK) 录像接档问题 -------------