diff --git a/src/environment.py b/src/environment.py index d0d0a0b..c313719 100644 --- a/src/environment.py +++ b/src/environment.py @@ -8,7 +8,12 @@ from tilesFactory import TilesFactory def generate_field() -> List[List[Tile]]: tiles_factory = TilesFactory() tiles_list = tiles_factory.get_tiles_list() - return [choices(tiles_list, weights=[10, 10, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4], k=10) for _ in range(10)] + return [choices( + tiles_list, + weights=[20, 20] + [4 for _ in range(5)] + [10 for _ in range(9)] + [3 for _ in range(18)], + k=10) + for _ in range(10) + ] class Environment: diff --git a/src/tilesFactory.py b/src/tilesFactory.py index 4e1aa0d..d52ba55 100644 --- a/src/tilesFactory.py +++ b/src/tilesFactory.py @@ -4,12 +4,13 @@ from importlib import import_module from tile import Tile from const import IMAGES -from machine_learning.data_set import visibility, stability, ground, armed +from machine_learning.data_set import visibility, stability, armed class TilesFactory: def create_tile(self, number: int) -> Tile: img = IMAGES[number] + img_ground = img.name.split('_')[0] if img.mine_type: module = import_module(f'{img.mine_type.lower()}_mine') return Tile( @@ -17,7 +18,7 @@ class TilesFactory: 0, self.get_random_value(visibility), self.get_random_value(stability), - self.get_random_value(ground), + img_ground, getattr(module, f'{img.mine_type}Mine')( uniform( 0.5, @@ -28,20 +29,20 @@ class TilesFactory: else: return Tile( number, - 5, + 30, self.get_random_value(visibility), self.get_random_value(stability), - self.get_random_value(ground) - ) if 'grass' in img.name else Tile( + img_ground + ) if 'mud' in img.name else Tile( number, - 30, + 5, self.get_random_value(visibility), self.get_random_value(stability), - self.get_random_value(ground) + img_ground ) def get_tiles_list(self) -> List[Tile]: - return [self.create_tile(i) for i in range(13)] + return [self.create_tile(i) for i in range(34)] def get_random_value(self, values): return choice(values)