# Copy all assets used by Hell Tower and its 10 games into assets\hell_tower $ErrorActionPreference = "Stop" $srcRoot = "assets" $dstRoot = "assets\hell_tower" if (-not (Test-Path $dstRoot)) { New-Item -ItemType Directory -Path $dstRoot -Force | Out-Null } function Copy-AssetDir($relSrc, $relDst) { $src = Join-Path $srcRoot $relSrc $dst = Join-Path $dstRoot $relDst if (-not (Test-Path $dst)) { New-Item -ItemType Directory -Path $dst -Force | Out-Null } Write-Host "Copying directory $relSrc -> $relDst..." Get-ChildItem -Path $src | ForEach-Object { $destFile = Join-Path $dst $_.Name Copy-Item -Path $_.FullName -Destination $destFile -Force } } function Copy-AssetFile($relSrc, $relDst) { $src = Join-Path $srcRoot $relSrc $dst = Join-Path $dstRoot $relDst $dstDir = Split-Path $dst -Parent if (-not (Test-Path $dstDir)) { New-Item -ItemType Directory -Path $dstDir -Force | Out-Null } Write-Host "Copying file $relSrc -> $relDst..." Copy-Item -Path $src -Destination $dst -Force } # 1. Animations Copy-AssetDir "animations\buckshot" "animations\buckshot" Copy-AssetDir "animations\coin" "animations\coin" Copy-AssetDir "animations\dice" "animations\dice" Copy-AssetDir "animations\roulette" "animations\roulette" Copy-AssetDir "animations\tables" "animations\tables" Copy-AssetDir "animations\wheel" "animations\wheel" Copy-AssetFile "animations\dbd_hook.ans" "animations\dbd_hook.ans" # 2. Sprites Copy-AssetDir "sprites\buckshot" "sprites\buckshot" Copy-AssetDir "sprites\coin" "sprites\coin" Copy-AssetDir "sprites\dice" "sprites\dice" Copy-AssetDir "sprites\roulette" "sprites\roulette" Copy-AssetDir "sprites\tables" "sprites\tables" Copy-AssetDir "sprites\wheel" "sprites\wheel" # 3. Music (Tower OST) Copy-AssetDir "music\tower" "music\tower" Copy-AssetDir "music\tower" "music" # 4. Textures Copy-AssetFile "textures\card-table.bin" "textures\card-table.bin" Copy-AssetFile "textures\sprite_blackjack_table.png" "textures\sprite_blackjack_table.png" Copy-AssetFile "textures\sprite_roulette_table.png" "textures\sprite_roulette_table.png" Copy-AssetFile "textures\tex_wall_hell.png" "textures\tex_wall_hell.png" # 5. Data Copy-AssetFile "data\dealer_phrases.txt" "data\dealer_phrases.txt" Copy-AssetFile "data\poker-ranks.bin" "data\poker-ranks.bin" # 6. Audio # Generated SFX $genSfx = @( "buckshot-pump.wav", "dice-roll.wav", "round-loss.wav", "round-win.wav", "skill-hit.wav", "skill-miss.wav", "skill-perfect.wav", "ui-tick.wav" ) foreach ($sfx in $genSfx) { Copy-AssetFile "audio\generated\$sfx" "audio\generated\$sfx" } # ASCII root audio $rootAudio = @( "b05e1ac8be34248.wav", "hKhoJArfEGAxxMewx0UQiddakTdBjFc.wav", "moving-stone.wav", "playing_cards_deck_flick_through_001_20485.wav", "revolverdryfirec.wav", "roulette-wheel-throw-2.wav", "toy-gun-revolver-close-chamber-spin_f1ruc5nd.wav", "victory-tf2.wav" ) foreach ($aud in $rootAudio) { Copy-AssetFile "audio\$aud" "audio\$aud" } # Russian audio files matching tower/game sound effects by exact size to avoid codepage issues $dstAudioDir = Join-Path $dstRoot "audio" $targetSizes = @(1466446, 228342, 212174, 757838) Get-ChildItem "assets\audio\*.wav" | Where-Object { $targetSizes -contains $_.Length } | ForEach-Object { Write-Host "Copying audio file $($_.Name) -> audio\$($_.Name)..." Copy-Item -Path $_.FullName -Destination (Join-Path $dstAudioDir $_.Name) -Force } Write-Host "All Hell Tower assets successfully copied!"