The current game state.
"""
-from naja.constants import BITS
+import yaml
+
from naja.gameboard import GameBoard
+from naja.resources import resources
+
+
+def load_location_deck(name):
+ with resources.get_file('location_decks', '%s.yaml' % (name,)) as deck_fp:
+ return yaml.safe_load(deck_fp)
class GameState(object):
Naja game state.
"""
- INITIAL_BITS = (
- BITS.NORTH | BITS.SOUTH |
- BITS.EAST | BITS.WEST
- )
- MAX_HEALTH = 4
- WINS_REQUIRED = 4
-
def __init__(self):
- self.gameboard = GameBoard.new_game(
- initial_bits=self.INITIAL_BITS,
- initial_pos=(2, 2),
- max_health=self.MAX_HEALTH,
- wins_required=self.WINS_REQUIRED,
- locations_definition=[]) # TODO: we will need some of these :)
+ # This is a very simple deck to allow testing more drawing logic
+ # on tiles. These will need to be replaced with better stuff.
+ locations_deck = load_location_deck('test')
+ self.gameboard = GameBoard.new_game(locations_deck['cards'])
@property
def player(self):
return self.gameboard.player
+
+ @property
+ def board_locations(self):
+ return self.gameboard.board_locations