X-Git-Url: https://git.ctpug.org.za/?a=blobdiff_plain;f=tabakrolletjie%2Fgamestate.py;h=6f6725b8e0bda36ef5a031946306194d0496b0e2;hb=7fce31b4c16b25ba1892fadcc8ef48ef25f73d39;hp=e69de29bb2d1d6434b8b29ae775ad8c2e48c5391;hpb=f3600c28cd6e96abe7c0916860b0cc56b444545f;p=tabakrolletjie.git diff --git a/tabakrolletjie/gamestate.py b/tabakrolletjie/gamestate.py index e69de29..6f6725b 100644 --- a/tabakrolletjie/gamestate.py +++ b/tabakrolletjie/gamestate.py @@ -0,0 +1,57 @@ +""" The game state. """ + + +class GameState(object): + def __init__(self): + self._state = { + "station": None, + "turnips": [], + "seeds": None, + } + self.harvested = 0 + self.eaten = 0 + self.days = 0 + self.resistances = {} + + @property + def station(self): + return self._state["station"] + + @property + def turnips(self): + return self._state["turnips"] + + @turnips.setter + def turnips(self, turnip_list): + self._state["turnips"] = turnip_list + + @property + def seeds(self): + if self._state["seeds"] is None: + if (self._state["station"] and + "seeds" in self._state["station"]["config"]): + self._state["seeds"] = ( + self._state["station"]["config"]["seeds"]) + else: + self._state["seeds"] = 0 + return self._state["seeds"] + + @seeds.setter + def seeds(self, value): + self._state['seeds'] = value + + def set_station(self, station): + self._state["station"] = station + self._state["turnips"] = [] + self._state["seeds"] = None + self.resistances = {} + + def get_spawn_positions(self): + return self._state["station"]["config"]["spawn positions"] + + @property + def turnip_target(self): + return self._state["station"]["config"]["turnip target"] + + def update_lights(self, lights): + self._state["station"]["lights"] = lights.serialize_lights()