diff --git a/config/template.json b/config/template.json index bc88734ff..543101cff 100644 --- a/config/template.json +++ b/config/template.json @@ -3147,7 +3147,8 @@ }, "OpsiCheckLeveling": { "TargetLevel": 0, - "LastRun": "2020-01-01 00:00:00" + "LastRun": "2020-01-01 00:00:00", + "DelayAfterFull": false }, "Storage": { "Storage": {} @@ -3175,7 +3176,8 @@ }, "OpsiCheckLeveling": { "TargetLevel": 0, - "LastRun": "2020-01-01 00:00:00" + "LastRun": "2020-01-01 00:00:00", + "DelayAfterFull": false }, "Storage": { "Storage": {} diff --git a/module/config/argument/args.json b/module/config/argument/args.json index c13109c35..e464eb1ba 100644 --- a/module/config/argument/args.json +++ b/module/config/argument/args.json @@ -16093,6 +16093,10 @@ "type": "datetime", "value": "2020-01-01 00:00:00", "validate": "datetime" + }, + "DelayAfterFull": { + "type": "checkbox", + "value": false } }, "Storage": { @@ -16193,6 +16197,10 @@ "type": "datetime", "value": "2020-01-01 00:00:00", "validate": "datetime" + }, + "DelayAfterFull": { + "type": "checkbox", + "value": false } }, "Storage": { diff --git a/module/config/argument/argument.yaml b/module/config/argument/argument.yaml index 53b4f9209..c1d6b6502 100644 --- a/module/config/argument/argument.yaml +++ b/module/config/argument/argument.yaml @@ -1039,6 +1039,7 @@ OpsiHazard1Leveling: OpsiCheckLeveling: TargetLevel: 0 LastRun: 2020-01-01 00:00:00 + DelayAfterFull: false # ==================== Tools ==================== diff --git a/module/config/config_generated.py b/module/config/config_generated.py index c531d69fe..922980853 100644 --- a/module/config/config_generated.py +++ b/module/config/config_generated.py @@ -610,6 +610,7 @@ class GeneratedConfig: # Group `OpsiCheckLeveling` OpsiCheckLeveling_TargetLevel = 0 OpsiCheckLeveling_LastRun = datetime.datetime(2020, 1, 1, 0, 0) + OpsiCheckLeveling_DelayAfterFull = False # Group `Daemon` Daemon_EnterMap = True diff --git a/module/config/i18n/en-US.json b/module/config/i18n/en-US.json index 5288ccecd..9cb809bd5 100644 --- a/module/config/i18n/en-US.json +++ b/module/config/i18n/en-US.json @@ -3603,6 +3603,10 @@ "LastRun": { "name": "Last Check Time", "help": "Automatically updated with the last check time, generally does not need to be modified" + }, + "DelayAfterFull": { + "name": "Delay task when target level reached", + "help": "" } }, "Daemon": { diff --git a/module/config/i18n/ja-JP.json b/module/config/i18n/ja-JP.json index 1aee78863..691a0ab6b 100644 --- a/module/config/i18n/ja-JP.json +++ b/module/config/i18n/ja-JP.json @@ -3603,6 +3603,10 @@ "LastRun": { "name": "OpsiCheckLeveling.LastRun.name", "help": "OpsiCheckLeveling.LastRun.help" + }, + "DelayAfterFull": { + "name": "OpsiCheckLeveling.DelayAfterFull.name", + "help": "OpsiCheckLeveling.DelayAfterFull.help" } }, "Daemon": { diff --git a/module/config/i18n/zh-CN.json b/module/config/i18n/zh-CN.json index 3f0e43525..e08fc775f 100644 --- a/module/config/i18n/zh-CN.json +++ b/module/config/i18n/zh-CN.json @@ -3603,6 +3603,10 @@ "LastRun": { "name": "上次检查时间", "help": "记录上一次检查的时间以防止任务重复运行,检查间隔为1天,这个数值是自动记录的,一般不需要修改" + }, + "DelayAfterFull": { + "name": "到达目标等级后推迟任务", + "help": "" } }, "Daemon": { diff --git a/module/config/i18n/zh-TW.json b/module/config/i18n/zh-TW.json index 5e73a5cec..040a4622c 100644 --- a/module/config/i18n/zh-TW.json +++ b/module/config/i18n/zh-TW.json @@ -3603,6 +3603,10 @@ "LastRun": { "name": "上次檢查時間", "help": "記錄上一次檢查的時間以防止任務重複運行,檢查間隔為1天,該數值是自動記錄的,一般不需要修改" + }, + "DelayAfterFull": { + "name": "達到目標等級後延遲任務", + "help": "" } }, "Daemon": { diff --git a/module/os/operation_siren.py b/module/os/operation_siren.py index d1e991c66..b36693966 100644 --- a/module/os/operation_siren.py +++ b/module/os/operation_siren.py @@ -541,11 +541,15 @@ class OperationSiren(OSMap): f'level {target_level} or above') handle_notify( self.config.Error_OnePushConfig, - title=f"Alas <{self.config.config_name}> level check finished", + title=f"Alas <{self.config.config_name}> level check passed", content=f"<{self.config.config_name}> {self.config.task} reached level limit {target_level} or above." ) self.ui_back(appear_button=EQUIPMENT_OPEN, check_button=self.is_in_map) self.config.OpsiCheckLeveling_LastRun = datetime.now().replace(microsecond=0) + if all_full_exp and self.config.OpsiCheckLeveling_DelayAfterFull: + logger.info('Delay task after all ships are full exp') + self.config.task_delay(server_update=True) + self.config.task_stop() def _os_explore_task_delay(self): """