⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 banlist.txt

📁 在上载一个bot源码给喜欢研究僵尸网络的朋友
💻 TXT
字号:
;@@@
;@@@ DreamBot IRC Bot 5.1
;@@@ File description: DreamBot banlist
;@@@ Design & coding: Madar Petru
;@@@ (C) Copyright 2004-2005 by Madar Petru. All rights reserved. 
;@@@

alias f8 { _banview }
alias _banview { dialog -ma banlist banlist }
dialog banlist {
  title "DreamBot 5.1 Banlist"
  size -1 -1 400 300
  icon "img/set.ico", 0
  text "    This is the bot's internal banlist. Bans in this list will not expire untill you remove them. When an user joins a channel and if a ban matches him, the bot will ban kick him. The bot will also kick everyone matching that hostmask.", 1, 5 5 390 80
  text "Channels:", 2, 5 60 50 15
  text "Bans:", 7, 130 60 50 15
  combo 3, 5 75 120 20, edit, drop
  button "Add", 4, 5 100 50 25
  button "Del", 5, 75 100 50 25
  edit "", 6, 130 75 260 20
  list 8, 130 100 260 190, sort, vsbar, hsbar
  button "Add ban", 9, 5 150 100 25
  button "Delete ban", 10, 5 180 100 25
  button "Close", 11, 5 250 100 25
}
alias _loadbans {
  if $1 == $null { halt }
  ;echo passed null
  if $left($1,1) != $chr(35) { halt }
  ;echo passed digit
  if $exists(ini\bans\ $+ $1 $+ .ban) == $false { halt }
  ;echo passed exist
  ;if $lines(ini\bans\ $+ $1 $+ .ban) <= 0) { halt }
  ;echo passed eof
  did -r banlist 8,6
  set %bl.count 0
  :beginbanload
  inc %bl.count
  if $read(ini\bans\ $+ $1 $+ .ban,%bl.count) == $null { did -a banlist 6 %last.ban | goto next2 }
  did -a banlist 8 $read(ini\bans\ $+ $1 $+ .ban,%bl.count)
  set %last.ban $read(ini\bans\ $+ $1 $+ .ban,%bl.count)
  goto beginbanload
  :next2
  did -z banlist 8
  if $did(banlist,8).lines == 0 { did -r banlist 6 }
}
alias _binit {
  did -r banlist 3,6,8
  set %i 0
  :beginloadchan
  inc %i
  if $read(ini\bans\bchan.txt,%i) == $null { did -o banlist 3 0 %x | goto next }
  did -a banlist 3 $read(ini\bans\bchan.txt,%i)
  set %x $read(ini\bans\bchan.txt,%i)
  goto beginloadchan
  :next
  _loadbans %x
}
on *:dialog:banlist:init:0: {
  _binit
}
on *:dialog:banlist:sclick:8: {
  if $did(banlist,8).seltext == $null { halt }
  did -ra banlist 6 $did(banlist,8).seltext
}
on *:dialog:banlist:edit:3: {
  if $did(banlist,3).text == $null { halt }
  set %x $did(banlist,3).text
  did -r banlist 8,6
  did -z banlist 8
  _loadbans %x
}
on *:dialog:banlist:sclick:3: {
  if $did(banlist,3).text == $null { halt }
  set %x $did(banlist,3).text
  _loadbans %x
}
alias _bchan {
  if $exists(ini\bans\bchan.txt) == $false { return $false }
  set %b 0
  :begincheck
  inc %b
  if $read(ini\bans\bchan.txt,%b) == $null { return $false | halt }
  if $read(ini\bans\bchan.txt,%b) == $1 { return $true | halt }
  goto begincheck
}
alias _ban {
  if $exists(ini\bans\bchan.txt) == $false { return $false }
  set %ban.file ini\bans\ $+ $1 $+ .ban
  if $exists(%ban.file) == $false { return $false }
  set %b 0
  :begincheck
  inc %b
  if $read(%ban.file,%b) == $null { return $false | halt }
  if $read(%ban.file,%b) == $2 { return $true | halt }
  goto begincheck
}
on *:dialog:banlist:sclick:4: {
  if $did(banlist,3).text == $null { _error No channel name specified. | halt }
  set %z $did(banlist,3).text
  if $_bchan(%z) == $true { _error Banlist for %z already exists. | halt }
  did -a banlist 3
  write ini\bans\bchan.txt %z
  _binit
}
on *:dialog:banlist:sclick:5: {
  if $did(banlist,3).text == $null { _error No channel name specified. | halt }
  set %z $did(banlist,3).text
  if $_bchan(%z) == $false { _error Banlist for %z does not exists. | halt }
  write -ds $+ %z ini\bans\bchan.txt
  if $exists(ini\bans\ $+ %z $+ .ban) == $true { .remove ini\bans\ $+ %z $+ .ban }
  _binit
}
on *:dialog:banlist:sclick:9: { 
  if $did(banlist,3).text == $null { _error No channel name specified. | halt }
  set %z $did(banlist,3).text
  if $_bchan(%z) == $false { _error Banlist for %z does not exists. | halt }
  if $did(banlist,6).text == $null { _error Please enter a valid ban mask. | halt }
  set %ban $did(banlist,6).text
  if $regex(%ban,.\!*\@.) == 0 { _error Please enter a valid ban mask. Example: nickname!ident@host.com. | halt }
  if $_ban(%z,%ban) == $true { _error Ban %ban already exists in %z $+ 's banlist. | halt }
  set %ban.file ini\bans\ $+ %z $+ .ban
  write %ban.file %ban
  _loadbans %z
}
on *:dialog:banlist:sclick:10: { 
  if $did(banlist,3).text == $null { _error No channel name specified. | halt }
  set %z $did(banlist,3).text
  if $_bchan(%z) == $false { _error Banlist for %z does not exists. | halt }
  if $did(banlist,6).text == $null { _error Please enter a valid ban mask. | halt }
  set %ban $did(banlist,6).text
  if $regex(%ban,.\!*\@.) == 0 { _error Please enter a valid ban mask. Example: nickname!ident@host.com. | halt }
  if $_ban(%z,%ban) == $false { _error Ban %ban does not exists in %z $+ 's banlist. | halt }
  set %ban.file ini\bans\ $+ %z $+ .ban
  write -ds $+ %ban %ban.file
  _loadbans %z
}
on *:dialog:banlist:sclick:11: {
  dialog -c banlist
  unset %i %x %bl.count %ban %ban.file %z %b
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -