added fruit game support

This commit is contained in:
Thaloria@web.de
2022-10-31 17:06:38 +01:00
parent ec7bdf6eb1
commit 79db89b90b
2 changed files with 17 additions and 9 deletions

2
.idea/misc.xml generated
View File

@@ -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>

View File

@@ -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