comparison gamelib/gamestate.py @ 42:47c7e96cf9c8

Change initial mission creation logic to look for leaf classes
author Neil Muller <drnlmuller@gmail.com>
date Mon, 07 May 2012 14:00:18 +0200
parents e285b1e31a08
children 1e8f7e694f0c
comparison
equal deleted inserted replaced
41:e285b1e31a08 42:47c7e96cf9c8
22 if init_data: 22 if init_data:
23 self._load_data(init_data) 23 self._load_data(init_data)
24 else: 24 else:
25 self.lab = lab.Lab() 25 self.lab = lab.Lab()
26 # instantiate all the available missions 26 # instantiate all the available missions
27 self.missions = [cls() for cls in 27 for cls in missions.Mission.__subclasses__():
28 missions.Mission.__subclasses__()] 28 if cls.__subclasses__():
29 # Not a leaf class, so base class for other missions
30 continue
31 # Add mission to the list
32 self.missions.append(cls())
29 33
30 def start_turn(self): 34 def start_turn(self):
31 # Make more flexible? 35 # Make more flexible?
32 self.points += 3 36 self.points += 3
33 self.cur_missions = [] 37 self.cur_missions = []