Zelda64Recomp/include/zelda_config.h

55 lines
1.3 KiB
C
Raw Normal View History

#ifndef __RECOMP_CONFIG_H__
#define __RECOMP_CONFIG_H__
2024-03-04 02:00:49 +00:00
#include <filesystem>
#include <string_view>
2024-06-01 14:27:51 +00:00
#include "ultramodern/config.hpp"
2024-06-01 14:27:51 +00:00
namespace zelda64 {
constexpr std::u8string_view program_id = u8"Zelda64Recompiled";
constexpr std::u8string_view mm_game_id = u8"mm.n64.us.1.0";
constexpr std::string_view program_name = "Zelda 64: Recompiled";
void load_config();
void save_config();
void reset_input_bindings();
2024-04-21 18:02:47 +00:00
void reset_cont_input_bindings();
void reset_kb_input_bindings();
2024-03-04 02:00:49 +00:00
std::filesystem::path get_app_folder_path();
bool get_debug_mode_enabled();
void set_debug_mode_enabled(bool enabled);
2024-06-01 14:27:51 +00:00
enum class AutosaveMode {
On,
Off,
OptionCount
};
2024-06-01 14:27:51 +00:00
NLOHMANN_JSON_SERIALIZE_ENUM(zelda64::AutosaveMode, {
{zelda64::AutosaveMode::On, "On"},
{zelda64::AutosaveMode::Off, "Off"}
});
enum class AnalogCamMode {
On,
Off,
OptionCount
};
2024-06-01 14:27:51 +00:00
NLOHMANN_JSON_SERIALIZE_ENUM(zelda64::AnalogCamMode, {
{zelda64::AnalogCamMode::On, "On"},
{zelda64::AnalogCamMode::Off, "Off"}
});
AutosaveMode get_autosave_mode();
void set_autosave_mode(AutosaveMode mode);
AnalogCamMode get_analog_cam_mode();
void set_analog_cam_mode(AnalogCamMode mode);
};
#endif