diff --git a/config/main_template.conf b/config/main_template.conf index 0b727b333..5bb529348 100644 --- a/config/main_template.conf +++ b/config/main_template.conf @@ -37,9 +37,12 @@ retire_sr = no retire_ssr = no enable_drop_screenshot = no drop_screenshot_folder = -serial = 127.0.0.1:62001 command = setting +[Emulator] +command = emulator +serial = 127.0.0.1:62001 + [Daily] enable_daily_mission = yes enable_hard_campaign = yes @@ -82,6 +85,7 @@ enable_semi_story_skip = yes [C72_mystery_farming] command = c72_mystery_farming +boss_fleet_step_on_a3 = yes [C124_leveling] non_s3_enemy_enter_tolerance = 1 diff --git a/main.py b/main.py index 76961aedf..05285ca25 100644 --- a/main.py +++ b/main.py @@ -12,6 +12,12 @@ class AzurLaneAutoScript: logger.hr('Settings saved') + def emulator(self): + for key, value in self.config.config['Emulator'].items(): + print(f'{key} = {value}') + + logger.hr('Emulator saved') + def main(self): """ Method to run main chapter. diff --git a/main.pyw b/main.pyw index 0994b6659..adad54511 100644 --- a/main.pyw +++ b/main.pyw @@ -74,9 +74,9 @@ def main(): stop = stage.add_argument_group('停止条件', '触发后不会马上停止会先完成当前出击, 不需要就填0') stop.add_argument('--如果出击次数大于', default=default('--如果出击次数大于'), help='会沿用先前设置, 完成出击将扣除次数, 直至清零') - stop.add_argument('--如果时间超过', default=default('--如果时间超过'), help='使用未来24小时内的时间, 使用会沿用先前设置, 直至触发. 建议提前10分钟左右, 以完成当前出击. 格式 14:59') + stop.add_argument('--如果时间超过', default=default('--如果时间超过'), help='使用未来24小时内的时间, 会沿用先前设置, 触发后清零. 建议提前10分钟左右, 以完成当前出击. 格式 14:59') stop.add_argument('--如果石油低于', default=default('--如果石油低于')) - stop.add_argument('--如果触发心情控制', default=default('--如果触发心情控制'), choices=['是', '否'], help='触发后会等自动等待心情回复') + stop.add_argument('--如果触发心情控制', default=default('--如果触发心情控制'), choices=['是', '否'], help='若是, 等待回复, 完成本次, 停止\n若否, 等待回复, 完成本次, 继续') stop.add_argument('--如果船舱已满', default=default('--如果船舱已满'), choices=['是', '否']) # 出击舰队 @@ -96,7 +96,7 @@ def main(): f3.add_argument('--舰队阵型3', default=default('--舰队阵型3'), choices=['单纵阵', '复纵阵', '轮形阵']) # 潜艇设置 - submarine = setting_parser.add_argument_group('潜艇设置', '暂不支持潜艇, 会避免潜艇进图') + submarine = setting_parser.add_argument_group('潜艇设置', '暂不支持潜艇, 最好避免潜艇进图') submarine.add_argument('--舰队编号4', default=default('--舰队编号4'), choices=['不使用', '1', '2']) submarine.add_argument('--潜艇出击方案', default=default('--潜艇出击方案'), choices=['不使用', '仅狩猎', '每战出击', '空弹出击', 'BOSS战出击', 'BOSS战BOSS出现后召唤']) @@ -141,7 +141,8 @@ def main(): drop.add_argument('--掉落保存目录', default=default('--掉落保存目录')) # 模拟器 - emulator = setting_parser.add_argument_group('模拟器', '') + emulator_parser = subs.add_parser('模拟器') + emulator = emulator_parser.add_argument_group('模拟器', '') emulator.add_argument('--设备', default=default('--设备'), help='例如 127.0.0.1:62001') # ==========每日任务========== @@ -209,8 +210,8 @@ def main(): # ==========7-2三战拣垃圾========== c_7_2_parser = subs.add_parser('7-2三战拣垃圾') - # c_12_4 = c_12_4_parser.add_argument_group('7-2三战拣垃圾', '需保证队伍有一定强度') - # c_12_4.add_argument('--非大型敌人进图忍耐', default=default('--非大型敌人进图忍耐'), choices=['0', '1', '2'], help='忍受进场多少战没有大型') + c_7_2 = c_7_2_parser.add_argument_group('7-2三战拣垃圾', '') + c_7_2.add_argument('--BOSS队踩A3', default=default('--BOSS队踩A3'), choices=['是', '否'], help='A3有敌人就G3, C3, E3') # c_12_4.add_argument('--非大型敌人撤退忍耐', default=default('--非大型敌人撤退忍耐'), choices=['0', '1', '2', '10'], # help='没有大型之后还会打多少战, 不挑敌人选10') # c_12_4.add_argument('--拣弹药124', default=default('--拣弹药124'), choices=['2', '3', '4', '5'], help='多少战后拣弹药') diff --git a/module/config/config.py b/module/config/config.py index ba28da2e4..6f6b9eb2f 100644 --- a/module/config/config.py +++ b/module/config/config.py @@ -230,6 +230,11 @@ class AzurLaneConfig: ENABLE_SEMI_MAP_PREPARATION = True ENABLE_SEMI_STORY_SKIP = True + """ + C_7_2_mystery_farming + """ + C72_BOSS_FLEET_STEP_ON_A3 = True + """ C_12_4_leveling """ @@ -277,9 +282,11 @@ class AzurLaneConfig: """ self.COMMAND = config.get('Command', 'command') - option = config['Setting'] - # Serial + # Emulator + option = config['Emulator'] self.SERIAL = option['serial'] + + option = config['Setting'] # Stop condition self.ENABLE_STOP_CONDITION = to_bool(option['enable_stop_condition']) self.STOP_IF_COUNT_GREATER_THAN = int(option['if_count_greater_than']) @@ -363,6 +370,12 @@ class AzurLaneConfig: self.ENABLE_SEMI_MAP_PREPARATION = to_bool(option['enable_semi_map_preparation']) self.ENABLE_SEMI_STORY_SKIP = to_bool(option['enable_semi_story_skip']) + # C_7_2_mystery_farming + option = config['C72_mystery_farming'] + self.C72_BOSS_FLEET_STEP_ON_A3 = to_bool(option['boss_fleet_step_on_a3']) + if self.COMMAND.lower() == 'c72_mystery_farming' and not self.C72_BOSS_FLEET_STEP_ON_A3: + self.FLEET_2 = 0 + # C_12_4_leveling option = config['C124_leveling'] self.C124_NON_S3_ENTER_TOLERANCE = int(option['non_s3_enemy_enter_tolerance']) diff --git a/module/config/dictionary.py b/module/config/dictionary.py index 97cbbacac..ebf6f9f9e 100644 --- a/module/config/dictionary.py +++ b/module/config/dictionary.py @@ -25,6 +25,7 @@ dic_daily = { dic_chi_to_eng = { # Function '出击设置': 'setting', + '模拟器': 'emulator', '每日任务': 'daily', '主线图': 'main', '活动图': 'event', @@ -95,6 +96,7 @@ dic_chi_to_eng = { '活动名称ab': 'event_name_ab', '进图准备': 'enable_semi_map_preparation', '跳过剧情': 'enable_semi_story_skip', + 'BOSS队踩A3': 'boss_fleet_step_on_a3', '非大型敌人进图忍耐': 'non_s3_enemy_enter_tolerance', '非大型敌人撤退忍耐': 'non_s3_enemy_withdraw_tolerance', '拣弹药124': 'ammo_pick_up_124',