mirror of
https://github.com/LostArtefacts/TRX.git
synced 2025-04-28 20:58:07 +03:00
tools: download GM assets too
This commit is contained in:
parent
2536ff55c1
commit
eec8f16d5f
2 changed files with 21 additions and 22 deletions
7
.gitignore
vendored
7
.gitignore
vendored
|
@ -38,4 +38,11 @@ src/tr2/subprojects/dwarfstack.wrap
|
||||||
|
|
||||||
data/tr1/ship/data/images/
|
data/tr1/ship/data/images/
|
||||||
data/tr2/ship/data/images/
|
data/tr2/ship/data/images/
|
||||||
|
data/tr2/ship/data/level1.tr2
|
||||||
|
data/tr2/ship/data/level2.tr2
|
||||||
|
data/tr2/ship/data/level3.tr2
|
||||||
|
data/tr2/ship/data/level4.tr2
|
||||||
|
data/tr2/ship/data/level5.tr2
|
||||||
|
data/tr2/ship/data/main_gm.sfx
|
||||||
|
data/tr2/ship/data/title_gm.tr2
|
||||||
data/tr2/ship/music/
|
data/tr2/ship/music/
|
||||||
|
|
|
@ -42,41 +42,33 @@ def extract_zip(zip_path: Path, dest_dir: Path) -> None:
|
||||||
z.extractall(dest_dir)
|
z.extractall(dest_dir)
|
||||||
|
|
||||||
|
|
||||||
def download_assets(assets: list[tuple[str, Path]]) -> None:
|
def download_assets(asset_urls: list[str], target_dir: Path) -> None:
|
||||||
with tempfile.TemporaryDirectory() as tmpdir_str:
|
with tempfile.TemporaryDirectory() as tmpdir_str:
|
||||||
tmpdir = Path(tmpdir_str)
|
tmpdir = Path(tmpdir_str)
|
||||||
for url, dest in assets:
|
for url in asset_urls:
|
||||||
filename = Path(url).name
|
filename = Path(url).name
|
||||||
local_zip = tmpdir / filename
|
local_zip = tmpdir / filename
|
||||||
download_to_file(url, local_zip)
|
download_to_file(url, local_zip)
|
||||||
extract_zip(local_zip, dest)
|
extract_zip(local_zip, target_dir)
|
||||||
print("Asset download and extraction complete.")
|
print("Asset download and extraction complete.")
|
||||||
|
|
||||||
|
|
||||||
def main() -> None:
|
def main() -> None:
|
||||||
args = parse_args()
|
args = parse_args()
|
||||||
assets: dict[int, list[tuple[str, Path]]] = {
|
asset_urls_map: dict[int, list[str]] = {
|
||||||
1: [
|
1: ["https://lostartefacts.dev/aux/tr1x/main.zip"],
|
||||||
(
|
|
||||||
"https://lostartefacts.dev/aux/tr1x/main.zip",
|
|
||||||
Path("data/tr1/ship"),
|
|
||||||
)
|
|
||||||
],
|
|
||||||
2: [
|
2: [
|
||||||
(
|
"https://lostartefacts.dev/aux/tr2x/main.zip",
|
||||||
"https://lostartefacts.dev/aux/tr2x/main.zip",
|
"https://lostartefacts.dev/aux/tr2x/trgm.zip",
|
||||||
Path("data/tr2/ship"),
|
|
||||||
)
|
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
match str(args.game_version):
|
|
||||||
case "1":
|
versions = {"1": [1], "2": [2], "all": [1, 2]}[args.game_version]
|
||||||
download_assets(assets[1])
|
for version in versions:
|
||||||
case "2":
|
download_assets(
|
||||||
download_assets(assets[2])
|
asset_urls_map[version],
|
||||||
case "all":
|
target_dir=PROJECT_PATHS[version].shipped_data_dir,
|
||||||
download_assets(assets[1])
|
)
|
||||||
download_assets(assets[2])
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue