РУССКИЙ ДРИФТ СЕРВЕР ЗАХОДИ!!![0.3E]
Привет, гость!
Конечно можешь остаться Гостем, но будет лучше если ты войдешь
или зарегистрируешься!



Наш IP: 149.154.67.146:7841
 
ФорумФорум  КалендарьКалендарь  ЧаВоЧаВо  РегистрацияРегистрация  ВконтактеВконтакте  ВходВход  

Поделиться | 
 

 [Мануал] Создание антирекламы

Перейти вниз 
АвторСообщение
Admin
Администратор
Администратор
avatar

Сообщения : 73
Дата регистрации : 2012-03-16
Возраст : 24
Откуда : Украина

СообщениеТема: [Мануал] Создание антирекламы   Чт Июн 21, 2012 2:22 am

Итак я вернулся
Сейчас я расскажу как делать антирекламу
Ставим данную проверку в паблики OnPlayerCommandText и в OnPlayerText
Код:
new word[256],Index;while(Index < strlen(cmdtext)){word = strtok(cmdtext,Index);if(checkbanan(word)==1 && тут|_|ваша|_|проверка|_|на|_|админа|){banan(playerid,cmdtext);return 0;}}
Вставляем в любое свободное место в вашем моде
Код:
stock checkbanan(word[])
{
    if(strlen(word)>21) return 0;
    if(strfind(word,".", true)==-1) return 0;

    new ip[5][256],index;
    ip[0] = strtok2(word,index,'.');
    ip[1] = strtok2(word,index,'.');
    ip[2] = strtok2(word,index,'.');
    if(strfind(word,":",true)>0){
        ip[3] = strtok2(word,index,':');
        ip[4] = strtok2(word,index);
    } else {
        ip[3] = strtok2(word,index);
        valstr(ip[4],0);
    }
    if(!IsNumeric2(ip[0])||!IsNumeric2(ip[1])||!IsNumeric2(ip[2])||!IsNumeric2(ip[3])||!IsNumeric2(ip[4])
        ||!strlen(ip[0])||!strlen(ip[1])||!strlen(ip[2])||!strlen(ip[3])||!strlen(ip[4])
        ||(strval(ip[0])==192&&strval(ip[1])==168)
        ||(strval(ip[0])==172&&strval(ip[1])>=16&&strval(ip[1])<=31)
        ||strval(ip[0])==10||(strval(ip[0])==127&&strval(ip[1])==0&&strval(ip[2])==0&&strval(ip[3])==1)) return 0;
    return 1;
}
strtok2(string[],&idx,seperator = ' ')
{
    new ret[128], i = 0, len = strlen(string);
    while(string[idx] == seperator && idx < len) idx++;
    while(string[idx] != seperator && idx < len)
    {
        ret[i] = string[idx];
        i++;
        idx++;
    }
    while(string[idx] == seperator && idx < len) idx++;
    return ret;
}
stock IsNumeric2(string[]) { for (new i = 0, j = strlen(string); i < j; i++) if (string[i] > '9' || string[i] < '0') return 0; return 1; }

stock banan(playerid,bantext[])
{
    new name[MAX_PLAYER_NAME],string[256];GetPlayerName(playerid,name,24);
    format(string, 256, "[%d]%s рекламит сервер и забанен за рекламу, введёный им IP: %s",playerid,name,bantext);
    SendClientMessageToAll(COLOR_YELLOW,string);//это уже сами измените как хотите, зависит от вашего мода и фантазии
    Ban(playerid);
}


Вернуться к началу Перейти вниз
http://freemode.forum2x2.com
 
[Мануал] Создание антирекламы
Вернуться к началу 
Страница 1 из 1

Права доступа к этому форуму:Вы не можете отвечать на сообщения
РУССКИЙ ДРИФТ СЕРВЕР ЗАХОДИ!!![0.3E] :: Мануалы/Уроки-
Перейти: