ON *:START: { var %h = BADNICK var %f = $mircdirdata\ $+ %h $+ .list if (!$file(%f)) { return } hmake %h 5000 hload %h $qt(%f) } menu status,channel,query { BN SQLINE CONNECT .On:.enable #bnsqline | .echo -a 4* BNICK-SQLINE ON * .Off:.disable #bnsqline | .echo -a 4* BNICK-SQLINE OFF * } alias addbn { tokenize 32 $strip($1-) var %h = BADNICK var %d = $hfind(%h,$1,0,W).data if (!$1) { echo 4 -gate Error: Please specify a parameter! | return } if (%d) { echo 4 -gate Error: Already exists $qt($1) in %h list! | return } hadd -m %h $ctime $1 hsave %h $qt($mircdirdata\ $+ %h $+ .list) echo 3 -gate Added $qt($1) in the %h list. - Total: $hget(%h,0).item } alias delbn { tokenize 32 $strip($1-) var %h = BADNICK var %d = $hfind(%h,$1,1,W).data if (!$1) { echo 4 -gate Error: Please specify a parameter! | return } if (!%d) { echo 4 -gate Error: Not exists $qt($1) on the %h list! | return } hdel %h %d hsave %h $qt($mircdirdata\ $+ %h $+ .list) echo 3 -gate Removed $qt($1) from the %h list. - Total: $hget(%h,0).item } alias listbn { var %h = BADNICK var %t = $hget(%h,0).item if (!%t) { echo 4 -gate Error: %h list is empty! | return } echo 10 -gate Display all %h list.. var %i = 1 while (%i <= %t) { var %item = $hget(%h,%i).item var %data = $hget(%h,%item) if (%item) && (%data) { echo 6 -gate $+($chr(35),%i,:) %data - Added on: $asctime(%item) } inc %i } echo 10 -gate End of %h list. } #bnsqline off ON *:SNOTICE:*Client connecting*: { var %h = BADNICK if ($hfind(%h,$4,1,W).data) { var %match = 1 | os sqline add +30m $4 4N41drysho 4E41mrin 4D41he 4J41eni 4T41e 4M41irepritur 4P41erseri... } if ($check_nick_chars($4)) { var %match = 1 | os sqline add +30m $4 4N41drysho 4E41mrin 4D41he 4J41eni 4T41e 4M41irepritur 4P41erseri... } if (%match) { window -e @SQLINES echo -t @SQLINES 10-- 3Client 4SQLINED 10connecting 4 $4 5 $+ $5 4 $+ $6 } } ON !*:NICK:{ var %h = BADNICK if ($hfind(%h,$newnick,1,W).data) { var %match = 1 | os sqline add +30m $newnick 4N41drysho 4E41mrin 4D41he 4J41eni 4T41e 4M41irepritur 4P41erseri... } if ($check_nick_chars($newnick)) { var %match = 1 | os sqline add +30m $newnick  4N41drysho 4E41mrin 4D41he 4J41eni 4T41e 4M41irepritur 4P41erseri... } if (%match) { window -e @SQLINES echo -t @SQLINES 10-- 7Client 4SQLINED 10nickchange with newnickname:7 $newnick old nickname was4 $nick with address5 $address($newnick,2) } } #bnsqline end alias check_nick_chars { if (!$1) { return } var %regex = \-~!@#$%^&*()_+\|;:'",<.>/?{}=\][ if ($regex($1,/([ %regex ])/gS)) { var %chars = $regml(0) } if (%chars >= 2) && ($len($1) >= 18) { return 1 } var %t = $mid($1,0,0) var %i = 1 while (%i <= %t) { var %n = $mid($1,%i,1) if ($count($1,%n) >= 2) && (%n isin %regex) { return 1 } inc %i } return 0 }