dest="create_player", action='store_true', help="Create a player save file. Stored to player.json by default") parser.set_defaults(create_player=False) args = parser.parse_args() # create gamedata object that holds game information gamedata = GameData() if args.savefile is not None: if args.b: gamedata.b = True else: gamedata.b = False gamedata.player = util.load_player(args.savefile) vil = Village(gamedata) vil_gd = vil.run() elif args.b is True: gamedata.b = True gamedata.player = Player() util.create_player_file(gamedata) char = CreateCharacter(gamedata) gd = char.run() vil = Village(gd) gd_vil = vil.run() else: if args.b is True: gamedata.b = True else: gamedata.b = False
return None, gamedata def next(self, next_state): pass class Retailer(StateHandler): def __init__(self,gamedata): StateHandler.__init__(self, Retailer.start, [Retailer.start, Retailer.list, Retailer.choose], Retailer.quit, gamedata) Retailer.start = Start() Retailer.list = List() Retailer.choose = Choose() Retailer.quit = Quit() if __name__ == '__main__': gamedata = GameData() gamedata.player = Player() gamedata.player.strength = 25 gamedata.player.defense = 20 gamedata.player.agility = 20 gamedata.player.speed = 35 gamedata.player.name = "Horst" gamedata.player.inventory = [Item(name="Potion", price=50, influenced_attribute="hp", value="30"), Item(name="Potion", price=50, influenced_attribute="hp", value="30"), Item(name="Potion", price=50, influenced_attribute="hp", value="30")] player_file = util.create_player_file(gamedata) gamedata.player = util.load_player("player.json") ret = Retailer(gamedata) ret_gd = ret.run()
class CreateCharacter(StateHandler): def __init__(self, gamedata): StateHandler.__init__(self, CreateCharacter.start, [ CreateCharacter.start, CreateCharacter.ask, CreateCharacter.strength, CreateCharacter.agility, CreateCharacter.speed, CreateCharacter.defense, CreateCharacter.confirm, CreateCharacter.store ], Quit(), gamedata) CreateCharacter.start = Start() CreateCharacter.ask = Ask() CreateCharacter.strength = Strength() CreateCharacter.agility = Agility() CreateCharacter.speed = Speed() CreateCharacter.defense = Defense() CreateCharacter.confirm = Confirm() CreateCharacter.store = Store() if __name__ == '__main__': gamedata = GameData() player = Player() gamedata.player = player util.create_player_file(gamedata) gamedata.player = util.load_player("player.json") create_char = CreateCharacter(gamedata) create_char_gd = create_char.run() village = Village(create_char_gd) village_gd = village.run()