diff options
Diffstat (limited to 'libs/lootcli/src/game_settings.h')
| -rw-r--r-- | libs/lootcli/src/game_settings.h | 101 |
1 files changed, 0 insertions, 101 deletions
diff --git a/libs/lootcli/src/game_settings.h b/libs/lootcli/src/game_settings.h deleted file mode 100644 index bc775c9..0000000 --- a/libs/lootcli/src/game_settings.h +++ /dev/null @@ -1,101 +0,0 @@ -#ifndef LOOT_GUI_STATE_GAME_GAME_SETTINGS -#define LOOT_GUI_STATE_GAME_GAME_SETTINGS - -#include <filesystem> -#include <optional> -#include <set> -#include <string> -#include <vector> - -#include "loot/enum/game_type.h" - -namespace loot -{ -constexpr inline std::string_view NEHRIM_STEAM_REGISTRY_KEY = - "Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Steam App " - "1014940\\InstallLocation"; -static constexpr const char* DEFAULT_MASTERLIST_BRANCH = "v0.26"; - -enum struct GameId : uint8_t -{ - tes3, - tes4, - nehrim, - tes5, - enderal, - tes5se, - enderalse, - tes5vr, - fo3, - fonv, - fo4, - fo4vr, - starfield, - openmw, - oblivionRemastered -}; - -GameType GetGameType(const GameId gameId); - -float GetMinimumHeaderVersion(const GameId gameId); - -std::filesystem::path GetDataPath(const GameId gamiId, - const std::filesystem::path& gamePath); - -std::string ToString(const GameId gameId); - -bool SupportsLightPlugins(const GameType gameType); - -std::string GetMasterFilename(const GameId gameId); - -std::string GetGameName(const GameId gameId); - -std::string GetDefaultMasterlistRepositoryName(GameId gameId); - -std::string GetDefaultMasterlistUrl(const std::string& repositoryName); -std::string GetDefaultMasterlistUrl(const GameId gameId); - -class GameSettings -{ -public: - GameSettings() = default; - explicit GameSettings(const GameId gameId, const std::string& lootFolder = ""); - - bool operator==(const GameSettings& rhs) const; // Compares names and folder names. - - GameId Id() const; - GameType Type() const; - std::string Name() const; // Returns the game's name, eg. "TES IV: Oblivion". - std::string FolderName() const; - std::string Master() const; - float MinimumHeaderVersion() const; - std::string MasterlistSource() const; - std::filesystem::path GamePath() const; - std::filesystem::path GameLocalPath() const; - std::filesystem::path DataPath() const; - - GameSettings& SetName(const std::string& name); - GameSettings& SetMaster(const std::string& masterFile); - GameSettings& SetMinimumHeaderVersion(float minimumHeaderVersion); - GameSettings& SetMasterlistSource(const std::string& source); - GameSettings& SetGamePath(const std::filesystem::path& path); - GameSettings& SetGameLocalPath(const std::filesystem::path& GameLocalPath); - GameSettings& SetGameLocalFolder(const std::string& folderName); - -private: - GameId id_{GameId::tes4}; - GameType type_{GameType::tes4}; - std::string name_; - std::string masterFile_; - float minimumHeaderVersion_{0.0f}; - - std::string lootFolderName_; - - std::string masterlistSource_; - - std::filesystem::path gamePath_; // Path to the game's folder. - std::filesystem::path gameLocalPath_; -}; -} // namespace loot - -#endif |
