From 8de7e046ab43f8971abd5e9bbc72ffced09323d5 Mon Sep 17 00:00:00 2001 From: unanmed <1319491857@qq.com> Date: Mon, 18 Mar 2024 18:08:08 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=B1=80=E5=9F=9F=E7=BD=91=E6=9C=8D?= =?UTF-8?q?=E5=8A=A1=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 ++ pnpm-lock.yaml | 31 +++++++++++++++++++++++++++++++ script/wlan.ts | 37 +++++++++++++++++++++++++++++++++++++ src/core/main/setting.ts | 4 ++-- src/game/enemy/battle.ts | 1 + 5 files changed, 73 insertions(+), 2 deletions(-) create mode 100644 script/wlan.ts diff --git a/package.json b/package.json index c96d8df..248994b 100644 --- a/package.json +++ b/package.json @@ -42,6 +42,7 @@ "@types/babel__core": "^7.20.1", "@types/fontmin": "^0.9.0", "@types/fs-extra": "^9.0.13", + "@types/http-proxy": "^1.17.14", "@types/lodash-es": "^4.17.9", "@types/node": "^18.17.14", "@types/ws": "^8.5.5", @@ -53,6 +54,7 @@ "fontmin": "^0.9.9", "form-data": "^4.0.0", "fs-extra": "^10.1.0", + "http-proxy": "^1.18.1", "less": "^4.2.0", "postcss-preset-env": "^9.4.0", "rollup": "^3.29.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1570a54..0da917e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -76,6 +76,9 @@ devDependencies: '@types/fs-extra': specifier: ^9.0.13 version: 9.0.13 + '@types/http-proxy': + specifier: ^1.17.14 + version: 1.17.14 '@types/lodash-es': specifier: ^4.17.9 version: 4.17.9 @@ -109,6 +112,9 @@ devDependencies: fs-extra: specifier: ^10.1.0 version: 10.1.0 + http-proxy: + specifier: ^1.18.1 + version: 1.18.1 less: specifier: ^4.2.0 version: 4.2.0 @@ -2943,6 +2949,12 @@ packages: '@types/node': 18.17.14 dev: true + /@types/http-proxy@1.17.14: + resolution: {integrity: sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==} + dependencies: + '@types/node': 18.17.14 + dev: true + /@types/linkify-it@3.0.5: resolution: {integrity: sha512-yg6E+u0/+Zjva+buc3EIb+29XEg4wltq7cSmd4Uc2EE/1nUVmxyzpX6gUXD0V8jIrG0r7YeOGVIbYRkxeooCtw==} dev: true @@ -4337,6 +4349,10 @@ packages: engines: {node: '>=0.10.0'} dev: true + /eventemitter3@4.0.7: + resolution: {integrity: sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==} + dev: true + /exponential-backoff@3.1.1: resolution: {integrity: sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==} dev: true @@ -4733,6 +4749,17 @@ packages: - supports-color dev: true + /http-proxy@1.18.1: + resolution: {integrity: sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==} + engines: {node: '>=8.0.0'} + dependencies: + eventemitter3: 4.0.7 + follow-redirects: 1.15.2 + requires-port: 1.0.0 + transitivePeerDependencies: + - debug + dev: true + /https-proxy-agent@5.0.1: resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} engines: {node: '>= 6'} @@ -6222,6 +6249,10 @@ packages: engines: {node: '>= 10'} dev: true + /requires-port@1.0.0: + resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} + dev: true + /resize-observer-polyfill@1.5.1: resolution: {integrity: sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==} dev: false diff --git a/script/wlan.ts b/script/wlan.ts new file mode 100644 index 0000000..e5fc14c --- /dev/null +++ b/script/wlan.ts @@ -0,0 +1,37 @@ +import { networkInterfaces } from 'os'; +import proxy from 'http-proxy'; +import { createServer } from 'http'; + +const port = process.argv[2]; + +const network = networkInterfaces(); + +let ip: string; + +for (const interfaceName in network) { + const interfaces = network[interfaceName]; + if (!interfaces) continue; + if (interfaceName !== 'WLAN') continue; + for (const iface of interfaces) { + // 检查是否为IPv4地址且非内部地址 + if (iface.family === 'IPv4' && !iface.internal) { + console.log(`局域网IP地址: ${iface.address}`); + ip = iface.address; + } + } +} + +if (ip!) { + const server = proxy.createProxyServer(); + const httpServer = createServer((req, res) => { + server.web(req, res, { target: `http://localhost:${port}` }, err => { + console.log(err); + }); + }); + httpServer.listen(Number(port) + 1000, ip, () => { + console.log(`Wlan server on: http://${ip}:${Number(port) + 1000}`); + console.log( + `Editor on: http://${ip}:${Number(port) + 1000}/editor.html` + ); + }); +} diff --git a/src/core/main/setting.ts b/src/core/main/setting.ts index 5836597..b0966c8 100644 --- a/src/core/main/setting.ts +++ b/src/core/main/setting.ts @@ -425,7 +425,7 @@ mainSetting .register('itemDetail', '宝石血瓶显伤', true, COM.Boolean) .register('transition', '界面动画', false, COM.Boolean) .register('antiAlias', '抗锯齿', false, COM.Boolean) - .register('fontSize', '字体大小', isMobile ? 12 : 16, COM.Number, [2, 48, 1]) + .register('fontSize', '字体大小', isMobile ? 10 : 16, COM.Number, [2, 48, 1]) .register('fontSizeStatus', '状态栏字体', 100, COM.Number, [20, 300, 10]) .register('smoothView', '平滑镜头', true, COM.Boolean) .register('criticalGem', '临界显示方式', false, COM.Boolean) @@ -485,7 +485,7 @@ loading.once('coreInit', () => { 'screen.itemDetail': !!storage.getValue('screen.itemDetail', true), 'screen.transition': !!storage.getValue('screen.transition', false), 'screen.antiAlias': !!storage.getValue('screen.antiAlias', false), - 'screen.fontSize': storage.getValue('screen.fontSize', isMobile ? 12 : 16), + 'screen.fontSize': storage.getValue('screen.fontSize', isMobile ? 10 : 16), 'screen.fontSizeStatus': storage.getValue('screen.fontSizeStatus', 100), 'screen.smoothView': !!storage.getValue('screen.smoothView', true), 'screen.criticalGem': !!storage.getValue('screen.criticalGem', false), diff --git a/src/game/enemy/battle.ts b/src/game/enemy/battle.ts index acfa2ec..023f47b 100644 --- a/src/game/enemy/battle.ts +++ b/src/game/enemy/battle.ts @@ -4,6 +4,7 @@ import { loading } from '../game'; export interface CurrentEnemy { enemy: DamageEnemy; + // 这个是干啥的? onMapEnemy: DamageEnemy[]; }