From ad371860686a9530475611fd4b3283d238524afc Mon Sep 17 00:00:00 2001 From: unanmed <1319491857@qq.com> Date: Tue, 3 Nov 2026 15:00:52 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E5=88=A0=E9=99=A4=20legacy-system?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages-user/entry-client/package.json | 1 - packages-user/entry-client/src/create.ts | 2 - packages-user/entry-data/src/create.ts | 2 - packages-user/entry-data/src/mota.ts | 4 - packages/legacy-system/package.json | 6 -- packages/legacy-system/src/index.ts | 2 - packages/legacy-system/src/keyboard.vue | 106 --------------------- packages/legacy-system/src/misc.tsx | 15 --- packages/legacy-system/src/storage.ts | 116 ----------------------- pnpm-lock.yaml | 9 -- 10 files changed, 263 deletions(-) delete mode 100644 packages/legacy-system/package.json delete mode 100644 packages/legacy-system/src/index.ts delete mode 100644 packages/legacy-system/src/keyboard.vue delete mode 100644 packages/legacy-system/src/misc.tsx delete mode 100644 packages/legacy-system/src/storage.ts diff --git a/packages-user/entry-client/package.json b/packages-user/entry-client/package.json index 26a35ee..4ddab95 100644 --- a/packages-user/entry-client/package.json +++ b/packages-user/entry-client/package.json @@ -7,7 +7,6 @@ "@motajs/render": "workspace:*", "@motajs/render-vue": "workspace:*", "@motajs/system": "workspace:*", - "@motajs/legacy-system": "workspace:*", "@user/client-base": "workspace:*", "@user/client-modules": "workspace:*" } diff --git a/packages-user/entry-client/src/create.ts b/packages-user/entry-client/src/create.ts index 7b80179..9c6fc3a 100644 --- a/packages-user/entry-client/src/create.ts +++ b/packages-user/entry-client/src/create.ts @@ -1,7 +1,6 @@ import { Mota } from '@user/entry-data'; import * as Client from '@motajs/client'; import * as ClientBase from '@motajs/client-base'; -import * as LegacySystem from '@motajs/legacy-system'; import * as Render from '@motajs/render'; import * as RenderVue from '@motajs/render-vue'; import * as System from '@motajs/system'; @@ -13,7 +12,6 @@ import * as Lodash from 'lodash-es'; export function create() { Mota.register('@motajs/client', Client); Mota.register('@motajs/client-base', ClientBase); - Mota.register('@motajs/legacy-system', LegacySystem); Mota.register('@motajs/render', Render); Mota.register('@motajs/render-vue', RenderVue); Mota.register('@motajs/system', System); diff --git a/packages-user/entry-data/src/create.ts b/packages-user/entry-data/src/create.ts index 98dfffc..3bd40df 100644 --- a/packages-user/entry-data/src/create.ts +++ b/packages-user/entry-data/src/create.ts @@ -1,6 +1,5 @@ import { Mota } from './mota'; import * as Common from '@motajs/common'; -import * as LegacyCommon from '@motajs/legacy-common'; import * as DataCommon from '@user/data-common'; import * as DataBase from '@user/data-base'; import * as DataSystem from '@user/data-system'; @@ -8,7 +7,6 @@ import * as DataState from '@user/data-state'; export function create() { Mota.register('@motajs/common', Common); - Mota.register('@motajs/legacy-common', LegacyCommon); Mota.register('@user/data-common', DataCommon); Mota.register('@user/data-base', DataBase); Mota.register('@user/data-system', DataSystem); diff --git a/packages-user/entry-data/src/mota.ts b/packages-user/entry-data/src/mota.ts index f58e491..3f06c7e 100644 --- a/packages-user/entry-data/src/mota.ts +++ b/packages-user/entry-data/src/mota.ts @@ -1,8 +1,6 @@ import type * as Client from '@motajs/client'; import type * as ClientBase from '@motajs/client-base'; import type * as Common from '@motajs/common'; -import type * as LegacyCommon from '@motajs/legacy-common'; -import type * as LegacySystem from '@motajs/legacy-system'; import type * as Render from '@motajs/render'; import type * as RenderVue from '@motajs/render-vue'; import type * as System from '@motajs/system'; @@ -20,8 +18,6 @@ interface ModuleInterface { '@motajs/client': typeof Client; '@motajs/client-base': typeof ClientBase; '@motajs/common': typeof Common; - '@motajs/legacy-common': typeof LegacyCommon; - '@motajs/legacy-system': typeof LegacySystem; '@motajs/render': typeof Render; '@motajs/render-vue': typeof RenderVue; '@motajs/system': typeof System; diff --git a/packages/legacy-system/package.json b/packages/legacy-system/package.json deleted file mode 100644 index 6420a75..0000000 --- a/packages/legacy-system/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "@motajs/legacy-system", - "dependencies": { - "@motajs/system": "workspace:*" - } -} diff --git a/packages/legacy-system/src/index.ts b/packages/legacy-system/src/index.ts deleted file mode 100644 index ef18468..0000000 --- a/packages/legacy-system/src/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from './misc'; -export * from './storage'; diff --git a/packages/legacy-system/src/keyboard.vue b/packages/legacy-system/src/keyboard.vue deleted file mode 100644 index ddeff3c..0000000 --- a/packages/legacy-system/src/keyboard.vue +++ /dev/null @@ -1,106 +0,0 @@ - - - - - diff --git a/packages/legacy-system/src/misc.tsx b/packages/legacy-system/src/misc.tsx deleted file mode 100644 index ae3bee8..0000000 --- a/packages/legacy-system/src/misc.tsx +++ /dev/null @@ -1,15 +0,0 @@ -import { Keyboard } from '@motajs/system'; -import KeyboardUI from './keyboard.vue'; - -interface VirtualKeyProps { - keyboard: Keyboard; -} - -export function VirtualKey(props: VirtualKeyProps) { - return ( - - ); -} diff --git a/packages/legacy-system/src/storage.ts b/packages/legacy-system/src/storage.ts deleted file mode 100644 index a7e15fb..0000000 --- a/packages/legacy-system/src/storage.ts +++ /dev/null @@ -1,116 +0,0 @@ -import { isNil } from 'lodash-es'; - -export class GameStorage { - static list: GameStorage[] = []; - - key: string; - data!: Partial; - - constructor(key: string) { - this.key = key; - this.read(); - GameStorage.list.push(this); - } - - /** - * 从本地存储读取 - */ - read(): T { - const data = localStorage.getItem(this.key) ?? '{}'; - return (this.data = JSON.parse(data)); - } - - /** - * 写入本地存储 - */ - write() { - localStorage.setItem(this.key, JSON.stringify(this.data)); - } - - /** - * 设置存储的值 - * @param key 存储的名称 - * @param value 存储的值 - */ - setValue(key: K, value: T[K]): void; - setValue(key: string, value: any): void; - setValue(key: K, value: T[K]) { - this.data[key] = value; - } - - getValue(key: K): T[K] | null; - getValue(key: K, defaults: T[K]): T[K]; - getValue(key: string, defaults?: T): T; - getValue(key: K, defaults?: T[K]) { - if (!isNil(this.data[key])) return this.data[key]; - else { - if (defaults !== void 0) { - this.data[key] = defaults; - return defaults; - } - return null; - } - } - - toJSON() { - return JSON.stringify(this.data); - } - - clear() { - this.data = {}; - } - - keys() { - return Object.keys(this.data); - } - - values() { - return Object.values(this.data); - } - - entries() { - return Object.entries(this.data); - } - - /** - * 获取本游戏的存储键 - * @param key 存储名称 - */ - static fromGame(key: string) { - return `HumanBreak_${key}`; - } - - /** - * 获取与作者相关联的存储键 - * @param author 作者名称 - * @param key 存储名称 - */ - static fromAuthor(author: string, key: string) { - return `${author}@${key}`; - } - - /** - * 根据存储键获取对应的存储实例 - * @param key 存储键 - * @example Storage.get(Storage.fromAuthor('AncTe', 'setting')); - */ - static get(key: string) { - return this.list.find(v => v.key === key); - } - - /** - * 与Symbol.for类似 - */ - static for(key: string) { - const s = this.get(key); - if (s) return s; - else return new GameStorage(key); - } -} - -window.addEventListener('beforeunload', () => { - GameStorage.list.forEach(v => v.write()); -}); -window.addEventListener('blur', () => { - GameStorage.list.forEach(v => v.write()); -}); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 22dc0a1..901cb1a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -530,9 +530,6 @@ importers: '@motajs/common': specifier: workspace:* version: link:../../packages/common - '@motajs/legacy-system': - specifier: workspace:* - version: link:../../packages/legacy-system '@motajs/render': specifier: workspace:* version: link:../../packages/render @@ -587,12 +584,6 @@ importers: packages/common: {} - packages/legacy-system: - dependencies: - '@motajs/system': - specifier: workspace:* - version: link:../system - packages/loader: dependencies: '@motajs/common':