Нов SPAM бот
Нов SPAM бот
bliznak Се работи за бот, за кој сеуште не се знае кој вид е, и која верзија..
Само знам дека работи доста ефективно.

Влегува на канал, праќа mass msg со spam содржина, и излегува од канал. Заприметив дека обично користи nickname од типот на: oFEfesA, QrTTfv, GrrSz, односно некоја рандом комбинација од (a,z).

Не е нешто посебно да се направи, но највероватно е направен и да се шири, со оглед на тоа што од различни IP се појавува на канал.

По се изгледа, најдобро решение е +r, али тоа оди на сметка од другите корисници кои немаат cservice user.

DonVito Za Baniranje Na Spambotovite Mozete Da Koristete Slednava Skripta On *:TEXT:*www.rusiansex*:?: { unset %infected :gogo inc %infected set %inf.chan $comchan($nick,%infected) if (%inf.chan == $null) { goto end } if ($me isop %inf.chan) { kick %inf.chan $nick You spreading a v|rus!Detected spam word *www*.Please write /remote off.Or go to #vh channel,and tell for this problems.Thank You. mode %inf.chan +b $address($nick,9) kick %inf.chan $nick Infected with IRC virus - No Rejoin! } goto gogo :end }
DonVito A Kako sto kaza bliznak spambotot se shirit primetiv deka imat i nasi makedonski ip adresi (62.162.*) zarazeni.
bliznak За обичните корисници, кои не сакаат некој нонстоп да им 'досадува' со оваа спам порака: on *:text:*rusiansex*:? { ignore $nick 2 closemsg $nick } Значи, го копирате кодов, потоа alt+R, File -> New, пастирате во новиот фајл и притиснете OK. Скриптата е тогаш лоадирана.
Mr-Hyde DonVito:ovoj addons ti bese daden za baniranje na useri koi davaa spam poraki na private kako //write , fotos ,pictures .i.t.n.Vo ovoj slucaj ovoj spam ne mozes da go resis na ovoj nacin poradi pricina sto nickot koj dava spam na private voopste go nema na kanal..Spamot se dava na toj nacin sto tie izbiraat kanali na koi sto ima poveke useri.znaci vleguvaat pravat scan na site nickovi i davat part..Sciptata avtomatski pravi inviter...Mislam deka imase eden inviter takov..Se vikase JiInviter..Taka nsto.za sprecuvanje na takov spam edinstveno nesto e Blacklista.So toa sto ke se spreci scan na kanal.. Pozdrav od mene.. Bye bye..
bliznak Mr-Hyde, дискутираме за ботот кој влегува на канал, праќа масовна порака на повеќе од јузерите на канал, и партнува од каналот. Доколку би пратил порака на некој од операторите, тогаш адонот што ни го кажа донвито, ќе резултира со бан на тој бот.(без разлика дали е на канал или не). Ако е на канал, ќе биде кикнат и баниран, ако веќе партнал, само ќе биде стаен бан на таа адреса. А за тој бот ти шо кажвиш, дека праќа СПАМ а не е на канал, се работи за 2 вида спам, односно 2 различни бота. Првиот вид, се фактички 2 бота: Едниот бот е секогаш присутен на канал, и при секое влегување на некој јузер, му праќа порака на другиот бот дека на канал влегол 'БЛА БЛА БЛА', a другиот си седи на статус или на било кој друг канал и после примената информација од првиот бот, праќа СПАМ порака на јузерот кој влегол на канал. ОД ова моментално нема спас. Вториот вид, највероватно работи на принцип нешто слично како notify листата. Се конектираш и одма ти стигнува СПАМ порака, а уште не си влезен на канал... Не сум запознает со овај вид на спам бот.. Исто и од ова нема спас.
Mr-Hyde Bliznak:ke probam so ovaa rabota da se pozanimavam..Da vidam od kade doaga i eventualno nekoe resenie.[:D].Sepak mislam deka ovoj spam go ima premnogu na Undernet. Sepak mislam deka ovoj addons sto ke vi go dadam ne e los za onie dronovi koi gi ima na kanal a sakate da gi trgnete po brza postapka(se nadevam ke vi se dopadne) dokolku go stavite addonsot vo nekoj "Bot" ------------------------------------------------------------ on *:text:.*drone*:#:{ if ($2 != $null) { if (($nick isop $chan) && ($2 != $me)) { ban # $2 9 | kick # $2 Requested by $nick : Banned-Sending onjoin ads to the channel guests, probably due to the virus infection.Detected infected client.Please write /remote off.Or go to #vh channel,and tell for this problems.Thank.You (Nick: $2 ) } } Sakam da se nadovrzam deka ne e permban! Sepak mislam deka ne e losa ideja ;) Bye Bye,,,
bliznak
quote:
Originally posted by Mr-Hyde ... on *:text:.*drone*:#:{ if ($2 != $null) { if (($nick isop $chan) && ($2 != $me)) { ...
Znaci, da prevedime. Ako bilo koj napise teks so sodrzina .*drone* na aktivniot kanal togash ....ako vtioriot zbor vo tekstot ne e ednakov na nishto togash ....ako nikot shto prakja poraka e operator na kanalot i vo isto vreme vtioriot zbor vo tekstot ne e ednakov na mojot momentalen nick togash bla bla bla ova e celosno pogreshen kod[:D] sepak fala za trudot[:)]
Mr-Hyde Bliznak:moze da mi objasnis zosto e pogresen kod?A toa sto go prevedi so tvo zborovi nema veza..so samata komanda .drone(nick) addonsot reagira so komandata .t.e.ne moze ovaa komanda da ja koristi nick koj ne e operator(@),i znaci deka ne moze samiot bot da se banira sam..A toa sto rece deka e celosno pogreshen kod ne te razbiram..Ke moze kratko objasnuvanje kade mi e greskata?
Acid Може ли некој да ми даде /whois информација на барем 2 од овие „новиве“ ботови?
Mr-Hyde (oeuMqiy): www.rusiansex.com *** oeuMqiy is [email protected] *** oeuMqiy is «laQaUDwg» *** oeuMqiy on *.undernet.org eve eden sega za sega :)
bliznak
quote:
Originally posted by Mr-Hyde
Bliznak:moze da mi objasnis zosto e pogresen kod?A toa sto go prevedi so tvo zborovi nema veza..so samata komanda .drone(nick) addonsot reagira so komandata .t.e.ne moze ovaa komanda da ja koristi nick koj ne e operator(@),i znaci deka ne moze samiot bot da se banira sam..A toa sto rece deka e celosno pogreshen kod ne te razbiram..Ke moze kratko objasnuvanje kade mi e greskata?
loairaj go adonot, i testiraj go na nekoj kanal. kje zabelezish i samiot deka apsolutno nema da ima nikakva reakcija.
bliznak
quote:
Originally posted by Acid
Може ли некој да ми даде /whois информација на барем 2 од овие „новиве“ ботови?
gi ima vo izobilstvo na #macedonia ... non stop pravat, join/part i imaat nikovi od tipot na QeeRT, EdsERr, GGHYuu, znaci (bez veze nick)...
Mr-Hyde Bliznak moze na pvt na mIRc pa da probame?ke videme koj e vo pravo koj ne..Sakas?Sumjash vo moja izrabotka? ;)..Javi se na pvt nick:Mr-Hyde Bye Bye..
`Xa0c Mr-Hyde mislim deka bliznak e vo pravo...ne toa sto kodot e pogresen tuku e sosema nepotreben.Velis..nickot sto ja dava komandata mora da e operator na kanalot,taka da ne mora da pisuva .drone (nick) tuku moze da dade ednostaven ban..
Mr-Hyde `XaOc:toa bese kako primer vo vrska so infected client~btv..ne rekov deka mora da go stavat toa.:D ..Ako ima nekoj podobar kod vo vrska so toa neka poveli..Se ucam na greski;).Pozdrav
bliznak ево повели[:)] on *:text:*SPAM-TEXT*:? { ignore $nick 2 closemsg $nick set %cnum 0 :repeat_ban inc %cnum set %chan $comchan($nick,%cnum) if (%chan == $null) { halt } if ($me ison %chan) && ($me isop %chan) { mode %chan +b $address($nick,2) | kick %chan $nick infected. } else { goto repeat_ban } } p.s Ова важи за спамерите кои ти се јавуваат на PVT.
bliznak on *:text:*www.*:#:{ set %spamchan $chan set %spamnick $nick if ($nick isop $chan) { halt } else if ($nick isvo $chan) { halt } else { finban } } on *:text:*http:*:#:{ set %spamchan $chan set %spamnick $nick if ($nick isop $chan) { halt } else if ($nick isvo $chan) { halt } else { finban } } on *:text:*#*:#:{ set %spamchan $chan set %spamnick $nick if ($nick isop $chan) { halt } else if ($nick isvo $chan) { halt } else { finban } } Alias finban { mode %spamchan +b $address(%spamnick,2) kick %spamchan %spamnick (spamming not allowed) } Ова ти е за спамерите кои рекламираат на канал.
Mr-Hyde bliznak:ne e losh addonsot..slicen e i mojot..koga veke sme ovde kaj addonsive me interesira kako da resam eden problem..imam addons koj vadam vremenski banovi odednas.. Mr-Hyde sets mode: -bbbbbb *!*user*@* *!love@* *!*@*fut* *!nilA@* *!*@as36-c126.qualitynet.net Dau*La*Buci*!*@* Se e ok so toa..samo sto banlistata mi se oklucuva na private(Queries)..Ne znam kako da najdam nacin "banlistata" za kanalot kaj sto vadam ban da ne se oklucuva..Ednostavno da bide kako na ignore.. Ako imas nekoja ideja ke mi bide od korist.:D Odnapred blagodaram!
bliznak pobaraj vo kodot kaj sho ti pise, 'window -XXX @banlist' i izbri si go. isto i so komandite za listanje na banovite podolu.. 'echo @banlist bla bla' ako ne se snajdish, pastiraj go ovde cel addon, i kje sredime.
Mr-Hyde ; #= P&P -rs ; ######################################## ; Peace and Protection ; Banlist / etc. editing, and blacklist ; ######################################## ; ; Banlist/etc. editing ; alias -l _openlist { var %win = $_mservwin($1,$2) if ($window(%win)) { if ($window(%win).title) { clear %win titlebar %win _windowreg %win _closebanlist } } else { _window 2.6 -nhlvk -t3,30,39,50 %win -1 -1 -1 -1 @banlist _windowreg %win _closebanlist } return %win } alias -l _addlist if ($3) aline $1   $+ $2 $+ $round($calc(($ctime - $4) / 86400),2) $+ $+ $3 | else aline $1   $+ $2 $+ alias -l _finlist { var %win = $_openlist(@ $+ $1 $+ -list,- $+ $2) if ($line(%win,0) == 0) { window -c %win if ($halted) return disprc $2 $1 list is empty. halt } iline %win 1 Double-click to toggle an entry. (right-click for options) iline %win 2 Changes will *not* be made until you close the window. iline %win 3   iline %win 4    $+ $1 $+  Days old Set by iline %win 5   window -awb %win _banupd %win halt } ; opens a list from the ibl alias _iblbanlist { var %win = $_openlist(@Ban-list,- $+ $1) var %pos = 1 while ($ibl($1,%pos)) { _addlist %win $ibl($1,%pos) $ibl($1,%pos).by $ibl($1,%pos).ctime inc %pos } _finlist Ban $1 } raw 367:*:{ var %hashhit = $+(pnp.scanfound.,$cid,.,$cha2) if ($hget(%hashhit)) { var %hash = $+(pnp.scanunban.,$cid,.,$2) var %num = $hget(%hash,0).item while (%num > 0) { var %item = $hget(%hash,%num).item if ((%item iswm $3) || ($3 iswm %item)) hadd %hashhit $3 1 dec %num } } else { if ($halted) return _addlist $_openlist(@Ban-list,- $+ $2) $3- } halt } raw 368:*:{ if ($hget($+(pnp.scanfound.,$cid,.,$2))) { _scanu4 $2 halt } _finlist Ban $2 } raw &346:*:{ _addlist $_openlist(@Invite-list,- $+ $2) $3- | halt } raw 347:*:_finlist Invite $2 raw &348:*:{ _addlist $_openlist(@Exception-list,- $+ $2) $3- | halt } raw 349:*:_finlist Exception $2 menu @Banlist { dclick:_bangroup $active _bantog $iif($sline($active,1).ln > 5,Toggle):_bangroup $active _bantog $iif($sline($active,1).ln > 5,Remove):_bangroup $active _banrem Add...:_banadd $active $mid(beI,$pos(bei,$mid($active,2,1),1),1) $_entry(-1,$null,$remove($gettok($active,1,45),@) to add to $gettok($active,3-,45) $+ ? $+ $chr(40) $+ You must enter a mask $+ $chr(44) not a nickname. $+ $chr(41)) + $iif($sline($active,1).ln > 5,Modify...):_bangroup $active _banmod - Remove .Entries matching...:{ var %whom = $_entry(-1,$null,Nickname address or wildcard mask to clear matches for?) if ($_ppmask(%whom,1,1,1)) _bancln $active * $ifmatch else { _notconnected _Q.userhost _bancln $+ $active $+ *&n!&a disps $+ User $+ $:t(%whom) $+ notfound-cannotcleanmatchingentries %whom } } .Nick-based entries:_bancln $active n .Single IP entries:_bancln $active i .- .Entries set by servers:_bancln $active s .Entries set by...:_bancln $active b $_entry(-1,$me,Remove all entries set by whom? $chr(40) $+ wildcards OK $+ $chr(41)) .- .Entries newer than...:_bancln $active <= $_entry(-2,0.1,Remove all entries younger than how many days?) .Entries older than...:_bancln $active >= $_entry(-2,5,Remove all entries older than how many days?) .- .All entries:_banall $active _banrem Backup .Export...:_ssplay Question | var %export = $$sfile(*.txt,File to export to?,Export) | if ($exists(%export)) _fileopt 1 %export | _banexp $active %export .- .Import $+ $chr(44) adding to list...:_ssplay Question | _banimp $active 0 $$sfile(*.txt,Banlist to import?,Import) .Import $+ $chr(44) replacing list...:_ssplay Question | _banimp $active 1 $$sfile(*.txt,Banlist to import?,Import) .- .$iif($sline($active,1).ln > 5,Copy to blacklist...):black $active .$iif($sline($active,1).ln > 5,Move to blacklist...):var %win = $active | black %win | _bangroup %win _banrem - $iif($count($window($active).title,-) > 1,Changes) .Perform changes:_closebanlist $active .- .Cancel changes:_banall $active _banok .Close and cancel:_windowreg $active | _dowclose $active | window -c $active } alias -l _bangroup var %blip = $mid(beI,$pos(bei,$mid($1,2,1),1),1),%num = $sline($1,0) | :loop | if (%num) { if ($sline($1,%num).ln > 5) $2 $1 $ifmatch %blip | dec %num | goto loop } | _banupd $1 alias -l _banall var %blip = $mid(beI,$pos(bei,$mid($1,2,1),1),1),%num = $line($1,0) | :loop | if (%num > 5) { $2 $1 $ifmatch %blip | dec %num | goto loop } | _banupd $1 alias _bancln { var %blip = $mid(beI,$pos(bei,$mid($1,2,1),1),1),%num = $line($1,0) :loop if (%num > 5) { var %kill goto $2 :* | var %ban = $gettok($line($1,%num),2,9) | if ((%ban iswm $3) || ($3 iswm %ban)) %kill = 1 | goto next :n | if ($remove($gettok($gettok($line($1,%num),2,9),1,33),*,?) != $null) %kill = 1 | goto next :i | var %ban = $gettok($gettok($line($1,%num),2,9),2-,64) | if ((* !isin %ban) && (? !isin %ban)) %kill = 1 | goto next :b | if ($3 iswm $gettok($line($1,%num),4,9)) %kill = 1 | goto next :s | var %whom = $gettok($line($1,%num),4,9) | if ((. isin %whom) && (@ !isin %whom)) %kill = 1 | goto next :<= | :>= | if ($gettok($line($1,%num),3,9) $2 $3) %kill = 1 :next if (%kill) _banrem $1 %num %blip dec %num | goto loop } _banupd $1 } alias -l _bantog { if (+ isin $gettok($line($1,$2),1,9)) dline $1 $2 elseif (- isin $gettok($line($1,$2),1,9)) rline $1 $2   $+ $gettok($line($1,$2),2-4,9) else rline $1 $2 - $+ $3 $+ $+ $gettok($line($1,$2),2-4,9) $+ ( $+ removing $remove($gettok($1,1,45),@) $+ ) } alias -l _banok { if (+ isin $gettok($line($1,$2),1,9)) dline $1 $2 elseif (- isin $gettok($line($1,$2),1,9)) rline $1 $2   $+ $gettok($line($1,$2),2-4,9) } alias _banrem { if (+ isin $gettok($line($1,$2),1,9)) dline $1 $2 else rline $1 $2 - $+ $3 $+ $+ $gettok($line($1,$2),2-4,9) $+ ( $+ removing $remove($gettok($1,1,45),@) $+ ) } alias _banadd { var %num = $line($1,0) :loop if ($gettok($line($1,%num),2,9) == $3) { if (- isin $gettok($line($1,%num),1,9)) rline $1 %num   $+ $gettok($line($1,%num),2-4,9) goto done } if (%num > 5) { dec %num | goto loop } aline $1 + $+ $2 $+ $+ $3 $+ 0 $+ $+ $me $+ ( $+ adding $remove($gettok($1,1,45),@) $+ ) :done if ($4) _banupd $1 } alias -l _banmake { var %num = $line($1,0) :loop if ($gettok($line($1,%num),2,9) == $2) { rline $1 %num   $+ $gettok($line($1,%num),2-4,9) goto done } if (%num > 5) { dec %num | goto loop } aline $1   $+ $2 $+ 0 $+ $+ $3 :done _banupd $1 } alias -l _bankill { var %num = $line($1,0) :loop if ($gettok($line($1,%num),2,9) == $2) dline $1 %num if (%num > 5) { dec %num | goto loop } _banupd $1 } alias -l _banmod { var %newban = $_entry(-1,$gettok($line($1,$2),2,9),New mask for $remove($gettok($1,1,45),@) $+ ?) + _banrem $1- _banadd $1 $3 %newban } alias -l _banupd { var %title = - if ($fline($1,+*,0,0)) %title = %title Adding $ifmatch $remove($gettok($1,1,45),@) $+ $chr(40) $+ s $+ $chr(41) - if ($fline($1,-*,0,0)) %title = %title Removing $ifmatch $remove($gettok($1,1,45),@) $+ $chr(40) $+ s $+ $chr(41) - var %cur = $calc($line($1,0) - $fline($1,-*,0,0) - 5) if (%title == -) %title = - %cur total $remove($gettok($1,1,45),@) $+ $chr(40) $+ s $+ $chr(41) else %title = %title Resulting in %cur total $remove($gettok($1,1,45),@) $+ $chr(40) $+ s $+ $chr(41) titlebar $1 %title ( $+ $hget(pnp. $+ $window($1).cid,net) $+ ) } alias _closebanlist { var %channel = $mid($1,$calc($pos($1,-,2) + 1),$len($1)) _init.mass %channel if (($fline($1,-*,1,0)) || ($fline($1,+*,1,0))) { if (($me !ishop %channel) && ($me !isop %channel)) { disprc %channel Changes to $remove($gettok($1,1,45),@) list canceled- You are not opped | return } } :loopu if ($fline($1,-*,1,0)) { _add.mass %channel - $mid($line($1,$ifmatch),3,1) $gettok($line($1,$ifmatch),2,9) dline $1 $fline($1,-*,1,0) goto loopu } :loopb if ($fline($1,+*,1,0)) { _add.mass %channel + $mid($line($1,$ifmatch),3,1) $gettok($line($1,$ifmatch),2,9) dline $1 $fline($1,+*,1,0) goto loopb } _flush.mass %channel } alias -l _banimp { if ($2) _banall $1 _banrem var %read,%num = 1,%last = $lines($3-),%type = $mid(beI,$pos(bei,$mid($1,2,1),1),1) :loop %read = $read($3-,n,%num) if ($matchtok($matchtok(%read,*,1,9),*,1,32)) _banadd $1 %type $ifmatch if (%num < %last) { inc %num | goto loop } _banupd $1 } alias _banexp { write " $+ $2- $+ " $remove($gettok($1,1,45),@) $+ list / $mid($1,$calc($pos($1,-,2) + 1),$len($1)) / $hget(pnp. $+ $cid,net) / $me ( $+ $_datetime $+ ) var %line,%num = 6 :loop %line = $line($1,%num) if (%line) { if (- !isin $gettok(%line,1,9)) { if ($gettok(%line,3,9)) write " $+ $2- $+ " $gettok(%line,2,9) set by $gettok(%line,4,9) $gettok(%line,3,9) days old else write " $+ $2- $+ " $gettok(%line,2,9) } inc %num | goto loop } } on *:BAN:#:if ($window($_mservwin(@Ban-list,- $+ $chan))) _banmake $ifmatch $banmask $nick on *:UNBAN:#:if ($window($_mservwin(@Ban-list,- $+ $chan))) _bankill $ifmatch $banmask $nick ; ; Blacklist ; alias blacklist blackedit alias blackedit { if ($window(@Blacklist)) clear @Blacklist else _window 2.7 -slzk -t10,25,40 @Blacklist $_winpos(8,12,10,10) @Blacklist var %file,%num,%line,%nick,%chan,%note %file = $_cfg(userinfo.ini) %num = $ulist(*,black,0) :loop if (%num) { %line = $ulist(*,black,%num) %nick = $readini(%file,n,%line,nick) %chan = $readini(%file,n,%line,chan) %note = $readini(%file,n,%line,note) aline @Blacklist $iif(%nick == $null,-,%nick) $+ $+ %line $+ $+ ( $+ $iif(%chan == $null,all,%chan) $+ ) $+ $+ $_readprep(%note) dec %num | goto loop } iline @Blacklist 1 The following addresses will be banned and kicked where you are op. iline @Blacklist 2 You will also ignore private messages and CTCPs from them. iline @Blacklist 3 Double-click to edit a user $+ $chr(44) or right-click for options. iline @Blacklist 4   iline @Blacklist 5 Nickname Address Channel Reason iline @Blacklist 6   window -b @Blacklist } menu @Blacklist { dclick:if ($sline($active,1).ln > 6) black $gettok($sline($active,1),2,9) Add user...:black $_entry(-1,$null,Nickname or address to blacklist?) $iif($sline($active,1).ln > 6,Remove)::loop | black -r $gettok($sline($active,1),2,9) | if ($sline($active,1).ln) goto loop - $iif($sline($active,1).ln > 6,Edit...):black $gettok($sline($active,1),2,9) } dialog blackedit { title "Blacklist" icon script\pnp.ico option dbu size -1 -1 150 130 box "Blacklisting:", 101, 5 5 140 39 text "&Nickname:", 106, 8 17 25 10, right edit "", 1, 35 15 50 11 text "(for reference only)", 107, 87 17 50 10 text "&Usermask:", 108, 8 29 25 10, right combo 2, 35 27 105 60, edit drop box "Where:", 102, 5 46 140 43 radio "&All channels", 5, 10 56 130 8 radio "&Only in:", 6, 10 66 35 8 edit "", 7, 45 65 90 11, disable text "(multiple channels ok)", 103, 47 78 94 10 text "&Reason:", 104, 8 95 25 10, right combo 8, 35 93 105 70, edit drop button "&Blacklist", 201, 5 112 40 12, default button "Cancel", 202, 55 112 40 12, cancel button "&Remove", 203, 105 112 40 12, disable edit "", 241, 1 1 1 1, hide autohs edit "", 242, 1 1 1 1, hide autohs result } on *:DIALOG:blackedit:sclick:5:did -b $dname 7 on *:DIALOG:blackedit:sclick:6:did -e $dname 7 on *:DIALOG:blackedit:init:*:{ var %reason if (@* iswm %.who) { var %chan = $mid(%.who,$calc($pos(%.who,-,2) + 1),$len(%.who)) did -ae $dname 7 %chan did -cf $dname 6 did -abc $dname 2 ( $+ banlist transfer from %chan $+ ) did -a $dname 242 %.who } else { if ($istok($level(%.addr),=black,44)) { ; saves original address did -a $dname 241 %.addr did -e $dname 203 var %file = $_cfg(userinfo.ini) did -a $dname 1 $readini(%file,n,%.addr,nick) %reason = $readini(%file,n,%.addr,note) var %chan = $readini(%file,n,%.addr,chan) if (%chan) { did -ae $dname 7 %chan | did -c $dname 6 } else did -c $dname 5 } else { did -c $dname 5 if ($gettok(%.who,1,33) != *) did -a $dname 1 $ifmatch } if ($did(7) == $null) { if ($active ischan) did -a $dname 7 $active elseif ($comchan($did(1),1)) did -a $dname 7 $ifmatch } did -ac $dname 2 %.addr if (* !isin %.who) { if (*!*@* iswm %.who) _ddaddm $dname 2 %.who 022 030 100 002 001 111 elseif ($address(%.who,5)) _ddaddm $dname 2 $ifmatch 022 030 100 002 001 111 } } _fillrec $dname 8 0 $_cfg(black.lis) 0 $_readprep(%reason) if (%reason == $null) did -u $dname 8 unset %.who %.addr } on *:DIALOG:blackedit:sclick:201:{ if ($did(8) == $null) _okcancel 1 You have not entered a blacklist reason- Continue? ; remove old? if (($did(241) != $did(2)) && ($did(241) != $null)) .black -r $did(241) ; add new ; (transfer?) if ($did(242) != $null) { var %num = 1 if (($did(6).state) && ($_ischan($did(7),1))) var %where = $_s2c($did(7)) else var %where = * var %other = = $+ $gettok($did(1),1,32) $did(8) :loop if ($sline($did(242),%num)) { black %where $gettok($ifmatch,2,9) %other inc %num | goto loop } } else { if (($did(6).state) && ($_ischan($did(7),1))) black $_s2c($did(7)) $did(2) = $+ $gettok($did(1),1,32) $did(8) else black * $did(2) = $+ $gettok($did(1),1,32) $did(8) } dialog -c $dname } on *:DIALOG:blackedit:sclick:203:black -r $did(241) | dialog -c $dname ; /black [-r|#channel(s)|*] nick|addr|@window [=nick] [reason] ; pops up dialog only if just nick/addr is given alias black { var %num,%nick,%line,%line2 if ((-* iswm $1) || ($_ischan($1)) || ($1 == *)) { var %where = $1,%who = $2,%why = $3- } else { var %where,%who = $1,%why = $2- } if (%who == $null) _qhelp /black $1- if (@* iswm %who) { set -u %.who %who | _dialog -ma blackedit blackedit | return } var %dialog = $iif($1- == %who,1,0) %who = $_nc(%who) var %addr = $_ppmask(%who,$_stmask(3,%where),1) if (%addr == $null) { dispa Looking up address of $:t(%who) $+ ... $+ ... _notconnected _Q.userhost black $+ %where $+ &n!&a $+ $iif(%why != $null,$_s2p(%why)) dispa $+ User $+ $:t(%who) $+ notfound-cannotblacklist %who halt } ; dialog if (%dialog) { set -u %.who %who | set -u %.addr %addr | _dialog -ma blackedit blackedit | return } var %file = $_cfg(userinfo.ini) if (%where == -r) { if ($window(@Blacklist)) { %num = 7 | :loop1 | if ($line(@Blacklist,%num)) { if ($gettok($ifmatch,2,9) == %addr) dline @Blacklist %num | else inc %num | goto loop1 } } else { if ($istok($level(%addr),=black,44)) dispa Removing $:s(%addr) from blacklist. else dispa $:s(%addr) is not in blacklist. } .ruser black %addr if ($level(%addr) == $dlevel) .ruser %addr scid -a _nickcol.updatemask %addr 1 remini %file %addr } else { if (=* iswm $gettok(%why,1,32)) { %nick = $right($gettok(%why,1,32),-1) | %why = $gettok(%why,2-,32) } elseif ((* !isin $gettok(%who,1,33)) && ($gettok(%who,1,33) != $null)) %nick = $ifmatch else %nick = $readini(%file,n,%addr,nick) if (%why == $null) { %why = $readini(%file,n,%addr,note) | %why = $_readprep(%why) } if (%where == $null) %where = $readini(%file,n,%addr,chan) if (%where == *) var %where if ($window(@Blacklist)) { %line = $iif(%nick == $null,-,%nick) $+ $+ %addr $+ $+ ( $+ $iif(%where == $null,all,%where) $+ ) $+ $+ %why %num = 7 | :loop2 if ($line(@Blacklist,%num)) { if ($gettok($ifmatch,2,9) == %addr) _ridline @Blacklist %num %line else { inc %num | goto loop2 } } else iline @Blacklist $calc($line(@Blacklist,0) + 1) %line } else { if (%nick) %line = $:t(%nick) ( $+ $:s(%addr) $+ ) | else %line = $:s(%addr) if (%where == $null) %line2 = $:s(all channels) | else %line2 = $:s(%where) var %whyshow = $iif(%why == $null,none,$:s(%why)) dispa $iif($istok($level(%addr),=black,44),Modifying blacklist entry- %line in %line2 $chr(40) $+ reason- %whyshow $+ $chr(41),Adding blacklist entry- %line in %line2 $chr(40) $+ reason- %whyshow $+ $chr(41)) } if ($level(%addr) == $dlevel) .auser -a $dlevel %addr .auser -a black %addr if (%nick) writeini %file %addr nick %nick | else remini %file %addr nick if (%why) { writeini %file %addr note $_writeprep(%why) | _recent2 black 9 %why } | else remini %file %addr note if (%where) writeini %file %addr chan %where | else remini %file %addr chan var %cid = $scon(0) set -u %.punishwait 1 while (%cid >= 1) { scon %cid _nickcol.updatemask %addr 1 %num = $chan(0) :loopC ; No need to check for connection status or on channel, as we check for isop/ishop if ((($me isop $chan(%num)) || ($me ishop $chan(%num))) && ($ialchan(%addr,$chan(%num),0))) { if ((%where == $null) || ($istok(%where,$chan(%num),44))) { disprc $chan(%num) Blacklisted $:s(%addr) $+ - Kickbanning $+ ... %line = $_msg(black) if (&reason !isin %line) %line = %line &reason& set -u %&reason& %why set -u %&addr& %addr kb $chan(%num) %addr %line } } if (%num > 1) { dec %num | goto loopC } dec %cid } scon -r unset %&reason& %&addr& } } ; Reorders userlist so all blacklist-only entries are at the end. alias _reorderblack { saveini if ($isfile($_cfg(users.mrc))) { window -hln @.userlist loadbuf @.userlist $_cfg(users.mrc) var %ln = 1,%last = $line(@.userlist,0) while (%ln <= %last) { if (1,=black:* iswm $line(@.userlist,%ln)) { aline @.userlist $line(@.userlist,%ln) dline @.userlist %ln dec %last } else inc %ln } savebuf @.userlist $_cfg(users.mrc) .load -ru " $+ $_cfg(users.mrc) $+ " window -c @.userlist } } Bliznak..Ovaa e celoto od Banlist..Mislam deka vide deka se raboti za "Peace and Protection" Ke mozes da mi kazes tocno sto da isfrlam od ovoj cel addons? Izvini sto maltretiram.:( Bye Bye..
bliznak Peace and Protection e многу добра скрипта, лично не би ти препорачал да е едитираш, али ако ти смета нема проблем, ќе средиме. Која верзија на P&P е користиш?
Mr-Hyde Bliznak:Ja koristam Peace and Protection 4.22,so mIRC 6.01..Iako mislam deka bi bilo podobro koga bi bila 6.16. :) ..Nema veza za editiranjeto..Dokolku ima nekoi nesakani posledici ke go stavam stariot addons..
darkjesus jas mislam deka P&P malku se razlikuva vo kodot od drugite skripti i nema kako oddelen addon da reagira na druga skripta ona pogore
Mr-Hyde Darkjesus:sepak blagodaram na pomosta :D Ajt ke vidam sto mozam da napravam.;)
`Xa0c
quote:
Originally posted by darkjesus
jas mislam deka P&P malku se razlikuva vo kodot od drugite skripti i nema kako oddelen addon da reagira na druga skripta ona pogore
Tocno e toa... Mr-Hyde i jas koristam PnP samo sto gi nemam tie problemi...pa mozam da pastiram celiot kod if you want,samo nekako ne mozam da najdam razlika pomegju ovoj i mojot[:)]...mozebi e do stranata od koja si ja downloadiral t.e mislam deka od kristshell ili kako i da bese do http://pnp.the-i.org/pnp422 ima razlika... i moja preporaka-stavaj ja na 6.16 dodeka ne sum vlegol na mirc[:D]just kidding
bliznak Mr-Hyde, како што гледам, си ми пастирал повеќе од бараното.. значи не се работи за адон, туку за дел од скрипта.. малце е комплицирано да се едитира, бидјќи повеќето од alias командите ги нема во кодов, а се користат.. али нема везе. Сега за сега, пробај вака и кажими дали ти се отвора прозорец.. и ако НЕ ти се отвора, види на статус што се дешава. Не бриши ништо, само напиши го ова и тестирај. /alias _openlist halt или пробај вака /alias -l _openlist halt
Mr-Hyde bliznak..gi pastirav i dvete...isto e.nema promeni..mislam deka ne bi trebalo da bide "openlist"..na prozorecot mi pisuva "Ban-list-#..."so ovoj prozorec mi izleguva...da ne e pricinata toa za stavanje na halt?A sto se odnesuva vo vrska na Status nema nisto..prazno e.. ovaa mi e kako "Virus" :( Bye Bye...