mirror of
https://github.com/BeamMP/BeamMP-Launcher.git
synced 2026-04-04 06:46:06 +00:00
add specify a config file as argument
This commit is contained in:
@@ -8,8 +8,8 @@
|
||||
#include "Logger.h"
|
||||
|
||||
void Launcher::LoadConfig() {
|
||||
if (fs::exists("Launcher.toml")) {
|
||||
toml::parse_result config = toml::parse_file("Launcher.toml");
|
||||
if (fs::exists(UIData::ConfigPath)) {
|
||||
toml::parse_result config = toml::parse_file(UIData::ConfigPath);
|
||||
auto ui = config["UI"];
|
||||
auto build = config["Build"];
|
||||
auto GamePath = config["GamePath"];
|
||||
@@ -26,24 +26,24 @@ void Launcher::LoadConfig() {
|
||||
} else LOG(ERROR) << "Failed to get 'Build' string from config";
|
||||
|
||||
if (GamePath.is_string()) {
|
||||
if(!GamePath.as_string()->get().empty()) {
|
||||
if (!GamePath.as_string()->get().empty()) {
|
||||
BeamRoot = GamePath.as_string()->get();
|
||||
} else throw ShutdownException("GamePath cannot be empty");
|
||||
}
|
||||
else LOG(ERROR) << "Failed to get 'GamePath' string from config";
|
||||
} else LOG(ERROR) << "Failed to get 'GamePath' string from config";
|
||||
|
||||
if (ProfilePath.is_string()) {
|
||||
auto GameVer = VersionParser(UIData::GameVer).split;
|
||||
if (!UIData::GameVer.empty()) {
|
||||
auto GameVer = VersionParser(UIData::GameVer).split;
|
||||
|
||||
if (!ProfilePath.as_string()->get().empty()) {
|
||||
BeamUserPath = fs::path(ProfilePath.as_string()->get())/(GameVer[0] + '.' + GameVer[1]);
|
||||
MPUserPath = BeamUserPath/"mods"/"multiplayer";
|
||||
} else throw ShutdownException("ProfilePath cannot be empty");
|
||||
}
|
||||
else LOG(ERROR) << "Failed to get 'ProfilePath' string from config";
|
||||
if (!ProfilePath.as_string()->get().empty()) {
|
||||
BeamUserPath = fs::path(ProfilePath.as_string()->get()) / (GameVer[0] + '.' + GameVer[1]);
|
||||
MPUserPath = BeamUserPath / "mods" / "multiplayer";
|
||||
} else throw ShutdownException("ProfilePath cannot be empty");
|
||||
} else throw ShutdownException ("Check game path in config");
|
||||
} else LOG(ERROR) << "Failed to get 'ProfilePath' string from config";
|
||||
|
||||
if (CachePath.is_string()) {
|
||||
if(!CachePath.as_string()->get().empty()) {
|
||||
if (!CachePath.as_string()->get().empty()) {
|
||||
LauncherCache = CachePath.as_string()->get();
|
||||
} else throw ShutdownException("CachePath cannot be empty");
|
||||
} else LOG(ERROR) << "Failed to get 'CachePath' string from config";
|
||||
|
||||
Reference in New Issue
Block a user