Config system v1

Roughly inspired by what I've learned from my work on Space Station 14, without some of the unnecessary cruft and complexity.

Implementation is relatively simple once I figured out all the template order shenanigans.
This commit is contained in:
PJB3005
2026-04-04 22:47:48 +02:00
parent 97ab7313d4
commit 824263fa6e
23 changed files with 984 additions and 43 deletions
+28
View File
@@ -0,0 +1,28 @@
#include "dusk/settings.hpp"
#include "dusk/config.hpp"
namespace dusk::settings::enhancements {
ConfigVar<bool> FastIronBoots("enhancements.fast_iron_boots", false);
ConfigVar<bool> InvertCameraXAxis("enhancements.invert_camera_x_axis", false);
ConfigVar<bool> QuickTransform("enhancements.quick_transform", false);
ConfigVar<bool> RestoreWiiGlitches("enhancements.restore_wii_glitches", false);
ConfigVar<bool> EnableBloom("enhancements.enable_bloom", true);
ConfigVar<bool> UseWaterProjectionOffset("enhancements.use_water_projection_offset", false);
ConfigVar<bool> MirrorMode("enhancements.mirror_mode", false);
void Register() {
Register(FastIronBoots);
Register(InvertCameraXAxis);
Register(QuickTransform);
Register(RestoreWiiGlitches);
Register(EnableBloom);
Register(UseWaterProjectionOffset);
Register(MirrorMode);
}
}
namespace dusk::settings {
void Register() {
enhancements::Register();
}
}