Уважаемы пользователи форума, у меня возникла проблема с определением наличия запятой между двух параметров. Я делаю сохранения тюнинга, вырезал покраску авто с другого мода(Old RP), так вот в диалоге нужно ввести 2 цвета через запятую для покраски авто. Если ввести 2 числа через пробел, а не запятую, то код так же пропускает. Вот код:
Уважаемый гость, если у Вас возникли проблемы с регистрацией, просьба обратиться в тех.поддержку или на почту admin@pawno-crmp.ru
Для полного доступа ко всем функциям форума, Вам необходимо зарегистрироваться и авторизоваться.
Для полного доступа ко всем функциям форума, Вам необходимо зарегистрироваться и авторизоваться.
Определение наличия разделителя через sscanf
Автор
Real_User
, 27 мая 2017 00:17
Лучший Ответ Doberman , 28 Май 2017 - 19:51
case dialog_GOPCAR1:
{
if(!response)
return ShowMenuForPlayer (ModMenuMain, playerid);
new tempCarID = GetPlayerVehicleID(playerid);
printf("%s", inputtext);
if(sscanf(inputtext, "p<,>dd",color[0], color[1]))
{
printf("Код №1 вызван. %d, %d", color[0], color[1]);
return ShowPlayerDialogFix(playerid, dialog_GOPCAR1, DIALOG_STYLE_INPUT, "Маляр Антон", "Введите Основной и дополнительный цвет транспорта через запятую", "Принять", "Назад");
}
if(color[0] < 0 || color[0] > 252)
{
ShowPlayerDialog(playerid, dialog_GOPCAR1, DIALOG_STYLE_INPUT, "Маляр Антон", "Введите Основной и дополнительный цвет транспорта через запятую", "Назад", "Принять");
return SendClientMessage(playerid, COLOR_GRAY, "ID цвета от 0 до 252!");
}
if(color[1] < 0 || color[1] > 252)
{
ShowPlayerDialogFix(playerid, dialog_GOPCAR1, DIALOG_STYLE_INPUT, "Маляр Антон", "Введите Основной и дополнительный цвет транспорта через запятую", "Назад", "Принять");
return SendClientMessage(playerid, COLOR_GRAY, "ID цвета от 0 до 252!");
}
if(get_player_money(playerid) < 1001) return SendClientMessage(playerid, COLOR_WARNING, "Недостаточно средств!");
give_player_money(playerid,-1000,"#3");
ChangeVehicleColor(tempCarID, color[0], color[1]);
PLAYER_DATA[playerid][data_CAR_COLOR1][tempCarID] = color[0];
PLAYER_DATA[playerid][data_CAR_COLOR2][tempCarID] = color[1];
DeletePVar(playerid,"GOP_ROW");
SendClientMessage(playerid,COLOR_GREEN,"Вы успешно перекрасили свое авто!");
ShowMenuForPlayer(ModMenuMain, playerid);
Перейти к сообщению »
#1
offline
Отправлено 27 Май 2017 - 00:17
offline
#2
online
Отправлено 27 Май 2017 - 09:23
online
#3
offline
Отправлено 27 Май 2017 - 17:05
offline
Elrmrnt-Kritik, так тоже не работает
#5
offline
Отправлено 27 Май 2017 - 18:23
offline
#7
offline
Отправлено 27 Май 2017 - 23:39
offline
#9
offline
Отправлено 28 Май 2017 - 00:49
offline
#10
offline
Отправлено 28 Май 2017 - 19:51
offline
✓ Лучший Ответ
Сообщение отредактировал Doberman: 28 Май 2017 - 20:27
#11
offline
Отправлено 28 Май 2017 - 22:32
offline
Спасибо, проблему с масивом решил
А вот при вводе пробела вместо разделителя все так же код срабатывает
Сообщение отредактировал Elrmrnt-Kritik: 28 Май 2017 - 22:39


Тема закрыта
Сообщений: 14
Регистрация:
Skype: v.l.a.d.65