def action(self): """ 战斗主函数 """ # 设定初始值 self.set_start() begintime = self.begintime stage = self.stage team = self.team # 选关 self.select_stage(stage) # 选队伍 self.power_use = select_team(team) while 1: # 每轮开始计时 starttime = int(time()) # 战斗 self.action_sub() self.n += 1 # 结束判断 if self.set_end(): break elif self.mode_number != 1: game_log.info("time use:" + str(int(time()) - starttime) + "s") self.all_time_use = int(time()) - begintime end("next") game_log.info("all time use:" + str(int(time()) - begintime) + "s") self.all_time_use = 0 sleep(5)
def receive_done_sub(get_img=get_img): """收远征完成""" sleep(1) for num in range(0, 3): # 找完成的远征 point = mathc_img(get_img(), "DONE", 0.9) point = remove_same(point) # 找到可以收的远征 if point: game_log.info("RECEIVE") click(point[0]) point = [] sleep(1) # 找MARCHDONE start = time() while 1: if time() - start > 60: raise OvertimeError("receive1") point = mathc_img(get_img(), "MARCHDONE", 0.9) if point: point = [] break sleep(STEP * 2) # 在回到远征界面前一直点 start = time() while 1: if time() - start > 60: raise OvertimeError("receive2") if marchfind(): break click(792, 818) sleep(2) # 没远征可收 else: return
def start(self): """远征全家桶""" if not (self.skill_room or self.receive_march or self.send_march): return try: # 道场续书 exit_to_main() if self.skill_room: skill_room() sleep(3) if not mainpage_marchfind(): mode = (self.receive_march, self.send_march) # 在"收+发"和"收"模式时,如果没有远征可以收就退出远征模式 if mode == (1, 1) or mode == (1, 0): game_log.info("no march is done") click(1472, 717) return go_to_march() # 收远征 if self.receive_march: self.receive() # 发远征 if not self.send_march: exit_to_main() click(1472, 717) sleep(3) return # 初始化 march_list = March.initialize() # 远征优先级 modelist = ["gold2", "gold1", "power", "card", "book", "nothing"] # 做远征 self.send(march_list, modelist) game_log.info("march done") exit_to_main() click(1472, 717) sleep(3) except OvertimeError as err: game_log.error(err.type) self.start()
import core.game_log as game_log __name__ = "core" game_log.info("start")