PDA

Просмотр полной версии : [Вопрос] Перевод команды



Smike#
27.05.2014, 14:42
Помогите от sscanf`a избавится

new params[2];
case D_ADMIN_KICK_REASON:
{
if(!response) return true;
if(sscanf(inputtext, "s[32]", params[0])) return SendClientMessage(playerid, -1, "Введите причину!"), ShowPlayerDialog(playerid, D_ADMIN_KICK_REASON, 1, " ", "Введите причину!", "Далее", "Отмена");
new text[64];
format(text, sizeof(text), "/kick %d %s", GetPVarInt(playerid, "SpecID"), params[0]);
OnPlayerCommandText(playerid, text);
return true;
}
case D_ADMIN_WARN_REASON:
{
if(!response) return true;
if(sscanf(inputtext, "s[32]", params[0])) return SendClientMessage(playerid, -1, "Введите причину!"), ShowPlayerDialog(playerid, D_ADMIN_WARN_REASON, 1, " ", "Введите причину", "Далее", "Отмена");
new text[64];
format(text, sizeof(text), "/warn %d %s", GetPVarInt(playerid, "SpecID"), params[0]);
OnPlayerCommandText(playerid, text);
return true;
}
case D_ADMIN_BAN_REASON:
{
if(!response) return true;
if(sscanf(inputtext, "s[32]", params[0])) return SendClientMessage(playerid, -1, "Введите причину!"), ShowPlayerDialog(playerid, D_ADMIN_BAN_REASON, 1, " ", "Введите причину", "Далее", "Отмена");
new text[64];
format(text, sizeof(text), "/ban %d %s", GetPVarInt(playerid, "SpecID"), params[0]);
OnPlayerCommandText(playerid, text);
return true;
}
case D_ADMIN_MUTE_TIME_REASON:
{
if(!response) return true;
if(sscanf(inputtext, "p<,>ds[32]", params[0], params[1])) return SendClientMessage(playerid, -1, "Введите причину!"), ShowPlayerDialog(playerid, D_ADMIN_MUTE_TIME_REASON, 1, " ", "Введите причину", "Далее", "Отмена");
new text[64];
format(text, sizeof(text), "/mute %d %d %s", GetPVarInt(playerid, "SpecID"), params[0], params[1]);
OnPlayerCommandText(playerid, text);
return true;
}

underwoker
27.05.2014, 14:56
Помогите перевести диалог

case 15000:
{
if(!response) return true;
if(!strval(inputtext)) return ShowPlayerDialog(playerid,10016,DIALOG_STYLE_INPUT,"Warn","Введите ид игрока которому хотите выдать предупреждение","Ок","Отмена");
new text[64];
format(text, sizeof(text), "/kick %d %s", GetPVarInt(playerid, "SpecID"), params[0]);
OnPlayerCommandText(playerid, text);
return true;
}
Шта?
В каком смысле перевести диалог?

Argument
27.05.2014, 20:35
#define D_ADMIN_MUTE_TIME_REASON_2 55555 //куда-нибудь в начало. ид диалога свой поставь
case D_ADMIN_KICK_REASON:
{
if(!response) return true;
if(!strlen(inputtext)) return SendClientMessage(playerid, -1, "Введите причину!"), ShowPlayerDialog(playerid, D_ADMIN_KICK_REASON, 1, " ", "Введите причину!", "Далее", "Отмена");
new text[64];
format(text, sizeof(text), "/kick %d %s", GetPVarInt(playerid, "SpecID"), inputtext);
OnPlayerCommandText(playerid, text);
return true;
}
case D_ADMIN_WARN_REASON:
{
if(!response) return true;
if(!strlen(inputtext)) return SendClientMessage(playerid, -1, "Введите причину!"), ShowPlayerDialog(playerid, D_ADMIN_WARN_REASON, 1, " ", "Введите причину", "Далее", "Отмена");
new text[64];
format(text, sizeof(text), "/warn %d %s", GetPVarInt(playerid, "SpecID"), inputtext);
OnPlayerCommandText(playerid, text);
return true;
}
case D_ADMIN_BAN_REASON:
{
if(!response) return true;
if(!strlen(inputtext)) return SendClientMessage(playerid, -1, "Введите причину!"), ShowPlayerDialog(playerid, D_ADMIN_BAN_REASON, 1, " ", "Введите причину", "Далее", "Отмена");
new text[64];
format(text, sizeof(text), "/ban %d %s", GetPVarInt(playerid, "SpecID"), inputtext);
OnPlayerCommandText(playerid, text);
return true;
}
case D_ADMIN_MUTE_TIME_REASON://сначала введем время мута
{
if(!response) return true;
if(!strval(inputtext)) return SendClientMessage(playerid, -1, "Введите время!"), ShowPlayerDialog(playerid, D_ADMIN_MUTE_TIME_REASON, 1, " ", "Введите время", "Далее", "Отмена");
SetPVarInt(playerid,"timE",strval(inputtext));
ShowPlayerDialog(playerid, D_ADMIN_MUTE_TIME_REASON_2, 1, " ", "Введите причину", "Далее", "Отмена");
return true;
}
case D_ADMIN_MUTE_TIME_REASON_2://потом причину
{
if(!response) return true;
if(!strlen(inputtext) return SendClientMessage(playerid, -1, "Введите причину!"), ShowPlayerDialog(playerid, D_ADMIN_MUTE_TIME_REASON_2, 1, " ", "Введите причину", "Далее", "Отмена");
new text[64];
format(text, sizeof(text), "/mute %d %d %s", GetPVarInt(playerid, "SpecID"), GetPVarInt(playerid, "timE"), inputtext);
OnPlayerCommandText(playerid, text);
return true;
}