summaryrefslogtreecommitdiff
path: root/bots/simple.py
blob: 54e2d0583bdedf430c8df454f9edf9a8f5f538f9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
""" bots/simple.py - yksinkertainen botti joka etsii vain yhdeltä laatalta """
from random import sample
from .bot import Bot

class SimpleBot(Bot):
    """ SimpleBot - perustyhmä botti """

    def search(self):
        """ simple_search - jos viereisten avaamattomien määrä tästmää """
        tiles = self.get_interesting_tiles()
        for tile in tiles:
            c = self.get_value(tile)
            n = self.get_neighbours(tile)
            self.remove_number_tiles(n)
            c -= self.remove_mine_tiles(n)
            if c == 0:
                for safe in n:
                    self.safe_tiles.add(safe)
            if c == len(n):
                for mine in n:
                    self.mine_tiles.add(mine)
        return self.saved_hints()

    def lucky_guess(self):
        tiles = self.get_unknown_tiles()
        if tiles:
            self.safe_tiles.add(sample(sorted(tiles),1)[0])
            return True
        return False