feat:增加设置:血瓶绕路
This commit is contained in:
parent
2128a2389d
commit
0329e781c3
@ -85,7 +85,15 @@ items.prototype.getItemEffect = function (itemId, itemNum) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
////// “即捡即用类”道具的文字提示 //////
|
////// 获取“即捡即用类”道具会增加哪些属性 //////
|
||||||
|
items.prototype.getItemEffectType = function (itemId) {
|
||||||
|
if (!core.material.items.hasOwnProperty(itemId)) return [];
|
||||||
|
const itemEffectEvent = core.material.items[itemId].itemEffectEvent;
|
||||||
|
if (!itemEffectEvent) return [];
|
||||||
|
return Object.keys(itemEffectEvent.value).map((statusName) => statusName.endsWith(':o') ? statusName.slice(0, -2) : statusName);
|
||||||
|
}
|
||||||
|
|
||||||
|
////// “即捡即用类”道具的文字提示 //////s
|
||||||
items.prototype.getItemEffectTip = function (itemId) {
|
items.prototype.getItemEffectTip = function (itemId) {
|
||||||
var itemCls = core.material.items[itemId].cls;
|
var itemCls = core.material.items[itemId].cls;
|
||||||
// 消耗品
|
// 消耗品
|
||||||
|
|||||||
10
libs/maps.js
10
libs/maps.js
@ -960,7 +960,15 @@ maps.prototype._automaticRoute_deepAdd = function (x, y, blocks) {
|
|||||||
// 绕过路障
|
// 绕过路障
|
||||||
if (id.endsWith("Net") && !core.hasFlag(id.substring(0, id.length - 3))) deepAdd += 100;
|
if (id.endsWith("Net") && !core.hasFlag(id.substring(0, id.length - 3))) deepAdd += 100;
|
||||||
// 绕过血瓶和绿宝石
|
// 绕过血瓶和绿宝石
|
||||||
if (core.hasFlag('__potionNoRouting__') && (id.endsWith("Potion") || id == 'greenGem')) deepAdd += 100;
|
if (block.event.cls === 'items') {
|
||||||
|
const itemEffectType = core.getItemEffectType(id);
|
||||||
|
if (core.hasFlag('noRouting_HP') && itemEffectType.includes('hp')) deepAdd += 100;
|
||||||
|
if (core.hasFlag('noRouting_MDEF') && itemEffectType.includes('mdef')) deepAdd += 100;
|
||||||
|
if (core.hasFlag('noRouting_ATK') && itemEffectType.includes('atk')) deepAdd += 100;
|
||||||
|
if (core.hasFlag('noRouting_DEF') && itemEffectType.includes('def')) deepAdd += 100;
|
||||||
|
}
|
||||||
|
|
||||||
|
// if (core.hasFlag('__potionNoRouting__') && (id.endsWith("Potion") || id == 'greenGem')) deepAdd += 100;
|
||||||
// 绕过传送点
|
// 绕过传送点
|
||||||
// if (block.event.trigger == 'changeFloor') deepAdd+=10;
|
// if (block.event.trigger == 'changeFloor') deepAdd+=10;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2034,6 +2034,13 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
|||||||
// )
|
// )
|
||||||
// return false;
|
// return false;
|
||||||
// }
|
// }
|
||||||
|
if (item.cls === 'items') {
|
||||||
|
const itemEffectType = core.getItemEffectType(item.id);
|
||||||
|
if (core.hasFlag('noRouting_HP') && itemEffectType.includes('hp')) return false;
|
||||||
|
if (core.hasFlag('noRouting_MDEF') && itemEffectType.includes('mdef')) return false;
|
||||||
|
if (core.hasFlag('noRouting_ATK') && itemEffectType.includes('atk')) return false;
|
||||||
|
if (core.hasFlag('noRouting_DEF') && itemEffectType.includes('def')) return false;
|
||||||
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3562,14 +3569,52 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
|||||||
'每走一步,自动和当前层可到达位置伤害为0的敌人战斗。对部分特殊敌人无效。',
|
'每走一步,自动和当前层可到达位置伤害为0的敌人战斗。对部分特殊敌人无效。',
|
||||||
true,
|
true,
|
||||||
)],
|
)],
|
||||||
['potionRouting', new Setting(
|
['noRouting_HP', new Setting(
|
||||||
() => '血瓶绕路:' + core.getFlag('__potionNoRouting__', false) ? '开' : '关',
|
() => '',
|
||||||
() => invertFlag('__potionNoRouting__'),
|
() => invertFlag('noRouting_HP'),
|
||||||
'系统设置。开启后自动寻路时将绕过血瓶和绿宝石。',
|
'自动寻路时绕过加血物品。同时自动拾取也将忽略这类物品。',
|
||||||
true,
|
true,
|
||||||
|
function (ctx) {
|
||||||
|
core.setAlpha(ctx, core.hasFlag('noRouting_HP') ? 1 : 0.3);
|
||||||
|
core.drawIcon(ctx, 'redPotion', this.x, this.y, this.w, this.h);
|
||||||
|
core.setAlpha(ctx, 1);
|
||||||
|
}
|
||||||
|
)],
|
||||||
|
['noRouting_MDEF', new Setting(
|
||||||
|
() => '',
|
||||||
|
() => invertFlag('noRouting_MDEF'),
|
||||||
|
'自动寻路时绕过加护盾物品。同时自动拾取也将忽略这类物品。',
|
||||||
|
true,
|
||||||
|
function (ctx) {
|
||||||
|
core.setAlpha(ctx, core.hasFlag('noRouting_MDEF') ? 1 : 0.3);
|
||||||
|
core.drawIcon(ctx, 'greenGem', this.x, this.y, this.w, this.h);
|
||||||
|
core.setAlpha(ctx, 1);
|
||||||
|
}
|
||||||
|
)],
|
||||||
|
['noRouting_ATK', new Setting(
|
||||||
|
() => '',
|
||||||
|
() => invertFlag('noRouting_ATK'),
|
||||||
|
'自动寻路时绕过加攻物品。同时自动拾取也将忽略这类物品。',
|
||||||
|
true,
|
||||||
|
function (ctx) {
|
||||||
|
core.setAlpha(ctx, core.hasFlag('noRouting_ATK') ? 1 : 0.3);
|
||||||
|
core.drawIcon(ctx, 'redGem', this.x, this.y, this.w, this.h);
|
||||||
|
core.setAlpha(ctx, 1);
|
||||||
|
}
|
||||||
|
)],
|
||||||
|
['noRouting_DEF', new Setting(
|
||||||
|
() => '',
|
||||||
|
() => invertFlag('noRouting_DEF'),
|
||||||
|
'自动寻路时绕过加防物品。同时自动拾取也将忽略这类物品。',
|
||||||
|
true,
|
||||||
|
function (ctx) {
|
||||||
|
core.setAlpha(ctx, core.hasFlag('noRouting_DEF') ? 1 : 0.3);
|
||||||
|
core.drawIcon(ctx, 'blueGem', this.x, this.y, this.w, this.h);
|
||||||
|
core.setAlpha(ctx, 1);
|
||||||
|
}
|
||||||
)],
|
)],
|
||||||
['clickMove', new Setting(
|
['clickMove', new Setting(
|
||||||
() => '单击瞬移:' + (core.getFlag('__noClickMove__', false) ? '开' : '关'),
|
() => '单击瞬移:' + (core.hasFlag('__noClickMove__') ? '关' : '开'),
|
||||||
() => invertFlag('__noClickMove__'),
|
() => invertFlag('__noClickMove__'),
|
||||||
'系统设置。单击即可触发瞬移。',
|
'系统设置。单击即可触发瞬移。',
|
||||||
true,
|
true,
|
||||||
@ -3583,13 +3628,13 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
|||||||
['zoomIn', new Setting(
|
['zoomIn', new Setting(
|
||||||
() => ' < 放缩:' + Math.max(core.domStyle.scale, 1) + 'x',
|
() => ' < 放缩:' + Math.max(core.domStyle.scale, 1) + 'x',
|
||||||
() => core.actions._clickSwitchs_display_setSize(-1),
|
() => core.actions._clickSwitchs_display_setSize(-1),
|
||||||
'放缩',
|
'放缩。',
|
||||||
false, // 录像中不可录入任何DOM操作
|
false, // 录像中不可录入任何DOM操作
|
||||||
)],
|
)],
|
||||||
['zoomOut', new Setting(
|
['zoomOut', new Setting(
|
||||||
() => ' > ',
|
() => ' > ',
|
||||||
() => core.actions._clickSwitchs_display_setSize(1),
|
() => core.actions._clickSwitchs_display_setSize(1),
|
||||||
'放缩',
|
'放缩。',
|
||||||
false,
|
false,
|
||||||
)],
|
)],
|
||||||
['HDCanvas', new Setting(
|
['HDCanvas', new Setting(
|
||||||
@ -3625,37 +3670,37 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
|||||||
['extraDamageType', new Setting(
|
['extraDamageType', new Setting(
|
||||||
() => '领域模式:' + (core.flags.extraDamageType == 2 ? '[最简]' : core.flags.extraDamageType == 1 ? '[半透明]' : '[完整]'),
|
() => '领域模式:' + (core.flags.extraDamageType == 2 ? '[最简]' : core.flags.extraDamageType == 1 ? '[半透明]' : '[完整]'),
|
||||||
core.actions._clickSwitchs_display_extraDamageType,
|
core.actions._clickSwitchs_display_extraDamageType,
|
||||||
'领域模式',
|
'是否显示不可通行地块的领域伤害。',
|
||||||
false,
|
false,
|
||||||
)],
|
)],
|
||||||
['autoScale', new Setting(
|
['autoScale', new Setting(
|
||||||
() => '自动放缩:' + (core.getLocalStorage('autoScale') ? '开' : '关'),
|
() => '自动放缩:' + (core.getLocalStorage('autoScale') ? '开' : '关'),
|
||||||
() => core.setLocalStorage('autoScale', core.getLocalStorage('autoScale') ? false : true),
|
() => core.setLocalStorage('autoScale', core.getLocalStorage('autoScale') ? false : true),
|
||||||
'自动放缩',
|
'自动放缩。',
|
||||||
false,
|
false,
|
||||||
)],
|
)],
|
||||||
['bgm', new Setting(
|
['bgm', new Setting(
|
||||||
() => '音乐:' + (core.musicStatus.bgmStatus ? '开' : '关'),
|
() => '音乐:' + (core.musicStatus.bgmStatus ? '开' : '关'),
|
||||||
core.actions._clickSwitchs_sounds_bgm,
|
core.actions._clickSwitchs_sounds_bgm,
|
||||||
'播放背景音乐',
|
'播放背景音乐。',
|
||||||
false,
|
false,
|
||||||
)],
|
)],
|
||||||
['se', new Setting(
|
['se', new Setting(
|
||||||
() => '音效:' + (core.musicStatus.soundStatus ? '开' : '关'),
|
() => '音效:' + (core.musicStatus.soundStatus ? '开' : '关'),
|
||||||
core.actions._clickSwitchs_sounds_se,
|
core.actions._clickSwitchs_sounds_se,
|
||||||
'播放音效',
|
'播放音效。',
|
||||||
false,
|
false,
|
||||||
)],
|
)],
|
||||||
['decreaseVolume', new Setting(
|
['decreaseVolume', new Setting(
|
||||||
() => " < 音量:" + Math.round(Math.sqrt(100 * core.musicStatus.userVolume)),
|
() => " < 音量:" + Math.round(Math.sqrt(100 * core.musicStatus.userVolume)),
|
||||||
() => core.actions._clickSwitchs_sounds_userVolume(-1),
|
() => core.actions._clickSwitchs_sounds_userVolume(-1),
|
||||||
'减小音量',
|
'减小音量。',
|
||||||
false,
|
false,
|
||||||
)],
|
)],
|
||||||
['increaseVolume', new Setting(
|
['increaseVolume', new Setting(
|
||||||
() => ' > ',
|
() => ' > ',
|
||||||
() => core.actions._clickSwitchs_sounds_userVolume(1),
|
() => core.actions._clickSwitchs_sounds_userVolume(1),
|
||||||
'增大音量',
|
'增大音量。',
|
||||||
false,
|
false,
|
||||||
)],
|
)],
|
||||||
['leftHand', new Setting(
|
['leftHand', new Setting(
|
||||||
@ -4158,6 +4203,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
|||||||
case 'gamePlay':
|
case 'gamePlay':
|
||||||
core.fillText(this.name, '-- 自动 --', 40, 175, ' #FFE4B5', '18px Verdana');
|
core.fillText(this.name, '-- 自动 --', 40, 175, ' #FFE4B5', '18px Verdana');
|
||||||
core.fillText(this.name, '-- 瞬移 --', 40, 225, ' #FFE4B5', '18px Verdana');
|
core.fillText(this.name, '-- 瞬移 --', 40, 225, ' #FFE4B5', '18px Verdana');
|
||||||
|
core.fillText(this.name, '绕开', 220, 250, 'white', '16px Verdana');
|
||||||
break;
|
break;
|
||||||
case 'gameView':
|
case 'gameView':
|
||||||
core.fillText(this.name, '-- 显示 --', 40, 175, ' #FFE4B5', '18px Verdana');
|
core.fillText(this.name, '-- 显示 --', 40, 175, ' #FFE4B5', '18px Verdana');
|
||||||
@ -4257,7 +4303,11 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
|||||||
gamePlayMenu.initBtnList([
|
gamePlayMenu.initBtnList([
|
||||||
['1,1', new SettingButton(40, 180, 150, 30, 'autoGet')],
|
['1,1', new SettingButton(40, 180, 150, 30, 'autoGet')],
|
||||||
['2,1', new SettingButton(220, 180, 150, 30, 'autoBattle')],
|
['2,1', new SettingButton(220, 180, 150, 30, 'autoBattle')],
|
||||||
['1,2', new SettingButton(40, 230, 150, 30, 'clickMove')]
|
['1,2', new SettingButton(40, 230, 150, 30, 'clickMove')],
|
||||||
|
['2,2', new SettingButton(260, 234, 24, 24, 'noRouting_HP')],
|
||||||
|
['3,2', new SettingButton(290, 234, 24, 24, 'noRouting_MDEF')],
|
||||||
|
['4,2', new SettingButton(320, 234, 24, 24, 'noRouting_ATK')],
|
||||||
|
['5,2', new SettingButton(350, 234, 24, 24, 'noRouting_DEF')],
|
||||||
]);
|
]);
|
||||||
|
|
||||||
const gameViewMenu = new SettingOnePage('gameView');
|
const gameViewMenu = new SettingOnePage('gameView');
|
||||||
|
|||||||
7
runtime.d.ts
vendored
7
runtime.d.ts
vendored
@ -2043,6 +2043,13 @@ interface items {
|
|||||||
*/
|
*/
|
||||||
getItemEffect(itemId: string, itemNum?: number): void
|
getItemEffect(itemId: string, itemNum?: number): void
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取“即捡即用类”道具会增加哪些属性
|
||||||
|
* @example core.getItemEffect('redPotion') // 返回红血增加的属性列表
|
||||||
|
* @param itemId 道具id
|
||||||
|
*/
|
||||||
|
getItemEffectType(itemId: string): string[]
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 即捡即用类的道具获得时的额外提示
|
* 即捡即用类的道具获得时的额外提示
|
||||||
* @example core.getItemEffectTip(redPotion) // (获得 红血瓶)',生命+100'
|
* @example core.getItemEffectTip(redPotion) // (获得 红血瓶)',生命+100'
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user