pollymc/api/logic/minecraft/flame/PackManifest.h

59 lines
875 B
C
Raw Normal View History

#pragma once
#include <QString>
#include <QVector>
2017-04-22 22:21:04 +05:30
namespace Flame
{
struct File
{
int projectId = 0;
int fileId = 0;
// NOTE: the opposite to 'optional'. This is at the time of writing unused.
bool required = true;
// our
bool resolved = false;
QString fileName;
QString url;
QString targetFolder = QLatin1Literal("mods");
enum class Type
{
Unknown,
Folder,
Ctoc,
SingleFile,
Cmod2,
Modpack,
Mod
} type = Type::Mod;
};
struct Modloader
{
QString id;
bool primary = false;
};
struct Minecraft
{
QString version;
QString libraries;
2017-04-22 22:21:04 +05:30
QVector<Flame::Modloader> modLoaders;
};
struct Manifest
{
QString manifestType;
int manifestVersion = 0;
2017-04-22 22:21:04 +05:30
Flame::Minecraft minecraft;
QString name;
QString version;
QString author;
2017-04-22 22:21:04 +05:30
QVector<Flame::File> files;
QString overrides;
};
2017-04-22 22:21:04 +05:30
void loadManifest(Flame::Manifest & m, const QString &filepath);
}