From 12c2943c5e9656e7e2782030615c73ac66e66467 Mon Sep 17 00:00:00 2001 From: unanmed <1319491857@qq.com> Date: Thu, 17 Sep 2026 18:28:06 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E5=88=A0=E9=99=A4=20legacy-plugin-?= =?UTF-8?q?client?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages-user/entry-client/package.json | 3 +- packages-user/entry-client/src/create.ts | 2 - packages-user/entry-data/src/mota.ts | 2 - .../legacy-plugin-client/package.json | 7 - .../legacy-plugin-client/src/dev/hotReload.ts | 147 ------------------ .../legacy-plugin-client/src/index.ts | 5 - pnpm-lock.yaml | 12 -- 7 files changed, 1 insertion(+), 177 deletions(-) delete mode 100644 packages-user/legacy-plugin-client/package.json delete mode 100644 packages-user/legacy-plugin-client/src/dev/hotReload.ts delete mode 100644 packages-user/legacy-plugin-client/src/index.ts diff --git a/packages-user/entry-client/package.json b/packages-user/entry-client/package.json index 30dfc82..8fb77ab 100644 --- a/packages-user/entry-client/package.json +++ b/packages-user/entry-client/package.json @@ -12,7 +12,6 @@ "@motajs/legacy-ui": "workspace:*", "@motajs/legacy-system": "workspace:*", "@user/client-base": "workspace:*", - "@user/client-modules": "workspace:*", - "@user/legacy-plugin-client": "workspace:*" + "@user/client-modules": "workspace:*" } } diff --git a/packages-user/entry-client/src/create.ts b/packages-user/entry-client/src/create.ts index f6531be..0b72d24 100644 --- a/packages-user/entry-client/src/create.ts +++ b/packages-user/entry-client/src/create.ts @@ -9,7 +9,6 @@ import * as RenderVue from '@motajs/render-vue'; import * as System from '@motajs/system'; import * as UserClientBase from '@user/client-base'; import * as ClientModules from '@user/client-modules'; -import * as LegacyPluginClient from '@user/legacy-plugin-client'; import * as MutateAnimate from 'mutate-animate'; import * as Vue from 'vue'; import * as Lodash from 'lodash-es'; @@ -28,7 +27,6 @@ export function create() { Mota.register('@motajs/system', System); Mota.register('@user/client-base', UserClientBase); Mota.register('@user/client-modules', ClientModules); - Mota.register('@user/legacy-plugin-client', LegacyPluginClient); Mota.register('MutateAnimate', MutateAnimate); Mota.register('Vue', Vue); Mota.register('Lodash', Lodash); diff --git a/packages-user/entry-data/src/mota.ts b/packages-user/entry-data/src/mota.ts index f083d89..bd9e16e 100644 --- a/packages-user/entry-data/src/mota.ts +++ b/packages-user/entry-data/src/mota.ts @@ -14,7 +14,6 @@ import type * as DataCommon from '@user/data-common'; import type * as DataBase from '@user/data-base'; import type * as DataSystem from '@user/data-system'; import type * as DataState from '@user/data-state'; -import type * as LegacyPluginClient from '@user/legacy-plugin-client'; // ---------- 必要的第三方库 import type * as MutateAnimate from 'mutate-animate'; import type * as Vue from 'vue'; @@ -37,7 +36,6 @@ interface ModuleInterface { '@user/data-base': typeof DataBase; '@user/data-system': typeof DataSystem; '@user/data-state': typeof DataState; - '@user/legacy-plugin-client': typeof LegacyPluginClient; // ---------- 必要的第三方库 MutateAnimate: typeof MutateAnimate; Vue: typeof Vue; diff --git a/packages-user/legacy-plugin-client/package.json b/packages-user/legacy-plugin-client/package.json deleted file mode 100644 index 4b9f93d..0000000 --- a/packages-user/legacy-plugin-client/package.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "name": "@user/legacy-plugin-client", - "dependencies": { - "@user/client-modules": "workspace:*", - "@user/data-state": "workspace:*" - } -} \ No newline at end of file diff --git a/packages-user/legacy-plugin-client/src/dev/hotReload.ts b/packages-user/legacy-plugin-client/src/dev/hotReload.ts deleted file mode 100644 index 4b0a797..0000000 --- a/packages-user/legacy-plugin-client/src/dev/hotReload.ts +++ /dev/null @@ -1,147 +0,0 @@ -// @ts-nocheck - -export {}; - -interface PortResponse { - server: number; -} - -/* @__PURE__ */ (async function () { - if (main.mode !== 'play' || main.replayChecking) return; - - const res = await fetch('/getPort'); - const { server } = (await res.json()) as PortResponse; - - /** - * 热重载css - * @param {string} data - */ - function reloadCss(data) { - const css = document.getElementById('mota-css'); - css.remove(); - const link = document.createElement('link'); - link.rel = 'stylesheet'; - link.type = 'text/css'; - link.href = data; - link.id = 'mota-css'; - document.head.appendChild(link); - console.log(`Css hot reload: ${data}`); - } - - /** - * 热重载楼层 - * @param {string} data - */ - async function reloadFloor(data) { - // 如果被砍层了直接忽略 - if ( - core.status.maps && - (core.status.maps[data].deleted || - core.status.maps[data].forceDelete) - ) - return; - // 首先重新加载main.floors对应的楼层 - await import( - /* @vite-ignore */ `/forceTem/project/floors/${data}.js?v=${Date.now()}` - ); - // 然后写入core.floors并解析 - core.floors[data] = main.floors[data]; - const floor = core.loadFloor(data); - if (core.isPlaying()) { - core.status.maps[data] = floor; - delete core.status.mapBlockObjs[data]; - core.extractBlocks(data); - if (data === core.status.floorId) { - core.status.thisMap = core.status.maps[data]; - // let weather = core.getFlag('__weather__', null); - // if (!weather && core.status.thisMap.weather) - // weather = core.status.thisMap.weather; - // if (weather) core.setWeather(weather[0], weather[1]); - // else core.setWeather(); - } - core.status.maps[data].enemy?.extract(); - core.status.maps[data].enemy?.calRealAttribute(); - core.updateStatusBar(true, true); - } - const Binder = Mota.require( - '@user/client-modules' - ).LayerGroupFloorBinder; - Binder.activeBinder.forEach(v => { - if (v.getFloor() === core.status.floorId) { - v.updateBindData(); - } - }); - console.log(`Floor hot reload: ${data}`); - } - - /** - * 属性热重载,包括全塔属性等 - * @param {string} data - */ - async function reloadData(data) { - const script = document.createElement('script'); - script.src = `/forceTem/project/${data}.js?v=${Date.now()}`; - document.body.appendChild(script); - await new Promise(res => { - script.onload = () => res('success'); - }); - - let after; - if (data === 'data') after = data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d; - if (data === 'enemys') - after = enemys_fcae963b_31c9_42b4_b48c_bb48d09f3f80; - if (data === 'icons') - after = icons_4665ee12_3a1f_44a4_bea3_0fccba634dc1; - if (data === 'items') - after = items_296f5d02_12fd_4166_a7c1_b5e830c9ee3a; - if (data === 'maps') after = maps_90f36752_8815_4be8_b32b_d7fad1d0542e; - if (data === 'events') - after = events_c12a15a8_c380_4b28_8144_256cba95f760; - - if (data === 'enemys') { - core.enemys.enemys = after; - for (var enemyId in after) { - core.enemys.enemys[enemyId].id = enemyId; - } - core.material.enemys = core.getEnemys(); - } else if (data === 'icons') { - core.icons.icons = after; - core.material.icons = core.getIcons(); - } else if (data === 'items') { - core.items.items = after; - for (var itemId in after) { - core.items.items[itemId].id = itemId; - } - core.material.items = core.getItems(); - } else if (data === 'maps') { - core.maps.blocksInfo = after; - core.status.mapBlockObjs = {}; - core.status.number2block = {}; - Object.values(core.status.maps).forEach(v => delete v.blocks); - core.extractBlocks(); - core.setWeather( - core.animateFrame.weather.type, - core.animateFrame.weather.level - ); - core.drawMap(); - } else if (data === 'events') { - core.events.commonEvent = after.commonEvent; - } else if (data === 'data') { - location.reload(); - } - core.updateStatusBar(true, true); - console.log(`Data hot reload: ${data}`); - } - - const ws = new WebSocket(`ws://127.0.0.1:${server}`); - ws.addEventListener('open', () => { - console.log(`Web socket connect successfully`); - }); - ws.addEventListener('message', e => { - const data = JSON.parse(e.data); - if (data.type === 'reload') location.reload(); - if (data.type === 'floorHotReload') reloadFloor(data.floor); - if (data.type === 'dataHotReload') reloadData(data.data); - if (data.type === 'cssHotReload') reloadCss(data.path); - }); -})(); diff --git a/packages-user/legacy-plugin-client/src/index.ts b/packages-user/legacy-plugin-client/src/index.ts deleted file mode 100644 index 9e299e2..0000000 --- a/packages-user/legacy-plugin-client/src/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -if (import.meta.env.DEV) { - import('./dev/hotReload'); -} - -export {}; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index bb3f18b..14d6676 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -372,9 +372,6 @@ importers: '@user/client-modules': specifier: workspace:* version: link:../client-modules - '@user/legacy-plugin-client': - specifier: workspace:* - version: link:../legacy-plugin-client packages-user/entry-data: dependencies: @@ -394,15 +391,6 @@ importers: specifier: workspace:* version: link:../data-system - packages-user/legacy-plugin-client: - dependencies: - '@user/client-modules': - specifier: workspace:* - version: link:../client-modules - '@user/data-state': - specifier: workspace:* - version: link:../data-state - packages/animate: {} packages/anon-tokyo: {}