X-Git-Url: https://git.ctpug.org.za/?a=blobdiff_plain;f=naja%2Fgamestate.py;h=c8bbbc7acc67c54ec1d5827c3e3ddcb70be3bfd7;hb=ae81bf6bf108dfce2ece923587aa4004149feed0;hp=71abcc73a00eff7982eedadd5cb726120f4b3450;hpb=afd42e545649b6e5a3fe1502c063080cb9302c14;p=naja.git diff --git a/naja/gamestate.py b/naja/gamestate.py index 71abcc7..c8bbbc7 100644 --- a/naja/gamestate.py +++ b/naja/gamestate.py @@ -2,8 +2,15 @@ The current game state. """ +import yaml + from naja.gameboard import GameBoard -from naja.constants import BITS +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): @@ -14,17 +21,13 @@ class GameState(object): def __init__(self): # This is a very simple deck to allow testing more drawing logic # on tiles. These will need to be replaced with better stuff. - self.gameboard = GameBoard.new_game( - locations_definition=[ - {'actions': []}, - {'actions': [{'required_bits': [BITS['CYAN']], - 'action_class': 'DoNothing'}]}, - {'actions': [{'required_bits': [BITS['YELLOW']], - 'action_class': 'DoNothing'}]}, - {'actions': [{'required_bits': [BITS['YELLOW'], BITS['MAGENTA']], - 'action_class': 'DoNothing'}]}, - ]) + 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