//***************************************************************************** // // mud.c // // a bunch of variables and settings associated with the functioning, limits, // and such of the MUD. // //***************************************************************************** #include "mud.h" #include "utils.h" #include "storage.h" //***************************************************************************** // local defines, variables, and datastructures //***************************************************************************** // // the file where we store all of our mud settings #define MUD_DATA "../lib/muddata" // // our storage set of mud settings STORAGE_SET *settings = NULL; //***************************************************************************** // implementation of functions in mud.h //***************************************************************************** void init_mud_settings() { settings = storage_read(MUD_DATA); // make sure we have initial values for some stuff if(!*mudsettingGetString("start_room")) mudsettingSetString("start_room", DFLT_START_ROOM); if(mudsettingGetInt("pulses_per_second") == 0) mudsettingSetInt("pulses_per_second", DFLT_PULSES_PER_SECOND); } void mudsettingSetString(const char *key, const char *val) { store_string(settings, key, val); storage_write(settings, MUD_DATA); } void mudsettingSetDouble(const char *key, double val) { store_double(settings, key, val); storage_write(settings, MUD_DATA); } void mudsettingSetInt(const char *key, int val) { store_int(settings, key, val); storage_write(settings, MUD_DATA); } void mudsettingSetLong(const char *key, long val) { store_long(settings, key, val); storage_write(settings, MUD_DATA); } void mudsettingSetBool(const char *key, bool val) { store_bool(settings, key, val); storage_write(settings, MUD_DATA); } const char *mudsettingGetString(const char *key) { return read_string(settings, key); } double mudsettingGetDouble(const char *key) { return read_double(settings, key); } int mudsettingGetInt(const char *key) { return read_int(settings, key); } long mudsettingGetLong(const char *key) { return read_long(settings, key); } bool mudsettingGetBool(const char *key) { return read_bool(settings, key); }