mirror of
https://github.com/loot/libloot.git
synced 2026-07-27 14:16:01 -07:00
Change Skyrim SE's LOOT game folder
To "Skyrim Special Edition", matching the game's folder naming and that used by other mod utilities, for simpler interoperability. Also upgrade existing SkyrimSE folders gracefully.
This commit is contained in:
@@ -28,6 +28,7 @@
|
||||
|
||||
#include <boost/filesystem/fstream.hpp>
|
||||
|
||||
#include "backend/app/loot_paths.h"
|
||||
#include "loot/loot_version.h"
|
||||
|
||||
using std::lock_guard;
|
||||
@@ -94,7 +95,7 @@ void LootSettings::load(YAML::Node& settings) {
|
||||
gameSettings_.push_back(GameSettings(GameType::tes5));
|
||||
|
||||
if (find(begin(gameSettings_), end(gameSettings_), GameSettings(GameType::tes5se)) == end(gameSettings_))
|
||||
gameSettings_.push_back(GameSettings(GameType::tes5se));
|
||||
gameSettings_.push_back(GameSettings(GameType::tes5se));
|
||||
|
||||
if (find(begin(gameSettings_), end(gameSettings_), GameSettings(GameType::fo3)) == end(gameSettings_))
|
||||
gameSettings_.push_back(GameSettings(GameType::fo3));
|
||||
@@ -272,6 +273,13 @@ void LootSettings::upgradeYaml(YAML::Node& yaml) {
|
||||
YAML::Node validGames;
|
||||
for (auto node : yaml["games"]) {
|
||||
try {
|
||||
if (node["type"].as<string>() == "SkyrimSE" && node["folder"].as<string>() == "SkyrimSE") {
|
||||
node["type"] = GameSettings(GameType::tes5se).FolderName();
|
||||
node["folder"] = GameSettings(GameType::tes5se).FolderName();
|
||||
|
||||
boost::filesystem::rename(LootPaths::getLootDataPath() / "SkyrimSE", LootPaths::getLootDataPath() / node["folder"].as<string>());
|
||||
}
|
||||
|
||||
GameSettings settings(node.as<GameSettings>());
|
||||
|
||||
if (!yaml["Games"]) {
|
||||
|
||||
@@ -58,7 +58,7 @@ GameSettings::GameSettings(const GameType gameCode, const std::string& folder) :
|
||||
} else if (Type() == GameType::tes5se) {
|
||||
name_ = "TES V: Skyrim Special Edition";
|
||||
registryKey_ = "Software\\Bethesda Softworks\\Skyrim Special Edition\\Installed Path";
|
||||
lootFolderName_ = "SkyrimSE";
|
||||
lootFolderName_ = "Skyrim Special Edition";
|
||||
masterFile_ = "Skyrim.esm";
|
||||
repositoryURL_ = "https://github.com/loot/skyrimse.git";
|
||||
} else if (Type() == GameType::fo3) {
|
||||
|
||||
Reference in New Issue
Block a user