From 25aa5506c8db1421b972e55cbce8f11ab0efd576 Mon Sep 17 00:00:00 2001 From: Eryn Wells Date: Wed, 4 May 2022 09:22:06 -0700 Subject: [PATCH] Convert the generator.Configuration class to a dataclass --- roguebasin/map.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/roguebasin/map.py b/roguebasin/map.py index 95e5e29..14611c4 100644 --- a/roguebasin/map.py +++ b/roguebasin/map.py @@ -7,6 +7,7 @@ import random import tcod from .geometry import Direction, Point, Rect, Size from .tile import Empty, Floor, Wall +from dataclasses import dataclass from typing import Iterator, List, Optional LOG = logging.getLogger('map') @@ -52,14 +53,14 @@ class MapGenerator: class RoomsAndCorridorsGenerator(MapGenerator): '''Generate a rooms-and-corridors style map with BSP.''' + @dataclass class Configuration: - def __init__(self, min_room_size: Size, max_room_size: Size): - self.minimum_room_size = min_room_size - self.maximum_room_size = max_room_size + minimum_room_size: Size + maximum_room_size: Size DefaultConfiguration = Configuration( - min_room_size=Size(5, 5), - max_room_size=Size(15, 15), + minimum_room_size=Size(5, 5), + maximum_room_size=Size(15, 15), ) def __init__(self, *, size: Size, config: Optional[Configuration] = None):