Воскресенье, 2017.08.20, 07:08На сайте Московское время

Навигация
Категории раздела
Мои статьи [33]
хакер [9]
IRC [21]
Секреты вконтакте [7]
Взлом IRC: [4]
Мини-чат

Наш опрос
Оцените мой сайт


Архив
Результаты
Всего голосовало: 25
Мы в контакте
Последние файлы
Статистика

Онлайн всего: 106
Гостей: 106
Пользователей: 0
Форма входа
Главная » Статьи » IRC

Массовое снятие банов:

Попросили у меня на днях скрипт, который будет баны снимать, при сплитах возникающие...
Я, чтобы побыстрее отмазаться (вроде и отказывать не хотелось и посылать),
написал примерно следующее:


on *:BAN:#: if (. isin $nick) mode $chan -b $banmask


Но когда я похвастался этим скриптом перед блэком,
он мне резонно заметил что баны бы хорошо снимать не по одному,
а по несколько, иначе будет такая ерундень как на хелпе.
Критика была мною воспринята и вот что я написал:


on *:RAWMODE:#: {
var %i = 0, %l = $len($1), %sign, %x, %param = 0
var %paramcount, %paramstr, %maxmode = $str(b,$modespl)
if ($pos($1,b,1) == $null) || (. !isin $nick) halt
:LOOP
inc %i
%x = $mid($1, %i, 1)
if (%x == $chr(43)) || (%x == $chr(45)) {
%sign = %x
goto LOOP
}
if (%x isin ebovalk) %param = %param + 1
if (%x == b) && (%sign == $chr(43)) {
%paramcount = %paramcount $+ b
%paramstr = %paramstr $gettok($2-, %param, 32)
}
if (%i >= %l) {
if (%paramstr) mode $chan - %paramcount %paramstr
halt
}
goto LOOP
}

В процессе отладки перезагрузился всего два раза.
Большое спасибо swatch за помощь в тестировании.

Категория: IRC | Просмотров: 174 | Добавил: [RePeRoK]|

HTML
BB-Code
Ссылка
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Кабинет

Гость !


шаблоны для ucoz
Гость, мы рады вас видеть. Пожалуйста зарегистрируйтесь или авторизуйтесь!
Поиск
Анекдоты
Топ файловиков
теги

Warircsu.at.ua © 2011< | Конструктор сайтов - uCoz Сайт оптимизирован под браузер FireFox Mozilla. SiteMap | SiteMap Forum.