Доброго времени суток!
Не подскажете ли Вы, как можно вывести ошибку о том, что размер текста превышает лимит?
Есть команда:
PHP код:
CMD:vad(playerid, params[])
{
if(uInfo[playerid][pDRInections] > 0 || uInfo[playerid][uLeader] > 0)
{
if(uInfo[playerid][pMuted] == 1) return ShowTextMute(playerid);
if(uInfo[playerid][pPnumber] == 0) return ShowTextError(playerid, "Вы не приобрели номер для телефона.");
if(GetPVarInt(playerid, "takephone")) return ShowTextError(playerid, "Ваш телефон забрали.");
new text[60];
if(sscanf(params, "s[60]", text)) return ShowTextTip(playerid, "Введите: /vad [текст].");
if(strlen(text) > sizeof(text)) return ShowTextError(playerid, "Вы ввели слишком длинный текст. Сократите его.");
//if(GetPVarInt(playerid, "AntiFloodVad") > gettime()) return ShowTextError(playerid, "Писать VIP объявления можно один раз в минуту.");
if(!Reklama(playerid, params[0], "/vad")) return 1;
new string[68+60+MAX_PLAYER_NAME+6+1];
format(string, sizeof(string), "VIP объявление | {ffdb99}%s {ffa500}| {ffdb99}Отправитель: %s[%d] (тел.: %d)", params[0], nickname(playerid), playerid, uInfo[playerid][pPnumber]);
SendClientMessageToAll(C_ORANGE, string);
SetPVarInt(playerid, "AntiFloodVad", gettime() + 60);
}
else ShowTextError(playerid, "Вы не обладаете бронзовой VIP привилегией / не являетесь лидером.");
return true;
}
Я пытался уже по-разному поставить проверку. Остановился пока что на этом пункте.
PHP код:
if(strlen(text) > sizeof(text)) return ShowTextError(playerid, "Вы ввели слишком длинный текст. Сократите его.");
Если сообщение длиннее 60, хоть на пару символов, то ничего не происходит. Команда как бы срабатывает, как бы и нет. Ошибка не хочет выводиться.