Просмотр полной версии : [Вопрос] DC_CMD
Vano_Glad
16.02.2016, 13:28
Всем привет. Хочу узнать, как же сделать раздельную команду на DC_CMD? К примеру /buy money
Desulaid
16.02.2016, 13:46
strcmp
Vano_Glad
16.02.2016, 14:07
Про неё я знаю. А других вариантов нет? Если нет, то придется юзать её :)
Можно ещё использовать sscanf, например, он удобный.
Как-то так
CMD:buy(playerid, params[])
{
new cmd_text[30],
value;
sscanf(params, "si", cmd_text, value);
if(!strcmp(cmd_text, "money", true))
{
if(!value) return SendClientMessage(playerid, 0xFF0000FF, "Ошибка: {FFFFFF}/buy money [значение]");
SendClientMessage(playerid, -1, "I want money");
}
else if(!strcmp(cmd_text, "power", true))
{
//У данного параметра не нужно вводить значение, поэтому проверку не ставим
SendClientMessage(playerid, -1, "And all your power");
}
else if(!strcmp(cmd_text, "glory", true))
{
if(!value) return SendClientMessage(playerid, 0xFF0000FF, "Ошибка: {FFFFFF}/buy glory [значение]");
SendClientMessage(playerid, -1, "All your glory");
}
else return SendClientMessage(playerid, 0xFF0000FF, "Ошибка: {FFFFFF}/buy [money/power/glory]");
return 1;
}
Vano_Glad
16.02.2016, 14:17
Как-то так
CMD:buy(playerid, params[])
{
new cmd_text[30],
value;
sscanf(params, "si", cmd_text, value);
if(!strcmp(cmd_text, "money", true))
{
if(!value) return SendClientMessage(playerid, 0xFF0000FF, "Ошибка: {FFFFFF}/buy money [значение]");
SendClientMessage(playerid, -1, "I want money");
}
else if(!strcmp(cmd_text, "power", true))
{
//У данного параметра не нужно вводить значение, поэтому проверку не ставим
SendClientMessage(playerid, -1, "And all your power");
}
else if(!strcmp(cmd_text, "glory", true))
{
if(!value) return SendClientMessage(playerid, 0xFF0000FF, "Ошибка: {FFFFFF}/buy glory [значение]");
SendClientMessage(playerid, -1, "All your glory");
}
else return SendClientMessage(playerid, 0xFF0000FF, "Ошибка: {FFFFFF}/buy [money/power/glory]");
return 1;
}
Как работает эта функция - я знаю :) Но спасибо за труды. Ладно буду юзать её. Гляну что еще со sscanf можно поделать. Всем спасибо :)
Как работает эта функция - я знаю :) Но спасибо за труды. Ладно буду юзать её. Гляну что еще со sscanf можно поделать. Всем спасибо :)
Эмм, тут и используется sscanf.
Vano_Glad
16.02.2016, 14:58
DeimoS
Не заметил )
Powered by vBulletin® Version 4.2.0 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot