diff options
Diffstat (limited to 'src/engine/config/config.cpp')
| -rw-r--r-- | src/engine/config/config.cpp | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/engine/config/config.cpp b/src/engine/config/config.cpp new file mode 100644 index 00000000..844158c1 --- /dev/null +++ b/src/engine/config/config.cpp @@ -0,0 +1,32 @@ +#include <baselib/system.h> + +#include <cstring> +#include <cstdio> + +#include "config.h" + +configuration config; + +void config_reset() +{ + #define MACRO_CONFIG_INT(name,def,min,max) config.name = def; + #define MACRO_CONFIG_STR(name,len,def) strncpy(config.name, def, len); + + #include "config_define.h" + + #undef MACRO_CONFIG_INT + #undef MACRO_CONFIG_STR + + puts("woaaa"); +} + +void config_load(const char *filename) +{ + dbg_msg("config/load", "loading %s", filename); +} + +#define MACRO_CONFIG_INT(name,def,min,max) void set_ ## name (configuration *c, int val) { if (val < min) val = min; if (max != 0 && val > max) val = max; c->name = val; } +#define MACRO_CONFIG_STR(name,len,def) void set_ ## name (configuration *c, char *str) { strncpy(c->name, def, len-1); c->name[sizeof(c->name)-1] = 0; } +#include "config_define.h" +#undef MACRO_CONFIG_INT +#undef MACRO_CONFIG_STR |