Знают не многие, что введя в некоторые диалоги %s сервер просто крашится! Вот выход из такого положения:
Сразу после
PHP код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
Надо вставить:
PHP код:
if(strfind(inputtext,"%",true)!=-1)
{
new warnstr[256];
SendClientMessage(playerid,-1,"{FF0000}Вы забанены (причина: попытка краша сервера)");
BanEx(playerid, "Краш символами"); // Можо заменить на кик, или вообще убрать.
format(warnstr, 256, "{FF0000}Игрок %s был забанен (причина: попытка краша сервера)",PlayerName(playerid));
SendClientMessageToAll(-1, warnstr);
return 1;
}
PHP код:
if(strfind(inputtext,"%",true) != -1) return strdel(inputtext,0,strlen(inputtext));
PHP код:
for(new i; inputtext[i];i++)
if(inputtext[i]=='%')
inputtext[i] = '#';
PHP код:
for( new i = 0; (i = strfind(inputtext, "%", false, i)) != -1 ; ) {
inputtext[i++] = '#';
}