Files
minecraft-launcher/launcherpaths.h
T

51 lines
2.0 KiB
C++
Raw Normal View History

2026-08-23 03:30:31 +03:00
#pragma once
#include <QString>
// Пути к данным лаунчера. Собственная папка galeonLauncher лежит рядом со
// стандартной .minecraft, а не в системном каталоге приложения.
namespace LauncherPaths {
// Родительская папка, в которой лежит .minecraft (и наша galeonLauncher).
QString containerDir();
// <containerDir>/galeonLauncher — корень данных лаунчера.
QString rootDir();
// Стандартная папка игры.
QString defaultMinecraftDir();
QString settingsFile();
QString profilesFile();
// <root>/customBuilds.json — пользовательские сборки.
QString customBuildsFile();
// <root>/versions.json — как сборки назывались до переименования. Читается
// один раз при миграции и больше ни для чего не нужен.
QString legacyCustomBuildsFile();
// <root>/builds — архивы содержимого .minecraft по одному на сборку.
QString buildStorageDir();
2026-08-23 03:30:31 +03:00
// Сюда качается authlib-injector.
QString runtimeDir();
2026-08-24 21:09:52 +03:00
// <root>/cache — данные, которые можно удалить без потерь.
QString cacheDir();
// Слепок манифеста версий Mojang с отметкой времени.
QString versionManifestFile();
// Слепок списка версий одного модлоадера: loaderKey — forge|fabric|neoforge|quilt.
QString loaderCacheFile(const QString &loaderKey);
// Сюда качаются installer.jar модлоадеров.
QString loaderDownloadDir();
2026-08-23 03:30:31 +03:00
// Создаёт папку лаунчера, если её нет. Вызывается при каждом запуске и перед
// каждой записью. false и текст в error, если папки нет или в неё не пишется.
bool ensureRootExists(QString *error = nullptr);
} // namespace LauncherPaths