mirror of
https://github.com/BanjoRecomp/BanjoRecomp
synced 2026-06-07 19:31:26 -04:00
d26d18b373
* Added recompui::IconButton * Remove zelda themed input mapping visualization * update toggle * grayscale overlay colors * recompui::theme namespace + border constants * added ui_binding_button element * Initial support for multiple controllers. (#3) * Support for multiple controllers. * Fix default bindings. * Backwards compatibility with controls from previous version. * WIP code driven input mapping and player assignment * button press anims & temp reassignment state when opening assignment modal * set base opacity for disable state getting re-enabled * generic PlayerCard for both main Controls and assignment modal * wip ui_select recompui component * Add Input Profiles. (#4) * Add Input Profiles. * Add capability of setting custom profiles. * Remove leftover early return. * button sizes and annotation update * flex wrap and context root being assets * controls page multi vs single views * ability to reparent elements * ability to rotate elements * added functional caret to Select component * smaller edit profile button * select fixes and player profile assignment * pointer events property support and apply ptr events None to select arrow svg * init mp kb mappings to be unmapped * wire up selected profile's bindings * reimplement binding system in new menu * clear and reset input bindings implemented * remove deprecated controls panel * changes up to swapping to recompfrontend library * switch ui/input to be using recompfrontend library (unfinished) * register main font with recompui * Changes for recompui built in default scss * launcher + custom background * update modern runtime for recompui * Update N64ModernRuntime for recompui config changes * Added RecordSpinner icon * Added PlusKeyboard icon * remove sass and rml * single player + theme update * Delete Rmlui and lunasvg from being dependencies. * Update recomp frontend commit. * Remove lunasvg and rmlui submodules. * Update recomp frontend. * Move findfreetype. * Remove freetype windows binaries. * More updates. * Update frontend. * It builds. * Update frontend. * Update runtime and frontend. * Update frontend and RT64. * Get rid of SDL2 path from recomp frontend. * Update runtime and frontend and fix link order to fix Linux building * Update frontend and remove gyro and mouse sensitivity options * Update frontend to fix open menu button on controllers --------- Co-authored-by: thecozies <79979276+thecozies@users.noreply.github.com> Co-authored-by: Mr-Wiseguy <mrwiseguyromhacking@gmail.com>
71 lines
1.7 KiB
C++
71 lines
1.7 KiB
C++
#ifndef __BANJO_CONFIG_H__
|
|
#define __BANJO_CONFIG_H__
|
|
|
|
#include <filesystem>
|
|
#include <string>
|
|
#include <string_view>
|
|
|
|
#include "json/json.hpp"
|
|
|
|
namespace banjo {
|
|
inline const std::u8string program_id = u8"BanjoRecompiled";
|
|
inline const std::string program_name = "Banjo: Recompiled";
|
|
|
|
namespace configkeys {
|
|
namespace general {
|
|
inline const std::string note_saving_mode = "note_saving_mode";
|
|
inline const std::string camera_invert_mode = "camera_invert_mode";
|
|
inline const std::string analog_cam_mode = "analog_cam_mode";
|
|
inline const std::string analog_camera_invert_mode = "analog_camera_invert_mode";
|
|
}
|
|
|
|
namespace sound {
|
|
inline const std::string bgm_volume = "bgm_volume";
|
|
}
|
|
}
|
|
|
|
// TODO: Move loading configs to the runtime once we have a way to allow per-project customization.
|
|
void init_config();
|
|
|
|
enum class CameraInvertMode {
|
|
InvertNone,
|
|
InvertX,
|
|
InvertY,
|
|
InvertBoth
|
|
};
|
|
|
|
CameraInvertMode get_camera_invert_mode();
|
|
|
|
CameraInvertMode get_analog_camera_invert_mode();
|
|
|
|
enum class AnalogCamMode {
|
|
On,
|
|
Off,
|
|
OptionCount
|
|
};
|
|
|
|
NLOHMANN_JSON_SERIALIZE_ENUM(banjo::AnalogCamMode, {
|
|
{banjo::AnalogCamMode::On, "On"},
|
|
{banjo::AnalogCamMode::Off, "Off"}
|
|
});
|
|
|
|
AnalogCamMode get_analog_cam_mode();
|
|
|
|
enum class NoteSavingMode {
|
|
On,
|
|
Off,
|
|
OptionCount
|
|
};
|
|
|
|
NLOHMANN_JSON_SERIALIZE_ENUM(banjo::NoteSavingMode, {
|
|
{banjo::NoteSavingMode::On, "On"},
|
|
{banjo::NoteSavingMode::Off, "Off"}
|
|
});
|
|
|
|
NoteSavingMode get_note_saving_mode();
|
|
|
|
void open_quit_game_prompt();
|
|
};
|
|
|
|
#endif
|