diff options
| author | bunnei <bunneidev@gmail.com> | 2018-12-10 21:52:19 -0500 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-12-10 21:52:19 -0500 | 
| commit | 2c45c6d23431021efb1053abcb40064256aac338 (patch) | |
| tree | edd00a30fa32460e8158992d53768038e83141dc /src/yuzu_cmd | |
| parent | 9eb9b344c7566b529fb3a7ac0feca86213c00d81 (diff) | |
| parent | f6f65035785479934ddd443a9236ec142b7a0ed6 (diff) | |
Merge pull request #1819 from DarkLordZach/disable-addons
patch_manager: Add support for disabling patches
Diffstat (limited to 'src/yuzu_cmd')
| -rw-r--r-- | src/yuzu_cmd/config.cpp | 18 | ||||
| -rw-r--r-- | src/yuzu_cmd/default_ini.h | 7 | 
2 files changed, 25 insertions, 0 deletions
| diff --git a/src/yuzu_cmd/config.cpp b/src/yuzu_cmd/config.cpp index 097c1fbe3..fe0d1eebf 100644 --- a/src/yuzu_cmd/config.cpp +++ b/src/yuzu_cmd/config.cpp @@ -3,6 +3,7 @@  // Refer to the license.txt file included.  #include <memory> +#include <sstream>  #include <SDL.h>  #include <inih/cpp/INIReader.h>  #include "common/file_util.h" @@ -369,6 +370,23 @@ void Config::ReadValues() {      Settings::values.dump_exefs = sdl2_config->GetBoolean("Debugging", "dump_exefs", false);      Settings::values.dump_nso = sdl2_config->GetBoolean("Debugging", "dump_nso", false); +    const auto title_list = sdl2_config->Get("AddOns", "title_ids", ""); +    std::stringstream ss(title_list); +    std::string line; +    while (std::getline(ss, line, '|')) { +        const auto title_id = std::stoul(line, nullptr, 16); +        const auto disabled_list = sdl2_config->Get("AddOns", "disabled_" + line, ""); + +        std::stringstream inner_ss(disabled_list); +        std::string inner_line; +        std::vector<std::string> out; +        while (std::getline(inner_ss, inner_line, '|')) { +            out.push_back(inner_line); +        } + +        Settings::values.disabled_addons.insert_or_assign(title_id, out); +    } +      // Web Service      Settings::values.enable_telemetry =          sdl2_config->GetBoolean("WebService", "enable_telemetry", true); diff --git a/src/yuzu_cmd/default_ini.h b/src/yuzu_cmd/default_ini.h index d73669f36..0f3f8da50 100644 --- a/src/yuzu_cmd/default_ini.h +++ b/src/yuzu_cmd/default_ini.h @@ -221,5 +221,12 @@ web_api_url = https://api.yuzu-emu.org  # See https://profile.yuzu-emu.org/ for more info  yuzu_username =  yuzu_token = + +[AddOns] +# Used to disable add-ons +# List of title IDs of games that will have add-ons disabled (separated by '|'): +title_ids = +# For each title ID, have a key/value pair called `disabled_<title_id>` equal to the names of the add-ons to disable (sep. by '|') +# e.x. disabled_0100000000010000 = Update|DLC <- disables Updates and DLC on Super Mario Odyssey  )";  } | 
