mcpelauncher-1.1/mcpe/ResourcePack.h
2026-01-19 20:18:08 +02:00

59 lines
1.6 KiB
C++

#pragma once
#include <string>
#include <functional>
class MinecraftEventing;
class FilePathManager;
class ResourcePack;
class ResourcePackStack;
class ResourceLoader;
enum class ResourcePackStackType;
class PackManifestFactory {
public:
char filler[4];
static void (*PackManifestFactory_construct)(PackManifestFactory*, MinecraftEventing&);
PackManifestFactory(MinecraftEventing& ev) {
PackManifestFactory_construct(this, ev);
}
};
class ResourcePackRepository {
public:
char filler[0x1C];
ResourcePack* vanillaPack;
char filler2[0x200];
static void (*ResourcePackRepository_construct)(ResourcePackRepository*, MinecraftEventing&, PackManifestFactory&, EntitlementManager*, FilePathManager*);
ResourcePackRepository(MinecraftEventing& ev, PackManifestFactory& factory, EntitlementManager* em, FilePathManager* fpm) {
ResourcePackRepository_construct(this, ev, factory, em, fpm);
}
};
class ResourcePackManager: public ResourceLoader {
public:
char filler[0x200];
static void (*ResourcePackManager_construct)(ResourcePackManager*, std::function<mcpe::string ()> const);
static void (*ResourcePackManager_setStack)(ResourcePackManager*, std::unique_ptr<ResourcePackStack>, ResourcePackStackType, bool);
ResourcePackManager(std::function<mcpe::string ()> const& f) {
ResourcePackManager_construct(this, f);
}
void setStack(std::unique_ptr<ResourcePackStack>&& stackPtr, ResourcePackStackType stackType, bool b) {
ResourcePackManager_setStack(this, std::move(stackPtr), stackType, b);
}
};