def click_loot(left_x, top_y, sqm_width, sqm_height, title): '''clicks in a 3x3 grid around the char''' print("looting...") for x in range(3): loot_x = left_x + x * sqm_width for y in range(3): loot_y = top_y + y * sqm_height # pyautogui.moveTo(loot_x, loot_y) sendInput.send_click(loot_x, loot_y, title, 'right') time.sleep(0.1)
def click_wpt(wpt_img, pos, minimap_pos, title): '''click wpt''' #imgS.click_image(wpt_img, (pos[0]+minimap_pos[0], pos[1]+minimap_pos[1]), "left", 0) img = cv2.imread("assets/map/" + wpt_img["mark"] + ".png") height, width, channels = img.shape x = int(minimap_pos[0] + pos[0] + width / 2) y = int(pos[1] + height / 2) # print("clicking: ", x, y) sendInput.send_click(x, y, title) # pyautogui.moveTo(x, y) time.sleep(0.5)
def chase_on(title): '''turns chasing on''' image = "assets/chase_target.png" x, y = pyautogui.size() x_start = x / 10 * 9 follow_mode = imgS.imagesearcharea(image, x_start, 0, x, y) print("on: ", follow_mode) if follow_mode[0] is not -1: print("chase is on") sendInput.send_click(follow_mode[0] + x_start, follow_mode[1] - 13, title) time.sleep(0.5)
def chase_off(title): '''turns chasing off''' image = "assets/stop_chase.png" x, y = pyautogui.size() x_start = x / 10 * 9 follow_mode = imgS.imagesearcharea(image, x_start, 0, x, y) print("off: ", follow_mode) if follow_mode[0] is not -1: sendInput.send_click(follow_mode[0] + x_start, follow_mode[1] - 13, title) print("chase is off") time.sleep(0.5)
def action_wpt(wpt, gui, minimap_pos, battlelist_coords): '''do action waypoint''' pos = utilities.string2tuple(gui.config.get('GAMEWINDOW', 'character_pos')) chase_off(gui.title) time.sleep(0.5) if wpt["type"] == 'rope': print("roping") sendInput.send_key('3', '3', title=gui.title) time.sleep(0.5) sendInput.send_click(pos[0], pos[1], title=gui.title) check = wpt_reached({"mark": "lock"}, minimap_pos) if not check: go_wpt(wpt, minimap_pos, battlelist_coords, gui) else: chase_on(gui.title) elif wpt["type"] == 'shovel': print('shoveling') start = utilities.string2tuple( gui.config.get('GAMEWINDOW', 'game_start_coords')) end = utilities.string2tuple( gui.config.get('GAMEWINDOW', 'game_end_coords')) offset_x = (end[0] - start[0]) / 15 offset_y = (end[1] - start[1]) / 11 sendInput.send_key('4', '4', title=gui.title) time.sleep(0.5) sendInput.send_click(pos[0], pos[1] - offset_y, title=gui.title) time.sleep(0.5) sendInput.send_click(pos[0], pos[1] - offset_y, title=gui.title) time.sleep(0.5) check = wpt_reached({"mark": "lock"}, minimap_pos) if not check: go_wpt(wpt, minimap_pos, battlelist_coords, gui) else: chase_on(gui.title)
def fire(hotkey, coords, gui): sendInput.send_key(hotkey, title=gui.title) if coords is not 0: sendInput.send_click(coords[0], coords[1], gui.title)