qt6windows7/examples/corelib/serialization/savegame/level.h

38 lines
686 B
C
Raw Normal View History

2023-10-30 06:33:08 +08:00
// Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
#ifndef LEVEL_H
#define LEVEL_H
#include "character.h"
#include <QJsonObject>
#include <QList>
2023-11-02 01:02:52 +08:00
QT_FORWARD_DECLARE_CLASS(QTextStream)
2023-10-30 06:33:08 +08:00
//! [0]
class Level
{
public:
Level() = default;
explicit Level(const QString &name);
QString name() const;
QList<Character> npcs() const;
void setNpcs(const QList<Character> &npcs);
2023-11-02 01:02:52 +08:00
static Level fromJson(const QJsonObject &json);
QJsonObject toJson() const;
void print(QTextStream &s, int indentation = 0) const;
2023-10-30 06:33:08 +08:00
private:
QString mName;
QList<Character> mNpcs;
};
//! [0]
#endif // LEVEL_H