26.05.2018, 20:11
Quote:
Extra functions created by me for extract value from one key in Y_INI:
Код:
// Global variables enum { INT, FLOAT, STRING } new key_name[50], key_type, key_value_int, Float:key_value_float, key_value_str[128]; stock INI_GetInt(filename[], key[], &variable) { INI_ParseFile(filename, "LoadOnlyKey", .bExtra = true, .bLocal = true); format(key_name, sizeof key_name, "%s", key); key_type = INT; variable = key_value_int; } stock INI_GetFloat(filename[], key[], &Float:variable) { INI_ParseFile(filename, "LoadOnlyKey", .bExtra = true, .bLocal = true); format(key_name, sizeof key_name, "%s", key); key_type = FLOAT; variable = key_value_float; } stock INI_GetString(filename[], key[], variable[]) { INI_ParseFile(filename, "LoadOnlyKey", .bExtra = true, .bLocal = true); format(key_name, sizeof key_name, "%s", key); key_type = STRING; format(variable, sizeof variable, "%s", key_value_float); } forward LoadOnlyKey(name[], value[]) {} public LoadOnlyKey(name[], value[]) { switch(key_type) { case STRING: INI_String(key_name, key_value_str, sizeof key_value_str); case FLOAT: INI_Float(key_name, key_value_float); case INT: INI_Int(key_name, key_value_int); } return true; } |