コード例 #1
0
 def get_equ_xy():
     while True:
         c = check_current()
         if c is not None:
             return PCRelement(*c)
         if dragdown():
             return None
コード例 #2
0
    def doPJJC(self):
        self.lock_home()
        self.click_btn(MAIN_BTN["maoxian"], until_appear=MAIN_BTN["zhuxian"])
        self.lock_img(JJC_BTN["plist"], elseclick=[MAIN_BTN["gzjjc"], (1, 290)], elsedelay=2)
        self.click_btn(JJC_BTN["shouqu"], until_appear=JJC_BTN["shouqu_ok"],
                       elsedelay=4, retry=2, side_check=self.right_kkr)
        for _ in range(5):
            self.click(24, 84)

        out = self.lock_img({
            JJC_BTN["dwbz"]: 1,
            JJC_BTN["tzcs"]: 2,
        }, is_raise=False, elseclick=JJC_BTN["player"], elsedelay=4, timeout=30)
        if not out:
            self.log.write_log("error", "无法进入公主竞技场!")
            self.lock_home()
            return
        if out == 2:
            self.log.write_log("info", "公主竞技场次数不足!")
            self.lock_home()
            return
        for _ in range(10):
            self.click(843, 452, post_delay=0.5)
        self.wait_for_loading(delay=2)
        self.set_fight_speed(2, 2)
        self.lock_img(JJC_BTN["pxyb"], elseclick=[(843, 452)], timeout=180 * 3, alldelay=1)
        self.click_btn(PCRelement(803, 506), until_disappear=JJC_BTN["pxyb"])
        self.lock_home()
コード例 #3
0
    def doJJC(self):
        # 进入jjc
        self.lock_home()
        self.click_btn(MAIN_BTN["maoxian"], until_appear=MAIN_BTN["zhuxian"])
        self.lock_img(JJC_BTN["list"], elseclick=[MAIN_BTN["zdjjc"], (1, 290)], elsedelay=2)
        self.click_btn(JJC_BTN["shouqu"], until_appear=JJC_BTN["shouqu_ok"],
                       elsedelay=4, retry=2, side_check=self.right_kkr)
        for _ in range(5):
            self.click(24, 84)

        out = self.lock_img({
            JJC_BTN["zdks"]: 1,
            JJC_BTN["tzcs"]: 2,
        }, is_raise=False, elseclick=JJC_BTN["player"], elsedelay=4, timeout=30)
        if not out:
            self.log.write_log("error", "无法进入战斗竞技场!")
            self.lock_home()
            return
        if out == 2:
            self.log.write_log("info", "战斗竞技场次数不足!")
            self.lock_home()
            return
        self.click_btn(JJC_BTN["zdks"])
        # 803 496
        self.wait_for_loading(delay=2)
        self.set_fight_speed(2, 2)
        self.lock_img(JJC_BTN["xyb"], timeout=180, alldelay=1)
        self.click_btn(PCRelement(803, 496), until_disappear=JJC_BTN["xyb"])
        self.lock_home()
コード例 #4
0
    def dianzan(self, sortflag=0):
        """
        2020/8/6 By:CyiceK 检查完毕
        2020/8/18 TheAutumnOfRice:加了一点点at。
            ↑@CyiceK真的,加了at之后的运算速度飞升,不能为了图方便而不加at的。
        :param sortflag:
        :return:
        """
        # 行会点赞
        # 一天只能点一次
        ts = self.AR.get("time_status", UDD["time_status"])
        cur = time.time()
        if not diffday(cur, ts["dianzan"]):
            self.log.write_log("info", "今日已经点过赞!")
            return
        self.lock_home()
        # 进入行会
        out = self.lock_img(PCRelement(img='img/zhiyuansheding.bmp',
                                       at=(16, 338, 159, 380)),
                            ifclick=[(230, 351), (1, 1)],
                            elseclick=[(1, 1), (688, 432)],
                            elsedelay=8,
                            retry=6,
                            is_raise=False)
        if not out:
            self.log.write_log("error", "无法进入行会")
            self.lock_home()
            return
        self.lock_no_img('img/zhandou_ok.jpg', elseclick=[(239, 351)], retry=5)
        self.lock_no_img(PCRelement(img='img/zhiyuansheding.bmp',
                                    at=(16, 338, 159, 380)),
                         elseclick=[(230, 351)],
                         retry=5)
        if sortflag == 1:
            self.lock_img('img/ok.bmp', elseclick=[(720, 97)], retry=3)  # 点击排序
            self.lock_no_img('img/ok.bmp',
                             elseclick=[(289, 303), (587, 372)],
                             elsedelay=self.change_time,
                             retry=3)  # 按战力降序 这里可以加一步调降序
            if self.is_exists('img/dianzan.bmp'):
                click_list = [(818, 198), (826, 316), (826, 428)]
                for i in click_list:
                    if self.lock_img('img/dianzan.bmp',
                                     ifclick=[i],
                                     elseclick=[(480, 374)],
                                     retry=10):
                        if self.lock_img('img/ok.bmp', retry=8):
                            self.lock_no_img('img/ok.bmp',
                                             elseclick=[(480, 374)],
                                             retry=10)
                            continue
                        else:
                            self.log.write_log("warning", "已经没有点赞次数了")
                            self.lock_home()
                            break
                    else:
                        self.log.write_log("error", "找不到点赞按钮")
                        self.lock_home()
                        break

            # 点赞 战力降序第一/第二/第三个人
            # (480, 374) 是ok的坐标
        else:
            if self.is_exists('img/dianzan.bmp'):
                click_list = [(818, 198), (826, 316), (826, 428)]
                for i in click_list:
                    if self.lock_img('img/dianzan.bmp',
                                     ifclick=[i],
                                     elseclick=[(480, 374)],
                                     retry=10):
                        if self.lock_img('img/ok.bmp', retry=8):
                            self.lock_no_img('img/ok.bmp',
                                             elseclick=[(480, 374)],
                                             retry=10)
                            continue
                        else:
                            self.log.write_log("warning", "已经没有点赞次数了")
                            self.lock_home()
                            break
                    else:
                        self.log.write_log("error", "找不到点赞按钮")
                        self.lock_home()
                        break
            # 点赞 职务降序(默认) 第二/第三个人,副会长
        self.click(479, 381)
        screen_shot_ = self.getscreen()
        self.click_img(screen_shot_, 'img/ok.bmp')
        # 保存点赞时间
        ts["dianzan"] = time.time()
        self.AR.set("time_status", ts)
        # self.lock_img('img/liwu.bmp', elseclick=[(131, 533), (1, 1), (480, 374)], elsedelay=self.change_time,
        #               at=(891, 413, 930, 452))  # 回首页
        self.lock_home()