mirror of
https://github.com/hedge-dev/UnleashedRecomp.git
synced 2025-12-31 08:21:11 -06:00
71 lines
2.2 KiB
C++
71 lines
2.2 KiB
C++
void Config::Load()
|
|
{
|
|
try
|
|
{
|
|
auto toml = toml::parse_file((GetUserPath() / TOML_FILE).string());
|
|
|
|
TOML_BEGIN_SECTION("System")
|
|
{
|
|
TOML_READ_ENUM(ELanguage, Language);
|
|
TOML_READ_BOOLEAN(Hints);
|
|
TOML_READ_ENUM(EScoreBehaviour, ScoreBehaviour);
|
|
TOML_READ_BOOLEAN(UnleashOutOfControlDrain);
|
|
TOML_READ_BOOLEAN(WerehogHubTransformVideo);
|
|
TOML_READ_BOOLEAN(LogoSkip);
|
|
}
|
|
TOML_END_SECTION();
|
|
|
|
TOML_BEGIN_SECTION("Controls")
|
|
{
|
|
TOML_READ_BOOLEAN(CameraXInvert);
|
|
TOML_READ_BOOLEAN(CameraYInvert);
|
|
TOML_READ_BOOLEAN(XButtonHoming);
|
|
TOML_READ_BOOLEAN(UnleashCancel);
|
|
}
|
|
TOML_END_SECTION();
|
|
|
|
TOML_BEGIN_SECTION("Audio")
|
|
{
|
|
TOML_READ_FLOAT(MusicVolume);
|
|
TOML_READ_FLOAT(SEVolume);
|
|
TOML_READ_ENUM(EVoiceLanguage, VoiceLanguage);
|
|
TOML_READ_FLOAT(Subtitles);
|
|
TOML_READ_BOOLEAN(WerehogBattleMusic);
|
|
}
|
|
TOML_END_SECTION();
|
|
|
|
TOML_BEGIN_SECTION("Video")
|
|
{
|
|
TOML_READ_ENUM(EGraphicsAPI, GraphicsAPI);
|
|
TOML_READ_INTEGER(WindowWidth);
|
|
TOML_READ_INTEGER(WindowHeight);
|
|
TOML_READ_FLOAT(ResolutionScale);
|
|
TOML_READ_BOOLEAN(Fullscreen);
|
|
TOML_READ_BOOLEAN(VSync);
|
|
TOML_READ_INTEGER(BufferCount);
|
|
TOML_READ_INTEGER(FPS);
|
|
TOML_READ_FLOAT(Brightness);
|
|
TOML_READ_INTEGER(MSAA);
|
|
TOML_READ_INTEGER(AnisotropicFiltering);
|
|
TOML_READ_INTEGER(ShadowResolution);
|
|
TOML_READ_ENUM(EGITextureFiltering, GITextureFiltering);
|
|
TOML_READ_BOOLEAN(AlphaToCoverage);
|
|
TOML_READ_BOOLEAN(Xbox360ColorCorrection);
|
|
TOML_READ_ENUM(EMovieScaleMode, MovieScaleMode);
|
|
TOML_READ_ENUM(EUIScaleMode, UIScaleMode);
|
|
}
|
|
TOML_END_SECTION();
|
|
}
|
|
catch (toml::parse_error& err)
|
|
{
|
|
printf("Failed to parse configuration: %s\n", err.what());
|
|
}
|
|
|
|
ResolutionScale = std::clamp(ResolutionScale, 0.25f, 2.0f);
|
|
}
|
|
|
|
void Config::Save()
|
|
{
|
|
// TODO
|
|
}
|