2 #define SKINVECTOR(name,def) var vector SKIN##name = def
\r
3 #define SKINFLOAT(name,def) var float SKIN##name = def
\r
4 //#define SKINSTRING(name,def) const string SKIN##name = def
\r
5 #define SKINSTRING(name,def) var string SKIN##name = def
\r
7 #include "skin-customizables.inc"
\r
14 #define SKINBEGIN void Skin_ApplySetting(string key, string value) { switch(key) {
\r
15 #define SKINVECTOR(name,def) case #name: SKIN##name = stov(value); break
\r
16 #define SKINFLOAT(name,def) case #name: SKIN##name = stof(value); break
\r
17 //#define SKINSTRING(name,def) case #name: break
\r
18 #define SKINSTRING(name,def) case #name: SKIN##name = strzone(value); break
\r
19 // I know this leaks memory when skin is read multiple times. Screw it.
\r
20 #define SKINEND case "": break; case "//": break; default: print("Invalid key in skin file: ", key, "\n"); } }
\r
21 #include "skin-customizables.inc"
\r