mirror of
https://gitea.tendokyu.moe/beerpsi/x.git
synced 2026-09-29 10:17:55 +03:00
40 lines
1.2 KiB
Python
40 lines
1.2 KiB
Python
import shutil
|
|
from pathlib import Path
|
|
|
|
|
|
def walk_data_files(root: Path):
|
|
files = []
|
|
file_map = {}
|
|
|
|
for dirpath, _, filenames in (root / "App" / "data" / "A000").walk():
|
|
for filename in filenames:
|
|
relative = (dirpath / filename).relative_to(root / "App" / "data" / "A000")
|
|
file_map[relative] = dirpath / filename
|
|
files.append(relative)
|
|
|
|
for option in (root / "Option").iterdir():
|
|
if option.name == "AOMN":
|
|
continue
|
|
|
|
for dirpath, _, filenames in option.walk():
|
|
for filename in filenames:
|
|
relative = (dirpath / filename).relative_to(option)
|
|
file_map[relative] = dirpath / filename
|
|
files.append(relative)
|
|
|
|
return files, file_map
|
|
|
|
old_data = Path("CHUNITHM LUMINOUS PLUS (SDHD 2.26.00)")
|
|
new_data = Path("Chunithm Verse")
|
|
|
|
old_files, old_file_map = walk_data_files(old_data)
|
|
new_files, _ = walk_data_files(new_data)
|
|
|
|
removed_files = list(set(old_files).difference(set(new_files)))
|
|
|
|
(new_data / "Option" / "AOMN").mkdir(exist_ok=True)
|
|
|
|
for file in removed_files:
|
|
(new_data / "Option" / "AOMN" / file).parent.mkdir(exist_ok=True, parents=True)
|
|
shutil.copy2(old_file_map[file], new_data / "Option" / "AOMN" / file)
|