Quote:
Originally Posted by DJ Tsunami
I don't know, works fine for me:
PHP Code:
char filePath[PLATFORM_MAX_PATH + 1];
char scoreTag[MAXPLAYERS + 1][64];
char chatColor[MAXPLAYERS + 1][64];
char nameColor[MAXPLAYERS + 1][64];
public void OnPluginStart()
{
BuildPath(Path_SM, filePath, sizeof(filePath), "configs/viptags.cfg");
CheckForKeyValues(1, "STEAM_0:1:2");
}
void CheckForKeyValues(int client, char[] steamID)
{
KeyValues kv = new KeyValues("VIPTags");
kv.ImportFromFile(filePath);
kv.JumpToKey(steamID, true);
kv.GetString("scoretag", scoreTag[client], sizeof(scoreTag[]));
kv.GetString("chatcolor", chatColor[client], sizeof(chatColor[]));
kv.GetString("namecolor", nameColor[client], sizeof(nameColor[]));
if (StrEqual(scoreTag[client], "") && StrEqual(chatColor[client], "") && StrEqual(nameColor[client], ""))
{
kv.SetString("scoretag", "-change-");
kv.SetString("chatcolor", "-change-");
kv.SetString("namecolor", "-change-");
kv.Rewind();
kv.ExportToFile(filePath);
}
delete kv;
}
Output:
Code:
"VIPTags"
{
"STEAM_0:1:2"
{
"scoretag" "-change-"
"chatcolor" "-change-"
"namecolor" "-change-"
}
}
|
Thanks for the reply. Also tried your code and worked as well. I have modified my code and it worked.
The current source is:
PHP Code:
void CheckForKeyValues(int client, char[] steamID)
{
KeyValues kv = new KeyValues("VIPTags");
kv.ImportFromFile(filePath);
kv.JumpToKey(steamID, true);
KvGetString(kv, "scoretag", scoreTag[client], sizeof(scoreTag[]));
KvGetString(kv, "chatcolor", chatColor[client], sizeof(chatColor[]));
KvGetString(kv, "namecolor", nameColor[client], sizeof(nameColor[]));
if(StrEqual(scoreTag[client], "") && StrEqual(chatColor[client], "") && StrEqual(nameColor[client], ""))
{
KvSetString(kv, "scoretag", "-change-");
KvSetString(kv, "chatcolor", "-change-");
KvSetString(kv, "namecolor", "-change-");
kv.Rewind();
kv.ExportToFile(filePath);
delete kv;
return;
}
delete kv;
return;
}
I don't think it was the if statement because it was returning true. What I think that was the issue was the KVGoToFirstSubKey(kv);. I think I shouldn't use that if I'm on the main tree.
Thanks for your help!
__________________