comparison gamelib/gamestate.py @ 108:4a44d133ad2e

Save turn number
author Neil Muller <drnlmuller@gmail.com>
date Wed, 09 May 2012 22:31:49 +0200
parents 531eb3239da2
children 685301e35f88
comparison
equal deleted inserted replaced
107:bdd11db41124 108:4a44d133ad2e
91 data['money'] = self.money 91 data['money'] = self.money
92 data['reputation'] = self.reputation 92 data['reputation'] = self.reputation
93 data['milestone'] = self.milestone 93 data['milestone'] = self.milestone
94 data['points'] = self.points 94 data['points'] = self.points
95 data['lab'] = self.lab.save_data() 95 data['lab'] = self.lab.save_data()
96 data['turn'] = self.turn
96 # Save mission state 97 # Save mission state
97 data['missions'] = {} 98 data['missions'] = {}
98 for mission in self.missions: 99 for mission in self.missions:
99 miss_name = type(mission).__name__ 100 miss_name = type(mission).__name__
100 data['missions'][miss_name] = mission.save_data() 101 data['missions'][miss_name] = mission.save_data()
103 def _load_data(self, data): 104 def _load_data(self, data):
104 """Restore the game state""" 105 """Restore the game state"""
105 self.money = data['money'] 106 self.money = data['money']
106 self.reputation = data['reputation'] 107 self.reputation = data['reputation']
107 self.points = data['points'] 108 self.points = data['points']
109 self.turn = data['turn']
108 self.lab = lab.Lab(data['lab']) 110 self.lab = lab.Lab(data['lab'])
109 for mis_class in missions.Mission.__subclasses__(): 111 for mis_class in missions.Mission.__subclasses__():
110 miss_name = mis_class.__name__ 112 miss_name = mis_class.__name__
111 if miss_name in data['missions']: 113 if miss_name in data['missions']:
112 self.missions.append(mis_class(data['missions'][miss_name])) 114 self.missions.append(mis_class(data['missions'][miss_name]))