diff --git a/src/core/main/init/fixed.ts b/src/core/main/init/fixed.ts index e3d275b..93865d9 100644 --- a/src/core/main/init/fixed.ts +++ b/src/core/main/init/fixed.ts @@ -1,6 +1,6 @@ import { debounce } from 'lodash-es'; -import { gameListener } from '../game'; -import { fixedUi } from './ui'; +import { gameListener, hook } from '../game'; +import { fixedUi, mainUi } from './ui'; import { ref } from 'vue'; import { sleep } from 'mutate-animate'; @@ -53,3 +53,10 @@ gameListener.on('mouseMove', e => { showFixed(hovered); } }); + +hook.once('mounted', () => { + mainUi.on('start', () => { + showFixed.cancel(); + closeFixed(); + }); +}); diff --git a/src/core/main/init/hotkey.ts b/src/core/main/init/hotkey.ts index c66d30e..2ed8b5e 100644 --- a/src/core/main/init/hotkey.ts +++ b/src/core/main/init/hotkey.ts @@ -3,6 +3,7 @@ import { Hotkey } from '../custom/hotkey'; import { generateBinary, keycode } from '@/plugin/utils'; import { hovered } from './fixed'; import { hasMarkedEnemy, markEnemy, unmarkEnemy } from '@/plugin/mark'; +import { mainUi } from './ui'; export const mainScope = Symbol.for('@key_main'); export const gameKey = new Hotkey('gameKey', '游戏按键'); @@ -405,8 +406,12 @@ gameKey else markEnemy(id); } }) - .realize('special', () => {}) - .realize('critical', () => {}) + .realize('special', () => { + mainUi.open('fixedDetail', { panel: 'special' }); + }) + .realize('critical', () => { + mainUi.open('fixedDetail', { panel: 'critical' }); + }) .realize('restart', () => { core.confirmRestart(); }) diff --git a/src/ui/bookDetail.vue b/src/ui/bookDetail.vue index 9378cc5..595cb2f 100644 --- a/src/ui/bookDetail.vue +++ b/src/ui/bookDetail.vue @@ -76,8 +76,6 @@ import { useDrag } from '../plugin/use'; import EnemySpecial from '../panel/enemySpecial.vue'; import { LeftOutlined, RightOutlined } from '@ant-design/icons-vue'; import EnemyCritical from '../panel/enemyCritical.vue'; -import { KeyCode } from '../plugin/keyCodes'; -import { keycode } from '../plugin/utils'; import { sleep } from 'mutate-animate'; import EnemyTarget from '../panel/enemyTarget.vue'; import { detailInfo } from '../plugin/ui/book'; diff --git a/src/ui/fixedDetail.vue b/src/ui/fixedDetail.vue index 86d1ff3..79317e2 100644 --- a/src/ui/fixedDetail.vue +++ b/src/ui/fixedDetail.vue @@ -9,12 +9,15 @@