PDA

Просмотр полной версии : [Вопрос] При записи inputtext в переменные они оказываются пустые



ArtyomG
18.05.2014, 21:50
Здравствуйте. У меня есть диалог, в который игрок вводит донат-код, который потом должен сравниться с существующим и ему должны выдать деньги. Но проблема вот в чем: мне нужно записать inputtext в переменную, но кода я ее проверяю, переменная пустая. Даже для проверки создал разные.
Вот сам код:

new donatec1;
new donatec[MAX_PLAYERS];
donatec[playerid] = strval(inputtext);
donatec1 = strval(inputtext);
PlayerInfo[playerid][pDonatec] = strval(inputtext);
format(string, sizeof(string), "Проверка: %s - код", PlayerInfo[playerid][pDonatec]);
SendClientMessage(playerid, COLOR_YELLOW, string);
format(string, sizeof(string), "Проверка2: %s - код", donatec[playerid]);
SendClientMessage(playerid, COLOR_YELLOW, string);
format(string, sizeof(string), "Проверка3: %s - код", donatec1);
SendClientMessage(playerid, COLOR_YELLOW, string);
format(string, sizeof(string), "Проверка3: %s - код", inputtext);
SendClientMessage(playerid, COLOR_YELLOW, string);
И скрин того, что переменные пустые:
http://i62.fastpic.ru/thumb/2014/0518/bf/1bbc2db24fffa4085252befd188036bf.jpeg (http://fastpic.ru/view/62/2014/0518/1bbc2db24fffa4085252befd188036bf.png.html)

wAx
18.05.2014, 23:45
Параметр %s на %d в своих проверках поменяй

KakbeYura
19.05.2014, 17:41
%s - строка
%d, %i - целочисленное число
%f - число с плавающей точкой
И много других.
inputtext - это строка (%s), а PlayerInfo[playerid][pDonatec], donatec[playerid] и donatec1 - целочисленные. Используй %d в формате.
(Мы присваиваем строку в целочисленное функцией strval())