Skip to content

Commit 607ba56

Browse files
committed
autosaves: added autosave dir
Added a procedurally generated autosave directory.
1 parent ae9363d commit 607ba56

2 files changed

Lines changed: 14 additions & 5 deletions

File tree

toontown/leveleditor/AutoSaver.py

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,10 @@ class AutoSaver:
1414
@staticmethod
1515
def initializeAutoSaver():
1616
threading.Thread(target = AutoSaver.autoSaverProcess, daemon = True).start()
17+
# Creates 'autosaves' directory in user data directory
18+
if not os.path.isdir('leveleditor/autosaves'):
19+
os.mkdir('leveleditor/autosaves')
20+
print('Created "autosaves" dir')
1721

1822
@staticmethod
1923
def autoSaverProcess():
@@ -26,11 +30,12 @@ def autoSaverProcess():
2630
while AutoSaver.autoSaverToggled is True:
2731
# outputFile filename is empty, which may occur if filename is left blank in file prompt
2832
if DNASerializer.outputFile is None:
29-
print('No file loaded, exiting auto saving loop')
33+
print('No file loaded, exiting auto saving loop...')
3034
DNASerializer.autoSaveCount = 0
3135
DNASerializer.autoSaverMgrRunning = False
3236
AutoSaver.autoSaverToggled = False
3337
break
38+
3439
# Epoch time of next auto save
3540
endTime = time.time() + autoSaverInterval
3641
# Loops until endTime is reached or the auto saver is un-toggled by user
@@ -63,10 +68,14 @@ def manageAutoSaveFiles():
6368
if basename[-16:] == '_autosave-latest':
6469
DNASerializer.outputDNADefaultFile() # Saves working DNA file
6570
return
66-
DNASerializer.outputFile = os.path.join(dir, basename + '_autosave-latest' + extension)
71+
DNASerializer.outputFile = os.path.join(dir, 'autosaves', basename + '_autosave-latest' + extension)
72+
# Replaces any back slashes in outputFile with forward slashes
73+
DNASerializer.outputFile = DNASerializer.outputFile.replace('\\', '/')
74+
# Creates new 'autosaves' directory if none is found
75+
# This also accounts for if the directory of outputFile is not in the default user data folder
76+
if not os.path.isdir(os.path.join(dir, 'autosaves')):
77+
os.mkdir(os.path.join(dir, 'autosaves'))
6778

68-
# Change mix of separators to forward slashes
69-
DNASerializer.outputFile.replace('\\', '/')
7079
# Deletes 'latest' from filename
7180
basename = basename[:-6]
7281

toontown/leveleditor/LevelEditorPanel.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1595,6 +1595,6 @@ def toggleAutoSaver(self):
15951595
# Toggles auto saver to begin auto saving loop
15961596
AutoSaver.autoSaverToggled = True
15971597
else:
1598-
print('Stopping auto saver')
1598+
print('Stopping auto saver...')
15991599
# Stops auto saving loop
16001600
AutoSaver.autoSaverToggled = False

0 commit comments

Comments
 (0)