added loop for double dig

This commit is contained in:
2022-05-18 22:49:55 +02:00
parent 7873de1d6f
commit 6f7e40b5da

View File

@@ -1,3 +1,5 @@
import sys
from config_file import UserConfigs from config_file import UserConfigs
import keyboard import keyboard
import cv2 as cv import cv2 as cv
@@ -14,7 +16,6 @@ def run():
capture_config = UserConfigs() capture_config = UserConfigs()
capture_window = WindowCapture(None, "screen_conf", capture_config) capture_window = WindowCapture(None, "screen_conf", capture_config)
# initialize the StunVision class # initialize the StunVision class
vision_stun = Vision() vision_stun = Vision()
dig_overlay = DiggingOverlay(config) dig_overlay = DiggingOverlay(config)
@@ -27,158 +28,171 @@ def run():
plot_size = 45 plot_size = 45
DIG_TIME = 100 DIG_TIME = 100
while True: runcounter = 2
if keyboard.is_pressed('p') == True:
pause = True
print('q pressed')
elif keyboard.is_pressed('o') == True:
pause = False
print('o pressed')
if pause:
# cv.waitKey(500)
dig_overlay.show_window()
print("pausing")
continue
dig_overlay.hide_window()
if level >= 28: if runcounter == 2:
break double_dig = True
if level == 23: else:
DIG_TIME = 800 double_dig = False
if level == 26:
DIG_TIME = 1800
if level <= 10:
plot_size = plot_size - 1
elif level % 2 == 0:
plot_size = plot_size - 1
p1 = int((config.returnDiggingWindowPos2()[0] / 2) + config.returnDiggingWindowPos2()[2]) while runcounter != 0:
p2 = int((config.returnDiggingWindowPos2()[1] / 2) + config.returnDiggingWindowPos2()[3]) if double_dig and runcounter == 1:
dig_point(290, 100, 200)
# start 705 , 564 -> click cv.waitKey(2000)
# move L D -> click runcounter = runcounter - 1
# move U , U , R, R , D , D , L , L while True:
# move L D if keyboard.is_pressed('p') == True:
# move U , U , U , U , R, R , R, R, D, D, D, D, L, L, L , L
dig_point(p1, p2, DIG_TIME)
# cv.circle(screenshot, (p1, p2), 7, (0, 255, 0), -1)
i = 0
for e in range(2, width, 2):
i = i + 1
tp1 = p1 - (i * plot_size)
tp2 = p2 + (i * plot_size)
for f in range(0, e, 1):
# up click
tp2 = tp2 - plot_size
if tp2 >= config.returnDiggingWindowPos2()[1] + (plot_size / 2):
continue
if tp2 <= config.returnDiggingWindowPos2()[3] + (plot_size / 2):
continue
'''
x = int(tp1 - (plot_size / 2))
y = int(tp2 - ((e * plot_size) - (plot_size / 2)))
w = plot_size
h = plot_size * e
capture_win_lanes = WindowCapture(None, "lanes", None, (w, h, x+w, y+h))
screenshot = capture_win_lanes.get_screenshot()
needlew = cv.imread("test1.jpg", cv.IMREAD_UNCHANGED)
res = vision_stun.find(needlew, screenshot, 0.9, 1)
if len(res) >= 1:
break
#vision_stun.draw_rectangles(needlew, res)
#cv.imshow("screenshot", needlew)
#cv.waitKey(150)
# ul[0], ul[1], plot_size, plotsize*e
# ll -> tp1 - plot/2 ooooooooooo
# -> tp2 + plot/2
# ul -> tp1 - plot/2
# -> tp2 - e*plot - plot/2
# lr -> tp1 + plot/2
# -> tp2 - plot/2
# ur -> tp1 + plot/2
# -> tp2 - e*plot - plot/2
'''
dig_point(tp1, tp2, DIG_TIME)
# cv.circle(screenshot, (tp1, tp2), 7, (255, 0, 255), -1)
# cv.imshow("screenshot", screenshot)
# cv.waitKey(150)
check_for_ok_button(capture_window, vision_stun, capture_config)
if keyboard.is_pressed('p') == True or pause == True:
pause = True
break
tp1 = p1 - (i * plot_size)
tp2 = p2 - (i * plot_size)
for g in range(0, e, 1):
# right click
tp1 = tp1 + plot_size
if tp2 <= config.returnDiggingWindowPos2()[3] + (plot_size / 2):
continue
# ll -> tp1 - plot/2
# -> tp2 + plot/2
# ul -> tp1 - plot/2
# -> tp2 - plot/2
# lr -> tp1 + e*plot + plot/2
# -> tp2 + plot/2
# ur -> tp1 + e*plot + plot/2
# -> tp2 - plot/2
dig_point(tp1, tp2, DIG_TIME)
# cv.circle(screenshot, (tp1, tp2), 7, (127, 0, 255), -1)
# cv.imshow("screenshot", screenshot)
# cv.waitKey(150)
check_for_ok_button(capture_window, vision_stun, capture_config)
if keyboard.is_pressed('p') == True or pause == True:
pause = True
break
tp1 = p1 + (i * plot_size)
tp2 = p2 - (i * plot_size)
for r in range(0, e, 1):
# down click
tp2 = tp2 + plot_size
if tp2 >= config.returnDiggingWindowPos2()[1] + (plot_size / 2):
continue
if tp2 <= config.returnDiggingWindowPos2()[3] + (plot_size / 2):
continue
dig_point(tp1, tp2, DIG_TIME)
# cv.circle(screenshot, (tp1, tp2), 7, (255, 0, 127), -1)
# cv.imshow("screenshot", screenshot)
# cv.waitKey(150)
check_for_ok_button(capture_window, vision_stun, capture_config)
if keyboard.is_pressed('p') == True or pause == True:
pause = True
break
tp1 = p1 + (i * plot_size)
tp2 = p2 + (i * plot_size)
for u in range(0, e, 1):
# left click
tp1 = tp1 - plot_size
if tp2 >= config.returnDiggingWindowPos2()[1] + (plot_size / 2):
continue
dig_point(tp1, tp2, DIG_TIME)
# cv.circle(screenshot, (tp1, tp2), 7, (0, 0, 255), -1)
# cv.imshow("screenshot", screenshot)
# cv.waitKey(150)
check_for_ok_button(capture_window, vision_stun, capture_config)
if keyboard.is_pressed('p') == True or pause == True:
pause = True
break
if keyboard.is_pressed('p') == True or pause == True:
pause = True
break
if keyboard.is_pressed('p') == True or pause == True:
pause = True pause = True
print('q pressed')
elif keyboard.is_pressed('o') == True:
pause = False
print('o pressed')
if pause:
# cv.waitKey(500)
dig_overlay.show_window()
print("pausing")
continue
dig_overlay.hide_window()
if level >= 28:
break break
level = level + 1 if level == 23:
DIG_TIME = 800
if level == 26:
DIG_TIME = 1800
if level <= 10:
plot_size = plot_size - 1
elif level % 2 == 0:
plot_size = plot_size - 1
p1 = int((config.returnDiggingWindowPos2()[0] / 2) + config.returnDiggingWindowPos2()[2])
p2 = int((config.returnDiggingWindowPos2()[1] / 2) + config.returnDiggingWindowPos2()[3])
# start 705 , 564 -> click
# move L D -> click
# move U , U , R, R , D , D , L , L
# move L D
# move U , U , U , U , R, R , R, R, D, D, D, D, L, L, L , L
dig_point(p1, p2, DIG_TIME)
# cv.circle(screenshot, (p1, p2), 7, (0, 255, 0), -1)
i = 0
for e in range(2, width, 2):
i = i + 1
tp1 = p1 - (i * plot_size)
tp2 = p2 + (i * plot_size)
for f in range(0, e, 1):
# up click
tp2 = tp2 - plot_size
if tp2 >= config.returnDiggingWindowPos2()[1] + (plot_size / 2):
continue
if tp2 <= config.returnDiggingWindowPos2()[3] + (plot_size / 2):
continue
'''
x = int(tp1 - (plot_size / 2))
y = int(tp2 - ((e * plot_size) - (plot_size / 2)))
w = plot_size
h = plot_size * e
capture_win_lanes = WindowCapture(None, "lanes", None, (w, h, x+w, y+h))
screenshot = capture_win_lanes.get_screenshot()
needlew = cv.imread("test1.jpg", cv.IMREAD_UNCHANGED)
res = vision_stun.find(needlew, screenshot, 0.9, 1)
if len(res) >= 1:
break
#vision_stun.draw_rectangles(needlew, res)
#cv.imshow("screenshot", needlew)
#cv.waitKey(150)
# ul[0], ul[1], plot_size, plotsize*e
# ll -> tp1 - plot/2 ooooooooooo
# -> tp2 + plot/2
# ul -> tp1 - plot/2
# -> tp2 - e*plot - plot/2
# lr -> tp1 + plot/2
# -> tp2 - plot/2
# ur -> tp1 + plot/2
# -> tp2 - e*plot - plot/2
'''
dig_point(tp1, tp2, DIG_TIME)
# cv.circle(screenshot, (tp1, tp2), 7, (255, 0, 255), -1)
# cv.imshow("screenshot", screenshot)
# cv.waitKey(150)
check_for_ok_button(capture_window, vision_stun, capture_config)
if keyboard.is_pressed('p') == True or pause == True:
pause = True
break
tp1 = p1 - (i * plot_size)
tp2 = p2 - (i * plot_size)
for g in range(0, e, 1):
# right click
tp1 = tp1 + plot_size
if tp2 <= config.returnDiggingWindowPos2()[3] + (plot_size / 2):
continue
# ll -> tp1 - plot/2
# -> tp2 + plot/2
# ul -> tp1 - plot/2
# -> tp2 - plot/2
# lr -> tp1 + e*plot + plot/2
# -> tp2 + plot/2
# ur -> tp1 + e*plot + plot/2
# -> tp2 - plot/2
dig_point(tp1, tp2, DIG_TIME)
# cv.circle(screenshot, (tp1, tp2), 7, (127, 0, 255), -1)
# cv.imshow("screenshot", screenshot)
# cv.waitKey(150)
check_for_ok_button(capture_window, vision_stun, capture_config)
if keyboard.is_pressed('p') == True or pause == True:
pause = True
break
tp1 = p1 + (i * plot_size)
tp2 = p2 - (i * plot_size)
for r in range(0, e, 1):
# down click
tp2 = tp2 + plot_size
if tp2 >= config.returnDiggingWindowPos2()[1] + (plot_size / 2):
continue
if tp2 <= config.returnDiggingWindowPos2()[3] + (plot_size / 2):
continue
dig_point(tp1, tp2, DIG_TIME)
# cv.circle(screenshot, (tp1, tp2), 7, (255, 0, 127), -1)
# cv.imshow("screenshot", screenshot)
# cv.waitKey(150)
check_for_ok_button(capture_window, vision_stun, capture_config)
if keyboard.is_pressed('p') == True or pause == True:
pause = True
break
tp1 = p1 + (i * plot_size)
tp2 = p2 + (i * plot_size)
for u in range(0, e, 1):
# left click
tp1 = tp1 - plot_size
if tp2 >= config.returnDiggingWindowPos2()[1] + (plot_size / 2):
continue
dig_point(tp1, tp2, DIG_TIME)
# cv.circle(screenshot, (tp1, tp2), 7, (0, 0, 255), -1)
# cv.imshow("screenshot", screenshot)
# cv.waitKey(150)
check_for_ok_button(capture_window, vision_stun, capture_config)
if keyboard.is_pressed('p') == True or pause == True:
pause = True
break
if keyboard.is_pressed('p') == True or pause == True:
pause = True
break
if keyboard.is_pressed('p') == True or pause == True:
pause = True
break
level = level + 1
if __name__ == "__main__": if __name__ == "__main__":
run() run()
sys.exit()