a
This commit is contained in:
parent
84f7007541
commit
828dc59387
|
@ -46,12 +46,24 @@ class Server(Application):
|
|||
self.read_saves()
|
||||
|
||||
|
||||
def get_save_by_id(self, saveid):
|
||||
def get_save(self, key, value):
|
||||
for save in self.saves:
|
||||
if save.id == saveid:
|
||||
if save[key] == value:
|
||||
return save
|
||||
|
||||
raise KeyError(f'Cannot find save with id: {saveid}')
|
||||
raise KeyError(f'Cannot find save: {key} = {value}')
|
||||
|
||||
|
||||
def get_save_by_id(self, saveid):
|
||||
return self.get_save('id', saveid)
|
||||
|
||||
|
||||
def get_save_by_filename(self, filename):
|
||||
for save in self.saves:
|
||||
if save.path.name == filename:
|
||||
return save
|
||||
|
||||
raise KeyError(f'Cannot find save with filename: {filename}')
|
||||
|
||||
|
||||
def read_saves(self):
|
||||
|
|
|
@ -57,6 +57,7 @@ class SaveHandler(FileSystemEventHandler):
|
|||
super().__init__()
|
||||
|
||||
self.server = server
|
||||
self.modified_times = dict()
|
||||
|
||||
|
||||
def on_any_event(self, event):
|
||||
|
@ -65,12 +66,21 @@ class SaveHandler(FileSystemEventHandler):
|
|||
return
|
||||
|
||||
path = Path(event.src_path)
|
||||
save = self.server.get_save_by_filename(name)
|
||||
|
||||
if not path.suffix == 'sav':
|
||||
return
|
||||
|
||||
self.handle_save_change(path.name, event.event_type)
|
||||
self.handle_save_change(save, event.event_type)
|
||||
|
||||
|
||||
def handle_save_change(self, name, event):
|
||||
def handle_save_change(self, save, event):
|
||||
if event == 'modified':
|
||||
try:
|
||||
if self.modified_times[save.path.name] == save.last_save:
|
||||
return
|
||||
|
||||
except KeyError:
|
||||
self.modified_times[save.path.name] = save.last_save
|
||||
|
||||
print(name, event)
|
||||
|
|
Loading…
Reference in a new issue