home *** CD-ROM | disk | FTP | other *** search
/ Hackers Toolkit v2.0 / Hackers_Toolkit_v2.0.iso / HTML / archive / IRC / split.irc < prev    next >
Text File  |  1999-11-04  |  5KB  |  193 lines

  1. echo *** split.irc loaded.
  2. echo *** Type /shelp for help.
  3.  
  4. ^assign -serverlist1
  5. ^assign -serverlist2
  6. ^assign -serverlist3
  7. ^assign -servers
  8. @ servercount = 0
  9.  
  10. ^alias getservers {
  11. echo *** Generating server list.
  12. ^exec rm server.list
  13. ^assign serverlist1 N
  14. ^assign serverlist2 N
  15. @ servercount = 0
  16. ^assign -servers
  17. ^on ^raw_irc "% 364 *" {
  18.   ^eval ^exec echo "loadserversub $3" >> server.list
  19.   @ servercount = servercount + 1
  20.   ^assign servers[${servercount-1}] $3 No
  21.   if ([$servercount] < [100]) {
  22.     ^assign serverlist1 $serverlist1 $3
  23.     }
  24.     {
  25.     ^assign serverlist2 $serverlist2 $3
  26.     }
  27.   }
  28. ^on ^raw_irc "% 365 *" {
  29.   echo *** Server list generated.  $servercount servers found.
  30.   }
  31. links
  32. wait
  33. ^on raw_irc -"% 364 *"
  34. ^on raw_irc -"% 365 *"
  35. }
  36.  
  37. ^alias loadserversub {
  38. @ servercount = servercount + 1
  39. if ([$servercount] < [100]) {
  40.   ^assign serverlist1 $serverlist1 $0
  41.   }
  42.   {
  43.   ^assign serverlist2 $serverlist2 $0
  44.   }
  45. ^assign servers[${servercount-1}] $0 No
  46. }
  47.  
  48. ^alias loadservers {
  49. echo *** Loading server list.
  50. @ servercount = 0
  51. ^assign serverlist1 N
  52. ^assign serverlist2 N
  53. ^assign -servers
  54. load server.list
  55. wait -cmd echo *** $servercount servers loaded.
  56. }
  57.  
  58. ^alias servers {
  59. echo *** There are $servercount servers in memory.
  60. }
  61.  
  62.  
  63. ^alias setserver {
  64. if ([$match($0 $serverlist1)] != [0]) {
  65.   ^assign servers[${match($0 $serverlist1) -2}] $0 $1
  66.   }
  67.   {
  68.   if ([$match($0 $serverlist2)] != [0]) {
  69.   ^assign servers[${match($0 $serverlist2) +97}] $0 $1
  70.   }
  71.   {
  72.   @ servercount = servercount + 1
  73.   ^assign servers[${servercount-1}] $0 New
  74.   if ([$servercount] < [100]) {
  75.     ^assign serverlist1 $serverlist1 $0
  76.     }
  77.     {
  78.     ^assign serverlist2 $serverlist2 $0
  79.     }
  80.   ^eval ^exec echo "loadserversub $0" >> server.list
  81.   }
  82. }
  83. ^assign -ssx
  84. }
  85.  
  86.  
  87. ^alias findsplit {
  88. if ([$servercount] < [1]) {
  89. echo *** You need to either create a new server list, or load an old one.
  90. }
  91. {
  92.  
  93. echo *** Generating list of splits...
  94. @ splitsfound = 0
  95. ^on ^raw_irc "% 364 *" {
  96.   setserver $3 Yes
  97.   }
  98. ^on ^raw_irc "% 365 *" {
  99.   ^on raw_irc -"% 364 *"
  100.   ^on raw_irc -"% 365 *"
  101.   }
  102. @ sx = 0
  103. while ([$sx] < [$servercount]) {
  104.   @ sx = sx + 1
  105.   setserver $word(0 $servers[${sx -1}]) No
  106.   }
  107. wait 
  108. links
  109. wait
  110.   @ sx = 0
  111.   @ splitcount = 0
  112.   while ([$sx] < [$servercount]) {
  113.     @ sx = sx + 1
  114.     ^assign workwith $word(1 $servers[${sx-1}])
  115.     if ([$workwith]==[NO]) {
  116.       echo *** Split: $word(0 $servers[${sx-1}])
  117.       @ splitcount = splitcount + 1 
  118.       }
  119.       {
  120.     if ([$workwith]==[NEW]) {
  121.       echo ***   New: $word(0 $servers[${sx-1}])
  122.       }
  123.     }
  124.   }
  125. wait
  126. if ([$splitcount] > 0) {
  127.   echo *** $splitcount split servers found.
  128.   }
  129.   { 
  130.   echo *** No split servers found.
  131.   }
  132. ^assign -sx
  133. }
  134. }
  135.  
  136. ^alias shelp {
  137. echo *** -----------------------------------------------------
  138. echo *** /loadservers     Load serverlist into memory
  139. echo *** /getservers      Generate serverlist
  140. echo *** /findsplit       Generate a list of split servers
  141. echo *** /servers         Show how many servers are in memory
  142. echo *** /splitunload     Unload script
  143. echo *** /aboutsplit      About information for this script
  144. echo *** /instructions    Basic instructions on use.
  145. echo *** ------------------------------------------------------
  146. }
  147.  
  148. ^alias aboutsplit {
  149. echo *** ----------------------------
  150. echo *** split.irc v0.2
  151. echo *** by maitai@eskimo.com
  152. echo *** ----------------------------
  153. }
  154.  
  155. ^alias instructions {
  156. echo *** ---------------------------------------------------------
  157. echo ***  Use /getservers to get a list of currently connected
  158. echo ***  servers, this will create a file called server.list
  159. echo ***  in your present working directory.  I recommend you
  160. echo ***  do this at a time when you know that the network is
  161. echo ***  fairly stable otherwise, the script miss splits that
  162. echo ***  are around, because it doesn't know the server exists.
  163. echo ***
  164. echo ***  To avoid spending time generating new server lists,
  165. echo ***  user /loadservers to load your previously made server
  166. echo ***  list file.  The script will automatically add new
  167. echo ***  servers it finds that are not in its list whenever you
  168. echo ***  user /findsplit.
  169. echo ***
  170. echo ***  Use /findsplit to list all splits (based on your
  171. echo ***  server list), add new servers to your list, etc.
  172. echo *** ---------------------------------------------------------
  173. }
  174.  
  175.  
  176.  
  177. ^alias splitunload {
  178. echo *** Unloading split.irc
  179. ^alias -shelp
  180. ^assign -servers
  181. ^alias -loadserversub
  182. ^alias -loadservers
  183. ^alias -findsplit
  184. ^alias -splitunload
  185. ^alias -setserver
  186. ^alias -getservers
  187. ^alias -instructions
  188. ^alias -aboutsplit
  189. ^assign -serverlist
  190. ^assign -servers
  191. ^assign -servercount
  192. }
  193.