diff --git a/.vscode/launch.json b/.vscode/launch.json index 53bda09..9a9786c 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -53,7 +53,7 @@ "name": "Entry Native (Debug Mode)", "type": "debugpy", "request": "launch", - "module": "app.native_ui.entry", + "module": "app.entry_native", "args": [ "--debug" ] }, ] diff --git a/app/editor/save_editor.py b/app/editor/save_editor.py index 6e2d790..294ad04 100644 --- a/app/editor/save_editor.py +++ b/app/editor/save_editor.py @@ -167,8 +167,9 @@ def get_slots(self) -> list[SaveSlot]: """ assert self.__check_save_loaded(self.__preside_data) slots = [] - # TODO 存档槽位的开始位置似乎与游戏语言有关 - for i in range(50, 60): + start = self.preside_data.system_data_.option_work_.language_type * 10 + end = start + 10 + for i in range(start, end): slot = self.__preside_data.system_data_.slot_data_.save_data_[i] time = slot.time.decode() title = TitleId(slot.title) diff --git a/app/structs/steam.py b/app/structs/steam.py index 3515c14..71796fc 100644 --- a/app/structs/steam.py +++ b/app/structs/steam.py @@ -33,8 +33,10 @@ class SystemData(Struct): class SaveSlotData(Struct): save_data_: FixedArray['SaveData', Literal[100]] """ - 存档数据 - TODO 100 个存档位。游戏内可见存档槽位的开始位置似乎与游戏语言有关。 + 存档槽位数据,共 100 个槽位。 + + 实际存档槽位的开始位置取决于当前语言,即 OptionWork.language_type 的值。 + 例如简体中文 `language_type` 的值为 5,则实际存档槽位为 50~59。 """ @dataclass(init=False)