KAZIK/tools/generators/setup_hell_tower_sprites.ps1
Игорь Федосеев eef2039c7e feat(hell_tower): integrate custom hell sprites, redesign tower menu, and fix entrance crash
- Add ResolveHellAssetPath to automatically load *-hell variants during tournamentMode with fallback to vanilla assets
- Rebuild Hell Tower briefing menu using HellTower_menu background with smooth floor cursor and sliding callout info card
- Fix buffer overrun in RenderHellTower3D by packing helltower-menu at native 640x480 resolution with bounds-checked blit
- Temporarily disable tower background music per user request
- Add asset packing pipeline, verification tools, and automated 10-floor run-through smoke test
2026-10-26 19:44:06 +03:00

78 lines
2.7 KiB
PowerShell

# Clean assets\hell_tower to contain ONLY PNG sprites for Hell Tower games
$ErrorActionPreference = "Stop"
$towerDir = "assets\hell_tower"
# 1. Clean out previous contents of assets\hell_tower
if (Test-Path $towerDir) {
Get-ChildItem -Path $towerDir | Remove-Item -Recurse -Force
}
New-Item -ItemType Directory -Path $towerDir -Force | Out-Null
# 2. Define game sprite mappings
$games = @{
"01_coin" = @(
"assets\sprites\coin\faces-v1.png",
"assets\sprites\coin\hands-v1.png",
"assets\sprites\coin\hands-v2.png",
"assets\sprites\coin\table-v1.png"
)
"02_dice" = @(
"assets\sprites\dice\hands-v1.png",
"assets\sprites\dice\hands-v2.png"
)
"04_05_08_card_tables" = @(
"assets\sprites\tables\blackjack-guests-v1.png",
"assets\sprites\tables\blackjack-room-v1.png",
"assets\sprites\tables\card-table-active-v2.png",
"assets\sprites\tables\card-table-pixel-v3.png",
"assets\sprites\tables\card-table-v1.png",
"assets\textures\sprite_blackjack_table.png"
)
"06_russian_roulette" = @(
"assets\sprites\roulette\gman-talk-v1.png",
"assets\sprites\roulette\hands-v5.png",
"assets\sprites\roulette\participants-v1.png",
"assets\sprites\roulette\revolver-actions-v1.png"
)
"07_casino_roulette" = @(
"assets\sprites\wheel\closeup-v1.png",
"assets\sprites\wheel\table-v1.png",
"assets\textures\sprite_roulette_table.png"
)
"10_buckshot" = @(
"assets\sprites\buckshot\blood-v3.png",
"assets\sprites\buckshot\dealer-actions-v3.png",
"assets\sprites\buckshot\dealer-source-v2.png",
"assets\sprites\buckshot\death-v3.png",
"assets\sprites\buckshot\items-v2.png",
"assets\sprites\buckshot\loading-v2.png",
"assets\sprites\buckshot\medical-dealer-v5.png",
"assets\sprites\buckshot\medical-player-v5.png",
"assets\sprites\buckshot\medical-v3.png",
"assets\sprites\buckshot\props-v2.png",
"assets\sprites\buckshot\room-v2.png",
"assets\sprites\buckshot\self-flash-v4.png",
"assets\sprites\buckshot\self-v3.png",
"assets\sprites\buckshot\shots-v2.png"
)
"environment" = @(
"assets\textures\tex_wall_hell.png"
)
}
foreach ($folder in $games.Keys) {
$targetFolder = Join-Path $towerDir $folder
New-Item -ItemType Directory -Path $targetFolder -Force | Out-Null
foreach ($file in $games[$folder]) {
if (Test-Path $file) {
Copy-Item -Path $file -Destination $targetFolder -Force
Write-Host "Copied $file -> $folder"
} else {
Write-Warning "File not found: $file"
}
}
}
Write-Host "Setup finished successfully!"