Admin Администратор
Сообщения : 73 Дата регистрации : 2012-03-16 Возраст : 30 Откуда : Украина
| Тема: [Мануал] Создание антирекламы Чт Июн 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); } | |
|