added loop for double dig
This commit is contained in:
310
digging_main2.py
310
digging_main2.py
@@ -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()
|
||||||
|
|||||||
Reference in New Issue
Block a user