KiKiEEKi
🏆 🥇
- Сообщения
- 653
- Реакции
- 513
Здравствуйте, подскажите пожалуйста как из файла сравнивать значение по ключу и выводить значение из второго файла?
Идея такова, игрок пишет в чат слово, записываем в переменную text, сравниваем text и text2 если true то выводим текст из второго файла. Надо как то в text2 засунуть переменную а не ключ, а то получается что я сравниваю по ключу.
То что смог сделать с помощью поиска
Идея такова, игрок пишет в чат слово, записываем в переменную text, сравниваем text и text2 если true то выводим текст из второго файла. Надо как то в text2 засунуть переменную а не ключ, а то получается что я сравниваю по ключу.
То что смог сделать с помощью поиска

Код:
public OnPluginStart()
{
HookEvent("player_say", OSChatBot);
}
void OSChatBot(Event sChat, const char[] sName, bool dontBroadcast)
{
char sText[256];
char sVopros[256];
char szPath[256];
char szBuffer[256];
int iClient = GetClientOfUserId(sChat.GetInt("userid")); // Получаем индекс игрока
GetEventString(sChat, "text", sText, sizeof(sText)); // Ловим строку, написанную игроком в чат и записываем в sText
BuildPath(Path_SM, szPath, sizeof(szPath), "data/vopros.ini"); // Формируем путь к файлу
KeyValues hKeyValues = new KeyValues("Vopros");
if (hKeyValues.ImportFromFile(szPath)) // Загружаем из файла
{
hKeyValues.GetString("%s", sText, sizeof(sText)); // Получает строку по ключу
FormatEx(sVopros, sizeof(sVopros), "1", szBuffer); // Пишешь свою строку, которую хочешь поймать, она записывается в sVopros
if (StrEqual(sText, sVopros, true)) // Сравниваем 2 строки (sText и sVopros)
{
PrintToChat(iClient, "hello"); // Если они равны, то пишем, что равны
}
else
{
PrintToChat(iClient, "ERROR"); // Если не равны, то пишем, что не равны
}
}
}