Răsfoiți Sursa

!2 add check master

pcacc 5 luni în urmă
părinte
comite
2e3abf46c9

+ 70 - 2
app_dongri.py

@@ -204,11 +204,34 @@ def auto_participate():
 
 
 
-def add_auto_task(isMaxCollect, isJina, isSimple = False, isAddStrengh = False, activity = 'None', isAutoParticipate = True):
+def add_auto_task(isMaxCollect, isJina, isSimple = False, isAddStrengh = False, activity = 'None', isAutoParticipate = True):  
     collectArr = [int(x) for x in isMaxCollect.split(",")]
     print("collectArr", collectArr)
     times = 0
     while not event.is_set():
+        isLoginTask = True
+        fight_big_monster_times = 0
+        config = read_cfg()
+        if check_daily_config(config):
+            today = datetime.now().strftime('%Y-%m-%d')
+            isLoginTask = config['daily'][today]["login_task"]
+            fight_big_monster_times = int(config['daily'][today]["fight_big_monster_times"])
+        else:
+            set_login_task(config, False)
+            set_fight_big_monster_times(config, 0)
+            clean_old_daily_configs(config)
+            isLoginTask = False
+            fight_big_monster_times = 0
+            write_cfg(config)
+        print("isLoginTask", isLoginTask, "fight_big_monster_times", fight_big_monster_times)
+
+
+        if not isLoginTask:
+            task_queue.appendleft(task_checkMaster())
+            set_login_task(config, True)
+            write_cfg(config)
+
+
         task_queue.appendleft(task_information())
         if activity == 'lianmeng':
             task_queue.appendleft(task_activity_lianmeng())
@@ -270,7 +293,52 @@ def add_auto_task(isMaxCollect, isJina, isSimple = False, isAddStrengh = False,
     task_queue.clear()
     send_status(f'自动模式结束')
     event.clear()
-        
+
+daily_config = {
+    "login_task": False,
+    "fight_bigMonster_times": 0
+}
+
+def check_daily_config(config):
+    today = datetime.now().strftime('%Y-%m-%d')  # 获取当前日期
+    if "daily" not in config:
+         config["daily"] = {}
+         return False
+    if today not in config["daily"]:
+        return False
+    else:
+        return True
+    
+# 修改或添加 "login_task" 的值
+def set_login_task(config, value):
+    today = datetime.now().strftime('%Y-%m-%d')  # 获取当前日期
+    if today not in config["daily"]:  # 如果当天的配置不存在
+        config["daily"][today] = {}  # 创建当天的配置
+    config["daily"][today]["login_task"] = value  # 设置或更新 "login_task"
+    return config
+
+# 修改或添加 "fight_bigMonster_times" 的值
+def set_fight_big_monster_times(config, value):
+    today = datetime.now().strftime('%Y-%m-%d')  # 获取当前日期
+    if today not in config["daily"]:  # 如果当天的配置不存在
+        config["daily"][today] = {}  # 创建当天的配置
+    config["daily"][today]["fight_bigMonster_times"] = value  # 设置或更新 "fight_bigMonster_times"
+    return config
+
+
+def add_today_daily_config(config, daily_config, overwrite=False):
+    today = datetime.now().strftime('%Y-%m-%d')  # 获取当前日期
+    if today not in config["daily"] or overwrite:  # 如果不存在或允许覆盖
+        config["daily"][today] = daily_config  # 添加或更新
+    return config
+
+# 清理非当天的每日配置
+def clean_old_daily_configs(config):
+    today = datetime.now().strftime('%Y-%m-%d')  # 获取当前日期
+    keys_to_remove = [key for key in config["daily"] if key != today]  # 找到非当天的每日配置
+    for key in keys_to_remove:
+        del config["daily"][key]  # 删除非当天的每日配置
+    return config
 
 def write_cfg(config):
     with open('config.json', 'w') as config_file:

BIN
dongri_img/check/little_treasure.png


BIN
dongri_img/check/master.png


BIN
dongri_img/check/master_get.png


+ 3 - 0
dongri_pic.py

@@ -122,6 +122,9 @@ class check_img:
     pet_senior = R'dongri_img\check\pet_senior.png'
     pet_gotreature = R'dongri_img\check\pet_gotreature.png'
     pet_begintreature = R'dongri_img\check\pet_begintreature.png'
+    little_treasure = R'dongri_img\check\little_treasure.png'
+    master_get = R'dongri_img\check\master_get.png'
+    master = R'dongri_img\check\master.png'
 
 
 class information_img:

+ 20 - 1
dongri_task.py

@@ -780,18 +780,37 @@ class task_activity_lianmeng(dongri_task):
                 if maxTryTimes <= 0:
                     break
         return True
+    
+
+class task_checkMaster(dongri_task):
+
+    def __init__(self):
+        super().__init__(f"检查统帅")
+    def run(self):
+        basic_operate.go_town()
+        if waitClickImg_noWait_withBool(check_img.master, 2, 1) == False:
+            return False
+        if waitClickImg_noWait_withBool(check_img.master_get, 2, 1) == False:
+            return False
+        myTimeSleep_big()
+        pcacc_mouse.quickclick_current()
+        if waitClickImg_noWait_withBool(check_img.little_treasure, 2, 1) == False:
+            return False
+        return True
+
 
 
 
 
 if __name__ == '__main__':
+    task_checkMaster().run()
     #basic_operate.get_line_num()
     #yys_ocrAuto(check_img.line_orc)
     #basic_operate.go_town()
     #basic_operate.add_strength()
     #task_fightMonster(False, True).run()
     #task_checkHelp().run()
-    task_checkStoreRoom().run()
+    #task_checkStoreRoom().run()
     #task_activity_lianmeng().run()
     #task_fight_yongbing(True).run()
     #task_collect([4,3,2,1]).run()