feat(gameplay): 更新单位属性和材质配置 - 调整多个单位的基础生命值和攻击力数值平衡 - 修改CoreBattleGround材质的纹理缩放比例 - 更新地砖材质颜色为白色 - 优化纹理资源设置,调整最大纹理尺寸并添加PlayableAds平台支持 - 修复弓箭手技能目标查找逻辑,改用统一的敌人检测方法 - 为水晶矿添加中立阵营设置和光球视觉效果同步 - 调整预制体中的全局缩放参数 - 为狼人和石巨人添加NavMeshAgent组件支持 - 优化水晶矿血条显示位置计算方式 ```
81 lines
1.9 KiB
PowerShell
81 lines
1.9 KiB
PowerShell
param(
|
|
[switch]$Check,
|
|
[switch]$NoStage
|
|
)
|
|
|
|
$ErrorActionPreference = "Stop"
|
|
|
|
$repoRoot = (Resolve-Path (Join-Path $PSScriptRoot "..")).Path
|
|
Set-Location $repoRoot
|
|
|
|
$mode = if ($Check) { "check" } else { "fix" }
|
|
$autoStage = -not $NoStage
|
|
|
|
function New-GuidHex {
|
|
return [Guid]::NewGuid().ToString("N")
|
|
}
|
|
|
|
$invalidCount = 0
|
|
$fixedCount = 0
|
|
|
|
$metaFiles = Get-ChildItem -Path . -Recurse -Filter *.meta -File |
|
|
Where-Object {
|
|
$_.FullName -notmatch '\\\.git\\' -and
|
|
$_.FullName -notmatch '\\build\\' -and
|
|
$_.FullName -notmatch '\\obj\\'
|
|
}
|
|
|
|
foreach ($file in $metaFiles) {
|
|
$content = Get-Content -Path $file.FullName -Raw
|
|
$guidMatch = [regex]::Match($content, '(?m)^guid:\s*(\S+)\s*$')
|
|
if (-not $guidMatch.Success) {
|
|
continue
|
|
}
|
|
|
|
$guid = $guidMatch.Groups[1].Value
|
|
if ($guid -match '^[a-f0-9]{32}$') {
|
|
continue
|
|
}
|
|
|
|
$invalidCount++
|
|
$newGuid = New-GuidHex
|
|
|
|
if ($mode -eq "fix") {
|
|
$newContent = [regex]::Replace($content, '(?m)^guid:\s*\S+\s*$', "guid: $newGuid", 1)
|
|
[System.IO.File]::WriteAllText($file.FullName, $newContent)
|
|
|
|
if ($autoStage) {
|
|
git add -- $file.FullName | Out-Null
|
|
}
|
|
|
|
Write-Output "FIXED $($file.FullName): $guid -> $newGuid"
|
|
$fixedCount++
|
|
}
|
|
else {
|
|
Write-Output "INVALID $($file.FullName): $guid (would fix to $newGuid)"
|
|
}
|
|
}
|
|
|
|
if ($invalidCount -eq 0) {
|
|
Write-Output "All .meta GUIDs are valid."
|
|
exit 0
|
|
}
|
|
|
|
if ($mode -eq "check") {
|
|
Write-Output ""
|
|
Write-Output "Found $invalidCount invalid .meta GUID(s)."
|
|
Write-Output "Run to fix:"
|
|
Write-Output " .\scripts\fix-meta-guids.ps1"
|
|
exit 1
|
|
}
|
|
|
|
Write-Output ""
|
|
Write-Output "Fixed $fixedCount invalid .meta GUID(s)."
|
|
if ($autoStage) {
|
|
Write-Output "Staged fixed .meta files automatically."
|
|
}
|
|
else {
|
|
Write-Output "Remember to stage fixed files manually."
|
|
}
|
|
Write-Output "You can run git commit again."
|