PrismLauncher/api/logic/minecraft/flame/PackManifest.h
Petr Mrázek 3fb4ce713f NOISSUE add support for Flame packs with resource packs
And a bunch of undefined things we don't handle intentionally just yet...
2017-09-08 09:02:27 +02:00

59 lines
875 B
C++

#pragma once
#include <QString>
#include <QVector>
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;
QVector<Flame::Modloader> modLoaders;
};
struct Manifest
{
QString manifestType;
int manifestVersion = 0;
Flame::Minecraft minecraft;
QString name;
QString version;
QString author;
QVector<Flame::File> files;
QString overrides;
};
void loadManifest(Flame::Manifest & m, const QString &filepath);
}