Имеется двумерный массив и диалоговое окно с вводом текста.
Игрок вводит текст в диалоговое окно.
Вопрос: как сделать сравнение текста (inputtext) с данными из массива
Имеется двумерный массив и диалоговое окно с вводом текста.
Игрок вводит текст в диалоговое окно.
Вопрос: как сделать сравнение текста (inputtext) с данными из массива
Все зависит от того, что вы хотите сравнить. Например, при сравнение двух строк вам потребуется функция strcmp. Следует помнить то, что это функция для сравнивания строк, а она, например, не подойдёт для сравнивания строк и числ. Тем не менее, строки можно конвертировать в числа, а числа, соответственно, в строки.
Пример (для чисел):
Пример (для строк):PHP код:
const SOME_LIMIT = 10;
new inputtext[] = "10";
// Для вещественных чисел требуется изменения тега у обоих элементов.
if (strval(inputtext) == SOME_LIMIT)
{
return true;
}
PHP код:
static const some_string[] = "pro-pawn.ru";
new inputtext[] = "pro-pawn.ru";
if (strcmp(some_string, inputtext) == 0)
{
return true;
}
Также при сравнении строк с помощью strcmp() стоит учесть, что функция вернёт 0 (якобы строки "равны"), если хоть одна из сравниваемых строк будет пустая.
PHP код:
static const some_string[] = "pro-pawn.ru";
if(!strlen(inputtext)) return SendClientMessage(playerid, -1, "Введите текст");
if(strcmp(some_string, inputtext) == 0)
{
return true;
}
Вы не поняли суть вопроса автора, а именно про: "имеется двумерный массив".
Вот пример:
PHP код:
static
some_messages[][144] = {
"hello world",
"good bye"
};
for (new i; i < sizeof(some_messages); i++) {
if (strcmp(inputtext, some_messages[i], true) == 0) {
// строки одинаковые
}
}
limon4eg (28.08.2016)
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)