added fruit game support
This commit is contained in:
2
.idea/misc.xml
generated
2
.idea/misc.xml
generated
@@ -1,4 +1,4 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<project version="4">
|
<project version="4">
|
||||||
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.7 (lc-py-b)" project-jdk-type="Python SDK" />
|
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.7 (lc_py_b)" project-jdk-type="Python SDK" />
|
||||||
</project>
|
</project>
|
||||||
24
fruit.py
24
fruit.py
@@ -86,8 +86,8 @@ class Fruit(GameBase):
|
|||||||
screenshot = screenshot[188:1022, 553:1861]
|
screenshot = screenshot[188:1022, 553:1861]
|
||||||
# 553 to 1861 = 1330 / 11 = 119
|
# 553 to 1861 = 1330 / 11 = 119
|
||||||
# 188 to 1022
|
# 188 to 1022
|
||||||
# cv.imshow("screenshot", screenshot)
|
#cv.imshow("screenshot", screenshot)
|
||||||
# cv.waitKey(150)
|
#cv.waitKey(150)
|
||||||
# continue
|
# continue
|
||||||
data_coords = np.zeros((7, 11), dtype=object)
|
data_coords = np.zeros((7, 11), dtype=object)
|
||||||
# field = Field()
|
# field = Field()
|
||||||
@@ -125,24 +125,32 @@ class Fruit(GameBase):
|
|||||||
def find_patterns_and_valid_moves(self, state):
|
def find_patterns_and_valid_moves(self, state):
|
||||||
for e in range(0, 7, 1):
|
for e in range(0, 7, 1):
|
||||||
for i in range(0, 11, 1):
|
for i in range(0, 11, 1):
|
||||||
for color in self.colors:
|
if state[e, i] in self.colors:
|
||||||
if self.check_pairs(state, e, i, color):
|
#color in self.colors:
|
||||||
|
if self.check_pairs_h(state, e, i):
|
||||||
return
|
return
|
||||||
if self.overlay.run_mode == 'stopped' or self.overlay.run_mode == 'paused':
|
if self.check_pairs_v(state, e, i):
|
||||||
return
|
return
|
||||||
if self.overlay.run_mode == 'stopped' or self.overlay.run_mode == 'paused':
|
if self.overlay.run_mode == 'stopped' or self.overlay.run_mode == 'paused':
|
||||||
return
|
return
|
||||||
if self.overlay.run_mode == 'stopped' or self.overlay.run_mode == 'paused':
|
if self.overlay.run_mode == 'stopped' or self.overlay.run_mode == 'paused':
|
||||||
return
|
return
|
||||||
|
|
||||||
def check_pairs(self, state, e, i, color):
|
def check_pairs_h(self, state, e, i):
|
||||||
try:
|
try:
|
||||||
#
|
#
|
||||||
if state[e, i] == color and state[e + 1, i] == color:
|
if state[e, i] == state[e + 1, i]:
|
||||||
click_pt = self.get_click_point(self.data_coordinates[e, i])
|
click_pt = self.get_click_point(self.data_coordinates[e, i])
|
||||||
self.dig_point(click_pt[0] + self.offset_left, click_pt[1] + self.offset_down, 100)
|
self.dig_point(click_pt[0] + self.offset_left, click_pt[1] + self.offset_down, 100)
|
||||||
return True
|
return True
|
||||||
elif state[e, i] == color and state[e, i + 1] == color:
|
return False
|
||||||
|
except:
|
||||||
|
return False
|
||||||
|
|
||||||
|
def check_pairs_v(self, state, e, i):
|
||||||
|
try:
|
||||||
|
#
|
||||||
|
if state[e, i] == state[e, i + 1]:
|
||||||
click_pt = self.get_click_point(self.data_coordinates[e, i])
|
click_pt = self.get_click_point(self.data_coordinates[e, i])
|
||||||
self.dig_point(click_pt[0] + self.offset_left, click_pt[1] + self.offset_down, 100)
|
self.dig_point(click_pt[0] + self.offset_left, click_pt[1] + self.offset_down, 100)
|
||||||
return True
|
return True
|
||||||
|
|||||||
Reference in New Issue
Block a user