revert(local): 运行链路默认改回 unpacked,src 改为 -UseSrc 可选
保持原有行为:默认加载 3dtank.com/play/static/js/unpacked(含 4 个模块的人工补丁),启动时按需打单包,-Build 强制重打;-UseSrc 才切到 3DTank/src,-Split 作为兼容旧参数等同默认。serve.js 的 --src 能力保留但不启用。
This commit is contained in:
1 parent
a487c28dc1
commit
78c02345c2
2 files changed
+20
-17
No files matched your search
@@ -32,12 +32,12 @@
|
|||||||
.\Start-LocalAndRelay.ps1 -SRV 2 -OpenBrowser
|
.\Start-LocalAndRelay.ps1 -SRV 2 -OpenBrowser
|
||||||
|
|
||||||
.EXAMPLE
|
.EXAMPLE
|
||||||
// 默认直接跑 3DTank/src 源码;改了 src 之后强制重打单包再起
|
// 默认用切割产物 unpacked;启动时按需打单包(-Build 强制重打)
|
||||||
.\Start-LocalAndRelay.ps1 -Build -OpenBrowser
|
.\Start-LocalAndRelay.ps1 -OpenBrowser
|
||||||
|
|
||||||
.EXAMPLE
|
.EXAMPLE
|
||||||
// 回到切割产物(3dtank.com/play/static/js/unpacked)
|
// 改用反编译源码 3DTank/src(改完刷新即生效)
|
||||||
.\Start-LocalAndRelay.ps1 -Split -OpenBrowser
|
.\Start-LocalAndRelay.ps1 -UseSrc -OpenBrowser
|
||||||
#>
|
#>
|
||||||
# 注意:这里刻意不用 [CmdletBinding()]。
|
# 注意:这里刻意不用 [CmdletBinding()]。
|
||||||
# PowerShell 原生不支持 -SRV=1 这种等号写法(会报 "parameter cannot be found"),
|
# PowerShell 原生不支持 -SRV=1 这种等号写法(会报 "parameter cannot be found"),
|
||||||
@@ -59,8 +59,9 @@ param(
|
|||||||
[switch]$NoHex, # 中继:log.txt 不写十六进制(日志体积大幅减小)
|
[switch]$NoHex, # 中继:log.txt 不写十六进制(日志体积大幅减小)
|
||||||
[switch]$Quiet, # 中继:只写 log.txt,不刷控制台
|
[switch]$Quiet, # 中继:只写 log.txt,不刷控制台
|
||||||
[switch]$NoTunnel, # 中继:关闭 _reconnectFast 隧道接管(默认开启:战场连接也走中继)
|
[switch]$NoTunnel, # 中继:关闭 _reconnectFast 隧道接管(默认开启:战场连接也走中继)
|
||||||
[switch]$Build, # 强制重打单包(src 模式默认只在缺失/源码更新时打包)
|
[switch]$Build, # 强制重打单包(默认只在缺失/模块更新时打包)
|
||||||
[switch]$Split # 改回用切割产物 unpacked,而不是 3DTank/src 源码
|
[switch]$UseSrc, # 可选:改用反编译源码 3DTank/src;默认仍用切割产物 unpacked
|
||||||
|
[switch]$Split # 兼容旧参数:默认就是 unpacked,此开关等同默认
|
||||||
)
|
)
|
||||||
|
|
||||||
$ErrorActionPreference = 'Stop'
|
$ErrorActionPreference = 'Stop'
|
||||||
@@ -169,18 +170,18 @@ if ($FetchAssets) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
# ---------- 3.5) 模块来源与单包 ----------
|
# ---------- 3.5) 模块来源与单包 ----------
|
||||||
# 默认:直接跑反编译源码 3DTank/src(改完代码刷新即生效),启动时按需打单包保证加载速度
|
# 默认:用切割产物 3dtank.com/play/static/js/unpacked(保持原有行为)
|
||||||
# -Build:强制重打单包
|
# -UseSrc:改用反编译源码 3DTank/src(改完代码刷新即生效)
|
||||||
# -Split:改回切割产物 3dtank.com/play/static/js/unpacked
|
# -Build :强制重打单包
|
||||||
$UseSrc = -not $Split
|
|
||||||
$SrcDir = Join-Path $Project 'src'
|
$SrcDir = Join-Path $Project 'src'
|
||||||
$RootDir = Split-Path -Parent $Project
|
$RootDir = Split-Path -Parent $Project
|
||||||
$PackScript = Join-Path $RootDir 'tools\pack_unpacked.js'
|
$PackScript = Join-Path $RootDir 'tools\pack_unpacked.js'
|
||||||
if (-not (Test-Path $PackScript)) { throw ('找不到打包脚本: ' + $PackScript) }
|
if (-not (Test-Path $PackScript)) { throw ('找不到打包脚本: ' + $PackScript) }
|
||||||
|
|
||||||
|
if ($Split) { $UseSrc = $false }
|
||||||
if ($UseSrc) {
|
if ($UseSrc) {
|
||||||
if (-not (Test-Path $SrcDir)) {
|
if (-not (Test-Path $SrcDir)) {
|
||||||
throw ('找不到源码目录 ' + $SrcDir + ',请先运行 3DTank/tools/extract.js 生成,或加 -Split 用切割产物')
|
throw ('找不到源码目录 ' + $SrcDir + ',请先运行 3DTank/tools/extract.js 生成;或去掉 -UseSrc 用切割产物')
|
||||||
}
|
}
|
||||||
$PackDir = $SrcDir
|
$PackDir = $SrcDir
|
||||||
$PackFile = Join-Path $SrcDir 'unpacked.pack.json'
|
$PackFile = Join-Path $SrcDir 'unpacked.pack.json'
|
||||||
|
|||||||
@@ -216,21 +216,23 @@ KT/
|
|||||||
|
|
||||||
## 8. 产出"可启动 JS"的端到端流程
|
## 8. 产出"可启动 JS"的端到端流程
|
||||||
|
|
||||||
### 8.1 运行时模块来源(src 模式,默认)
|
### 8.1 运行时模块来源
|
||||||
|
|
||||||
`Start-LocalAndRelay.ps1` 默认直接加载 **`3DTank/src`**(反编译源码),改完代码刷新即生效:
|
默认:**`3dtank.com/play/static/js/unpacked`**(切割产物,含 4 个模块的人工补丁)。
|
||||||
|
可选:`-UseSrc` 改用 `3DTank/src`(纯净还原;人工补丁需先移植过去)。
|
||||||
|
|
||||||
| 行为 | 说明 |
|
| 行为 | 说明 |
|
||||||
|---|---|
|
|---|---|
|
||||||
| 启动时打包 | 单包缺失、或 `src/module_*.js` 比单包新 → 自动跑 `pack_unpacked.js` |
|
| 启动时打包 | 单包缺失、或所选目录的 `module_*.js` 比单包新 → 自动跑 `pack_unpacked.js` |
|
||||||
| `-Build` | 强制重打单包 |
|
| `-Build` | 强制重打单包 |
|
||||||
| `-Split` | 回到切割产物 `3dtank.com/play/static/js/unpacked` |
|
| `-UseSrc` | 改用 `3DTank/src`(`-Split` 为兼容旧参数,等同默认) |
|
||||||
| 路由 | `serve.js --src <目录>`:`unpacked/module_*.js`、`unpacked/resources.json`、`unpacked/index.json`、`unpacked.pack.json` → src 目录 |
|
| 路由 | `serve.js --src <目录>`:仅 `-UseSrc` 时传入;`unpacked/module_*.js`、`resources.json`、`index.json`、`unpacked.pack.json` → 源码目录 |
|
||||||
| 仍取镜像 | 加载器 `main.<hash>.js`、`unpacked/hornet_bundle.js`(HORNET 工具链) |
|
| 仍取镜像 | 加载器 `main.<hash>.js`、`unpacked/hornet_bundle.js`(HORNET 工具链) |
|
||||||
|
|
||||||
打包命令:
|
打包命令(按来源目录二选一):
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
node tools/pack_unpacked.js 3dtank.com/play/static/js/unpacked 3dtank.com/play/static/js/unpacked.pack.json
|
||||||
node tools/pack_unpacked.js 3DTank/src 3DTank/src/unpacked.pack.json
|
node tools/pack_unpacked.js 3DTank/src 3DTank/src/unpacked.pack.json
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user