コード例 #1
0
def load_game():
    with open('save_game.json') as save_file:
        data = json.load(save_file)

    player_index = data['player_index']
    entities_json = data['entities']
    game_map_json = data['game_map']
    message_log_json = data['message_log']
    game_state_json = data['game_state']

    entities = [Entity.from_json(entity_json) for entity_json in entities_json]
    player = entities[player_index]
    game_map = GameMap.from_json(game_map_json)
    message_log = MessageLog.from_json(message_log_json)
    game_state = GameStates(game_state_json)

    return player, entities, game_map, message_log, game_state
コード例 #2
0
def load_game():
    if not os.path.isfile("save_data"):
        raise FileNotFoundError

    with open("save_data", mode="r") as f:
        json_data = json.load(f)

        player = Entity.from_json(json_data["player"])
        dungeon = {
            int(dungeon_level): GameMap.from_json(map_data)
            for dungeon_level, map_data in json_data["dungeon"].items()
        }
        message_log = MessageLog.from_json(json_data["message_log"])
        game_state = GameState(json_data["game_state"])
        current_level = int(json_data["current_level"])

        dungeon[current_level].entities.append(player)

        return player, dungeon, message_log, game_state, current_level