Bypass IndexError when running without having a file in each slot for all categories

This commit is contained in:
2023-01-16 16:16:22 -05:00
parent b6da652914
commit a468bfb83c
+60 -52
View File
@@ -19,59 +19,67 @@ sorted_dir = args.sorted_dir[0].rstrip('/') + '/'
for i in range(1, 9):
# national
options = [f.path for f in scandir(sorted_dir + 'National/' + str(i)) if f.is_dir()]
track = choice(options)
if islink(f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.database"):
remove(f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.database")
if islink(f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.level"):
remove(f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.level")
if islink(f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.package"):
remove(f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.package")
if islink(f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.scene"):
remove(f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.scene")
symlink(f"{track}/Beta_Nat_Track_Slot_{str(i)}.dx9.database",
f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.database")
symlink(f"{track}/Beta_Nat_Track_Slot_{str(i)}.dx9.level",
f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.level")
symlink(f"{track}/Beta_Nat_Track_Slot_{str(i)}.dx9.package",
f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.package")
symlink(f"{track}/Beta_Nat_Track_Slot_{str(i)}.dx9.scene",
f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.scene")
try:
track = choice(options)
if islink(f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.database"):
remove(f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.database")
if islink(f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.level"):
remove(f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.level")
if islink(f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.package"):
remove(f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.package")
if islink(f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.scene"):
remove(f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.scene")
symlink(f"{track}/Beta_Nat_Track_Slot_{str(i)}.dx9.database",
f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.database")
symlink(f"{track}/Beta_Nat_Track_Slot_{str(i)}.dx9.level",
f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.level")
symlink(f"{track}/Beta_Nat_Track_Slot_{str(i)}.dx9.package",
f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.package")
symlink(f"{track}/Beta_Nat_Track_Slot_{str(i)}.dx9.scene",
f"{database_dir}Beta_Nat_Track_Slot_{str(i)}.dx9.scene")
except IndexError:
pass
# supercross
options = [f.path for f in scandir(sorted_dir + 'Supercross/' + str(i)) if f.is_dir()]
track = choice(options)
if islink(f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.database"):
remove(f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.database")
if islink(f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.level"):
remove(f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.level")
if islink(f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.package"):
remove(f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.package")
if islink(f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.scene"):
remove(f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.scene")
symlink(f"{track}/Beta_Sx_Track_Slot_{str(i)}.dx9.database",
f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.database")
symlink(f"{track}/Beta_Sx_Track_Slot_{str(i)}.dx9.level",
f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.level")
symlink(f"{track}/Beta_Sx_Track_Slot_{str(i)}.dx9.package",
f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.package")
symlink(f"{track}/Beta_Sx_Track_Slot_{str(i)}.dx9.scene",
f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.scene")
try:
track = choice(options)
if islink(f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.database"):
remove(f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.database")
if islink(f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.level"):
remove(f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.level")
if islink(f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.package"):
remove(f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.package")
if islink(f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.scene"):
remove(f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.scene")
symlink(f"{track}/Beta_Sx_Track_Slot_{str(i)}.dx9.database",
f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.database")
symlink(f"{track}/Beta_Sx_Track_Slot_{str(i)}.dx9.level",
f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.level")
symlink(f"{track}/Beta_Sx_Track_Slot_{str(i)}.dx9.package",
f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.package")
symlink(f"{track}/Beta_Sx_Track_Slot_{str(i)}.dx9.scene",
f"{database_dir}Beta_Sx_Track_Slot_{str(i)}.dx9.scene")
except IndexError:
pass
# free ride
options = [f.path for f in scandir(sorted_dir + 'Free Ride/' + str(i)) if f.is_dir()]
track = choice(options)
if islink(f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.database"):
remove(f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.database")
if islink(f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.level"):
remove(f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.level")
if islink(f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.package"):
remove(f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.package")
if islink(f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.scene"):
remove(f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.scene")
symlink(f"{track}/Beta_Track_Slot_{str(i)}.dx9.database",
f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.database")
symlink(f"{track}/Beta_Track_Slot_{str(i)}.dx9.level",
f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.level")
symlink(f"{track}/Beta_Track_Slot_{str(i)}.dx9.package",
f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.package")
symlink(f"{track}/Beta_Track_Slot_{str(i)}.dx9.scene",
f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.scene")
try:
track = choice(options)
if islink(f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.database"):
remove(f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.database")
if islink(f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.level"):
remove(f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.level")
if islink(f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.package"):
remove(f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.package")
if islink(f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.scene"):
remove(f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.scene")
symlink(f"{track}/Beta_Track_Slot_{str(i)}.dx9.database",
f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.database")
symlink(f"{track}/Beta_Track_Slot_{str(i)}.dx9.level",
f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.level")
symlink(f"{track}/Beta_Track_Slot_{str(i)}.dx9.package",
f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.package")
symlink(f"{track}/Beta_Track_Slot_{str(i)}.dx9.scene",
f"{database_dir}Beta_Track_Slot_{str(i)}.dx9.scene")
except IndexError:
pass