vivaria / tja2fumen

Mod tool to convert TJA chart files (.tja) into .bin files compatible with official games
https://pypi.org/project/tja2fumen/
MIT License
12 stars 1 forks source link

Allow `tja2fumen` to be run on folders to allow fixing timing windows on all .bin files #75

Closed vivaria closed 4 months ago

vivaria commented 4 months ago

This saves the need for users running an extra script to call tja2fumen once per file

This is especially important for the fix in #74.

Sample usage:

$ tja2fumen testing/data/custom_tjas/
Folder passed to tja2fumen. Looking for files in testing/data/custom_tjas/...

Skipping 'song_190378062.bin' because it starts with 'song_' (probably an aud
io file, not a chart file).
Skipping 'song_234351376.bin' because it starts with 'song_' (probably an aud
io file, not a chart file).

The following TJA files will be CONVERTED:
  - testing/data/custom_tjas/Patapon_3\Patapon_3_Acchichichis_Theme.tja      
  - testing/data/custom_tjas/September\September.tja

The following BIN files will be REPAIRED:
  - testing/data/custom_tjas/Patapon_3\Patapon_3_Acchichichis_Theme.bin      
  - testing/data/custom_tjas/Patapon_3\Patapon_3_... [GENERATED]\190378062_m.
bin
  - testing/data/custom_tjas/September\September_e.bin
  - testing/data/custom_tjas/September\September_e_1.bin
  - testing/data/custom_tjas/September\September_e_2.bin
  - testing/data/custom_tjas/September\September_h.bin
  - testing/data/custom_tjas/September\September_h_1.bin
  - testing/data/custom_tjas/September\September_h_2.bin
  - testing/data/custom_tjas/September\September_m.bin
  - testing/data/custom_tjas/September\September_n.bin
  - testing/data/custom_tjas/September\September_n_1.bin
  - testing/data/custom_tjas/September\September_n_2.bin
  - testing/data/custom_tjas/September\September_x.bin
  - testing/data/custom_tjas/September\September_x_1.bin
  - testing/data/custom_tjas/September\September_x_2.bin
  - testing/data/custom_tjas/September\September [GENERATED]\234351376_e.bin 
  - testing/data/custom_tjas/September\September [GENERATED]\234351376_h.bin 
  - testing/data/custom_tjas/September\September [GENERATED]\234351376_m.bin 
  - testing/data/custom_tjas/September\September [GENERATED]\234351376_n.bin 
  - testing/data/custom_tjas/September\September [GENERATED]\234351376_x.bin 

Do you wish to continue? [y/n]y

Converting testing/data/custom_tjas/Patapon_3\Patapon_3_Acchichichis_Theme.tj
a
Converting testing/data/custom_tjas/September\September.tja
Repairing testing/data/custom_tjas/Patapon_3\Patapon_3_Acchichichis_Theme.bin
  - Can't infer difficulty ['e', 'n', 'h', 'm', 'x'] from filename. Skipping 
timing window fix...
  - Fixing don/ka note types (do/ko/don, ka/kat)...
Repairing testing/data/custom_tjas/Patapon_3\Patapon_3_... [GENERATED]\190378
062_m.bin
  - Setting Oni timing windows...
  - Fixing don/ka note types (do/ko/don, ka/kat)...
Repairing testing/data/custom_tjas/September\September_e.bin
  - Setting Easy timing windows...
  - Fixing don/ka note types (do/ko/don, ka/kat)...
Repairing testing/data/custom_tjas/September\September_e_1.bin
  - Setting Easy timing windows...
  - Fixing don/ka note types (do/ko/don, ka/kat)...
Repairing testing/data/custom_tjas/September\September_e_2.bin
  - Setting Easy timing windows...
  - Fixing don/ka note types (do/ko/don, ka/kat)...
Repairing testing/data/custom_tjas/September\September_h.bin
  - Setting Hard timing windows...
  - Fixing don/ka note types (do/ko/don, ka/kat)...
Repairing testing/data/custom_tjas/September\September_h_1.bin
  - Setting Hard timing windows...
  - Fixing don/ka note types (do/ko/don, ka/kat)...
Repairing testing/data/custom_tjas/September\September_h_2.bin
  - Setting Hard timing windows...
  - Fixing don/ka note types (do/ko/don, ka/kat)...
Repairing testing/data/custom_tjas/September\September_m.bin
  - Setting Oni timing windows...
  - Fixing don/ka note types (do/ko/don, ka/kat)...
Repairing testing/data/custom_tjas/September\September_n.bin
  - Setting Normal timing windows...
  - Fixing don/ka note types (do/ko/don, ka/kat)...
Repairing testing/data/custom_tjas/September\September_n_1.bin
  - Setting Normal timing windows...
  - Fixing don/ka note types (do/ko/don, ka/kat)...
Repairing testing/data/custom_tjas/September\September_n_2.bin
  - Setting Normal timing windows...
  - Fixing don/ka note types (do/ko/don, ka/kat)...
Repairing testing/data/custom_tjas/September\September_x.bin
  - Setting Ura timing windows...
  - Fixing don/ka note types (do/ko/don, ka/kat)...
Repairing testing/data/custom_tjas/September\September_x_1.bin
  - Setting Ura timing windows...
  - Fixing don/ka note types (do/ko/don, ka/kat)...
Repairing testing/data/custom_tjas/September\September_x_2.bin
  - Setting Ura timing windows...
  - Fixing don/ka note types (do/ko/don, ka/kat)...
Repairing testing/data/custom_tjas/September\September [GENERATED]\234351376_
e.bin
  - Setting Easy timing windows...
  - Fixing don/ka note types (do/ko/don, ka/kat)...
Repairing testing/data/custom_tjas/September\September [GENERATED]\234351376_
h.bin
  - Setting Hard timing windows...
  - Fixing don/ka note types (do/ko/don, ka/kat)...
Repairing testing/data/custom_tjas/September\September [GENERATED]\234351376_
m.bin
  - Setting Oni timing windows...
  - Fixing don/ka note types (do/ko/don, ka/kat)...
Repairing testing/data/custom_tjas/September\September [GENERATED]\234351376_
n.bin
  - Setting Normal timing windows...
  - Fixing don/ka note types (do/ko/don, ka/kat)...
Repairing testing/data/custom_tjas/September\September [GENERATED]\234351376_
x.bin
  - Setting Ura timing windows...
  - Fixing don/ka note types (do/ko/don, ka/kat)...

Fixes #72.