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

  1. ## riot.irc - by filbert
  2. ##
  3. ## based on coke by reptile (which was based on PhoEniX by Vassago), 
  4. ## mods by filbert 
  5. ##
  6. ## known mods:
  7. ##       net alias (by: vassago)
  8. ##       improved help (by: filbert)
  9. ##       war shit (by: pain)
  10. ##       save function (by: vassago, deletions by filbert)
  11. ##       netsplit join and wholeft binds (by filbert)
  12. ##       kewl azkee'z (by filbert)
  13. ##
  14. ##
  15. ## this skript shuld be %100 backdoor free.. if its not, then
  16. ## the back door is tew ereet 4 me to have been able to find..  
  17. ##
  18. ##
  19.  
  20. EVAL echo 
  21. EVAL echo        .________________________________________.
  22. EVAL echo        |::::    ____|:     |::::     :|       .:|:
  23. EVAL echo        |:::     : |:       |:::     ::|__.   :__.:
  24. EVAL echo        |::      |:|:.      |::     :::| :|:. |:
  25. EVAL echo        .________|__________|__________| :|___.:.
  26. EVAL echo          iRC RioT - one.point.oh - by filbert
  27. EVAL echo      . .. _______.. . /RioT 4 HeLP .. .________ .. .
  28. EVAL echo      . ... ____.. . /ReGiSTeR ToDaY . .._____... ..
  29.  
  30. EVAL ^set input_prompt [ ] |0%| Done...
  31.  
  32. @ mcount = 0
  33. @ kcount = 0
  34. @ msensor = 2
  35. @ ksensor = 3
  36. @ msgsensor = 5
  37. @ notsensor = 9
  38. @ ctcpsensor = 3
  39. @ nicksensor = 3
  40. @ msgcount = 0
  41. @ notcount = 0
  42. @ ctcpcount = 0
  43. @ dccsent = 0
  44. @ dcclimit = 10
  45. @ msgmax = 8
  46. @ nickcnt = 0
  47. @ resetcount = 16
  48. @ ignorecount = 300
  49. @ OPVIEWING = [OFF]
  50. @ TOOPVIEW = [OFF]
  51. @ AUTOGET = [ON]
  52. @ AUTOSEND = [ON]
  53. @ AUTOCLOSE = [OFF]
  54. @ NOISE = [ON]
  55. @ LOADFILE = [OFF]
  56. @ FRIENDADD = 0
  57. @ PRIVADD = 0
  58.  
  59. EVAL @ OFFERFILE = [~/offer.riot]
  60. EVAL @ SECURFILE = [~/secure.riot]
  61. EVAL @ UPLOADDIR = [$W]
  62. EVAL @ DOWNLOADDIR = [$W]
  63. EVAL @ savefile = [$HOME/.riot.save]
  64. EVAL @ backup = [$HOME/.riot.bakup]
  65. EVAL @ AWAYFLE = [$savefile\.away]
  66.  
  67. @ SECURITYFLAG  = [OFF]
  68. @ MYSEND = [NO]
  69. @ GETCOUNT = 0
  70. @ TOTPACK = 0
  71. @ OVERWRITE = [OFF]
  72.  
  73. assign fingermsg -RioT- one-point-oh by.. filbert
  74. assign versionmesg -RioT- one-point-oh by.. filbert
  75. assign default_server irc.ais.net:6661
  76. assign flood_msg -FLooD-
  77. assign ignore_types MSGS CTCP NOTICES INVITES NOTES CRAP
  78. assign defumes Do i HaVe TeW..??
  79. assign idlemes iM NoT HoMe RiGHT NoW...
  80. assign signmsg -LeaViNG-
  81. assign shell_pgm csh
  82. assign mode *** Mode change "$2-" on channel [$1] by $0.
  83. assign away *** You are have been marked as being away.
  84. assign back *** You are no longer marked as being away.
  85. assign whois.1 *** $1 is $2@$3 [$5-]
  86. assign whois.2 *** On channels: $1-
  87. assign whois.3 *** On server :$1: [$2-]
  88. assign bans *** [$1] $2-
  89. assign top *** Topic for [$1] is: $2-
  90. assign topc *** $0 has changed the topic on [$1] to: $2-
  91. assign awaym *** $0 is away -:$1-:-
  92. assign nick *** [$0] $1 is now known as $2.
  93. assign leave *** $0 has left [$1]
  94. assign join *** $1 [$2@$3] has joined channel [$0]
  95. assign spub <${N}> $1-
  96. assign pub <$0> $2-
  97. assign pk -KiCKeD- 
  98. assign PAUSES ON
  99. assign flood_ok $help_service
  100. assign OLD_STATUS $STATUS_FORMAT
  101. assign fingermsg -RioT- one-point-oh by.. filbert
  102. assign default_server irc.uoknor.edu 6667
  103. assign flood_msg [-RioT-] -FLooD-
  104. assign mail_pgm mail
  105. assign shell_pgm csh
  106. assign sd [-RioT-]
  107. assign ilogo [-RioT-]
  108. assign iver [one-point-oh]
  109. assign elon off
  110. assign dont do
  111. assign awayfle away.log
  112. assign defban n
  113. assign change_stat On
  114. assign ban_name Normal
  115. assign sdtmes On
  116. assign showkill On
  117. assign ctcp_auto Off
  118. assign floodp On
  119. assign chanprot On
  120. assign isaway No
  121. assign mode_lock None
  122. assign setaw On
  123. assign logirc Off
  124. assign ainv Off
  125. assign idle_time 5
  126. assign aprot On
  127. assign nhp Off
  128. assign rejoin On
  129. assign awaystat On
  130. assign defumes Bats in the dryer...
  131. assign idlemes Automatically set away.
  132. assign signmsg I'm outta here!
  133. assign bogus_patterns *fuck* *shit* *suck* *dick* *penis* *cunt* *haha* *fake* *split* *ass* *hehe* *bogus* *yawn* *whitehouse*
  134. EVAL ^set input_prompt [.] |5%| Done...
  135. ^set status_mail  [-MAiL-][%M]
  136. ^set status_format [-RioT-] [%T] [%*%@]%N%#%S%H%B%Q%A%C%+%I%O%M%F %W%>%U 
  137. ^set novice off
  138. ^set exec_protection off
  139. ^set status_user  [-RioT-]
  140. ^set auto_unmark_away off
  141. ^set auto_whowas off
  142. ^set continued_line  
  143. ^set indent on
  144. ^set history 20
  145. ^set tab_max 5
  146. ^set show_who_hopcount on
  147. ^set dcc_block_size 1024
  148. ^set max_recursions 150
  149. ^set show_away_once on
  150. ^set send_ignore_msg off
  151. ^set hide_private_channels off
  152. ^set channel_name_width 12
  153. ^set highlight_char bold
  154. ^set beep_max 3
  155. ^set clock_24hour off
  156. ^set verbose_ctcp off
  157. ^set warn_of_ignores on
  158. ^set beep_when_away 0
  159. ^set beep_on_msgs on
  160. ^set show_end_of_msgs off
  161. ^set status_window ^
  162. ^set show_channel_names on
  163. ^set no_ctcp_flood on
  164. ^set flood_warning off
  165. ^set suppress_server_motd on
  166. ^set lastlog 40
  167. ^set lastlog_level all dcc
  168. ^set mail 1
  169. EVAL ^set input_prompt [o] |10%| Done...
  170. bind ^E parse_command elite
  171. bind ^O parse_command ig $,
  172. bind ^W next_window
  173. bind ^X^X parse_command tk.delnick
  174.  
  175. bind ^! /wholeft
  176. bind ^# /getonserv
  177.  
  178. bind meta1-[ meta2
  179. bind meta1-O meta2
  180. bind meta2-A backward_history
  181. bind meta2-B forward_history
  182. bind meta2-C forward_character
  183. bind meta2-D backward_character
  184. bind meta1-t parse_command tt
  185. bind ^B self_insert
  186. bind ^_ self_insert
  187. EVAL ^set input_prompt [O] |15%| Done...
  188. bind ^V self_insert
  189. bind ^A self_insert
  190. bind ^Z stop_irc
  191. bind ^\ switch_channels
  192. bind ^O parse_command /ig $,
  193. bind ^I parse_command ^getmsg 1 $msglist
  194. bind ^R parse_command ^getmsg -1 $msglis0t
  195.  
  196. alias ww whowas
  197. alias scan names $C
  198. alias sc names $C
  199. alias n notice
  200. alias wi whois
  201. alias unignore /noig $0
  202. alias chops /w -chops
  203. alias re redirect
  204. alias c mode $C $0-
  205. alias sb {
  206.    ^on 367 -"*"
  207.    if ([$0]) {/mode $0 +b}
  208.    {/mode $C +b
  209.    }
  210. }
  211. EVAL ^set input_prompt [0] |20%| Done...
  212. alias dr //dcc rename
  213. alias dl //dcc list
  214. alias dc //dcc chat
  215. alias ex exec
  216. alias wii whois $0 $0
  217. alias ls exec ls -al
  218. alias cat exec cat
  219. alias r msg , $0-
  220. alias m msg $0 $1-
  221. alias chat //dcc chat $decode($chatter)
  222. alias nochat //dcc close chat $decode($chatter)
  223. alias rmode ^set status_mode  (+%+)
  224. alias nokey quote MODE $C -k $chankey
  225. alias nnotice quote NOTICE $0 :$1-
  226. alias enickonly {^assign FUNCTION_RETURN $encode($left($index(! $0) $0))}
  227. ^enickonly
  228. alias pecho {^xecho -level crap $sd $0-}
  229. alias mc quote MODE $C -lsnmpitmk $chankey
  230. alias ml quote MODE $C +inst-lmpmk $chankey
  231. alias mn quote MODE $C +nst-ilmpmk $chankey
  232. alias autoping ap
  233. alias autoping {
  234.    ^set status_user  Lag: ? [-RioT-]
  235.    /quote PING $time() $S
  236. }
  237.  
  238.  
  239. alias register {
  240. /notice $N $sd THANK YOU 4 REGISTERING $ilogo $iver...
  241. /exec echo NICK: $N - REGISTERED: $ilogo $iver - | mail filbert@quiknet.com
  242. }
  243.  
  244. on ^raw_irc "% PONG *" {
  245.         if ([$0]==[$S]) {
  246.         ^assign lagtime ${time()-mid(1 999 $3)}
  247.         if (lagtime==0) {/set status_user  [-RioT-]}
  248.         {/set status_user  Lag: $lagtime [-RioT-]}
  249.         }
  250. }
  251.  
  252. ### Timer/Idle Control
  253.  
  254. on -timer "*" {
  255.    /set status_user  Lag: ? [-RioT-]
  256.    /quote PING $time() $S
  257.    /^netclean
  258.    if (rmatch($0 %:00%)) {/echo $sd The time is now $0\.}
  259. }
  260.  
  261. on -idle "*" {
  262.   if (([$0]==[$idle_time])&&([$isaway]==[No])&&([$setaw]==[On])) {
  263.     /setaway $idlemes
  264.     /echo $sd Setting you away after being idle for $idle_time minutes.
  265.   }
  266.   /quote PONG $S
  267. }
  268.  
  269. alias i inv $,
  270. alias bkick bk $0-
  271. alias deop dop $0-
  272. alias mop mass o
  273. alias mdop mass d
  274. alias mv mass v
  275. alias mdv mass s
  276. alias mk mass k
  277. alias lk mass lk
  278. alias nickonly {^assign FUNCTION_RETURN $left($index(! $0) $0)}
  279. alias join if ((![$0])||([&]==[$[1]0])||([#]==[$[1]0])||([$0]==[0])||([-]==[$[1]0])) { //join $0- } { //join #$0- }
  280. alias leave if (![$0]) { //leave $C } { if (([&]==[$[1]0])||([#]==[$[1]0])||([$0]==[*])) { //leave $0 } { //leave #$0 } }
  281. alias safe {^assign FUNCTION_RETURN $strip(;#\(\)+*/\\=\{\}<>!$$%^~`,?|'\" $0-)}
  282. alias j join
  283. alias l {
  284.   if ([$0]) {/leave $0-}
  285.   {/leave *}
  286. }
  287.  
  288. ### TAB Message List Routines
  289.  
  290. alias addmsg {
  291.     @ matched = rmatch($0 $^\1-)
  292.     if (matched)
  293.     {
  294.         @ msglist = [$(0-${matched-1}) $(${matched+1}-)]
  295.     }
  296.     {       @ msglist = [$(0-${msgmax-1})] }
  297.     @ msgcnt = 0
  298.     ^assign -matched
  299. }
  300.  
  301. alias getmsg {
  302.     @ msgcnt = msgcnt + [$0]
  303.     if ( #msglist < msgcnt ) {@ msgcnt = 1}
  304.     if (msgcnt <= 0) {@ msgcnt =  #msglist}
  305.     @ junk = K ## [msg]
  306.     /type ^U$junk $^^{[$($msgcnt)]} 
  307. }
  308.  
  309. alias pause {
  310.   if ([$PAUSES] == [ON]) {
  311.     ^assign JUNK1 $"-=+[SLaP DaH ENtER]+=-"
  312.     ^assign -JUNK1
  313.     }
  314.   }
  315.  
  316. alias tk.delnick {
  317.         if (tk.msgcnt == 0)
  318.         {
  319.                 echo *** Nickname: $word(0 $tk.msglist) removed.
  320.                 @ tk.msglist = [$notword(1 $tk.msglist)]
  321.         }
  322.         {
  323.                 echo *** Nickname: $word(${tk.msgcnt-1} $tk.msglist) removed.
  324.                 @ tk.msglist = [$notword($tk.msgcnt $tk.msglist)]
  325.         }
  326.         type ^U
  327. }
  328. alias notword {
  329.     if ([$0]>0)
  330.     {
  331.         if (([$0]>1)&&([$0] < rmatch($~ $1-)))
  332.                 { @ nw.sep = [ ] }
  333.                 { @ nw.sep = [] }
  334.                 
  335.         @ function_return = [$(1-${[$0]-1})] ## [$nw.sep] ## [$(${[$0]+1}-)]
  336.     }
  337.     {
  338.         @ function_return = [$1-]
  339.     }
  340. }
  341. EVAL ^set input_prompt [O] |25%| Done...
  342.  
  343. alias minnot {
  344.     @ noticecnt = 0
  345.     ^assign -lastnoter
  346.     ^assign -ntemp
  347. }
  348.  
  349. alias userdomain @ function_return = LEFT($INDEX(@ $0) $0)##[@]##MID(${1+INDEX(. $0)} 99 $0)
  350.  
  351. ### Message Handler Commands
  352.  
  353. on ^msg "*" {
  354.     ^assign msghost $safe($Userhost())
  355.     if ([$floodcheck($encode($0) MSG $msghost $1-)]!=[FLOOD]) {
  356.       if ([$encode( *$0*  $1-)]!=[$lmes]) {
  357.                if ([$sdtmes]==[ON]) {/echo [$0:$Userdomain($msghost)] $1-}
  358.                {/echo [$0] $1-}
  359.       }
  360.      if ([$isaway]==[YES]) {
  361.                ^exec echo "[$Z] [$safe($0):$userdomain($msghost)] $safe($1-)" >> $awayfle
  362.            @ away_messages = away_messages + 1
  363.      }
  364.      ^assign lmes $encode( *$0*  $1-)
  365.     }
  366.     {^assign lmes $encode( *$0*  [Flood Detected])}
  367.     ^addmsg $0 $msglist
  368. }
  369.  
  370. alias dirlm {
  371.     if ([$0]) {//msg $0 $decode($lmes)}
  372.     {/say $decode($lmes)}
  373. }
  374.  
  375. on ^send_msg * {
  376.   echo [$0] $1-
  377.   ^addmsg $0 $msglist
  378.   ^tk.addmsg $0 $tk.msglist
  379.   }
  380.  
  381.  
  382. alias w {
  383.       if ([$0]){
  384.       if ([$0]==[-chops])
  385.           {
  386.           /who $0 * $1-
  387.           } 
  388.           {
  389.           /who $0-
  390.          }
  391.         }
  392.    {
  393.    /who *
  394.    }
  395. }
  396.  
  397. alias t {
  398.   if ([$0]==[#*]) {
  399.   //topic $0-
  400.   }
  401.   {
  402.   //topic $C $0-
  403.   }
  404. }
  405.  
  406. alias inv {
  407.   if ([$0]) {
  408.         if ([$1]) {
  409.         /invite $0-
  410.         }
  411.         {
  412.         /invite $0 $C
  413.         }
  414.   }
  415.   {/echo $sd You need to specify a nick to invite.}
  416. }
  417.  
  418. alias s { 
  419.   if ([$0]) {//server $0-}
  420.   {//server $default_server}
  421. }
  422.  
  423. alias fing {
  424.   if ([$0]) {/ctcp $0 FINGER}
  425.   {/ctcp $C FINGER}
  426. }
  427.  
  428. alias dop {
  429.   /quote MODE $C -oo $0 $1
  430.   if ([$2]) {/dop $2-}
  431. }
  432.  
  433. alias dcc {
  434.   //dcc $0-
  435.   if ([$0]==[SEND]) {
  436.    @ dccsent = dccsent + 1
  437.    ^timer 120 /checksend $1 $2
  438.   }
  439. }
  440.  
  441. ### Netsplit Detection
  442.  
  443. alias netclean {
  444.   foreach splittime ii
  445.   {
  446.     foreach splittime.$ii jj
  447.     {
  448.       if ( time() - splittime[$ii][$jj] > 300 )
  449.       {
  450.     foreach signcross.$(ii).$jj xx
  451.     {
  452.       foreach signcross.$(ii).$(jj).$xx yy
  453.       {
  454.         ^assign -signcross[$ii][$jj][$xx][$yy]
  455.         ^assign -signoffs[$xx][$yy]
  456.       }
  457.     }
  458.     ^assign -xx
  459.     ^assign -yy
  460.     ^assign -isbroke[$ii][$jj]
  461.     ^assign -splitname[$ii][$jj]
  462.     ^assign -splittime[$ii][$jj]
  463.       }
  464.     }
  465.   }
  466.   ^assign -ii
  467.   ^assign -jj
  468. }
  469.  
  470. alias isbogus {
  471.      if ([$3]) { @ function_return = 1 }
  472.      if (rmatch(.$1. $bogus_patterns *..*)) { @ function_return = 1 }
  473.      if (rmatch(.$2. $bogus_patterns *..*)) { @ function_return = 1 }
  474. }
  475.  
  476. on ^channel_signoff "% % %.% %.*" {
  477.       if (isbogus($1-)) {/echo *** Signoff: $1 \($2-\)}
  478.       {^netbroke $encode($tolower($0)) $encode($1) $encode($2).$encode($3) $2-}
  479. }
  480.  
  481. alias netbroke {
  482.   ^assign signcross[$2][$0][$1] 1
  483.   ^assign signoffs[$0][$1] $2
  484.   ^assign splittime[$2] $time()
  485.    if (isbroke[$2]==[]) {
  486.       ^assign isbroke[$2] 1
  487.       ^assign splitname[$2] $3-
  488.       ^xecho -window OpView $sd NETSPLIT: ($Z) servers: \($3-\)
  489.       ^xecho -window OpView $sd .:CTRL+!: WHO LEFT
  490.       ^xecho -window OpView $sd .:CTRL+#: JOIN SPLIT SERVER (new window)
  491.    }
  492. }
  493.  
  494. alias getonserv {
  495. /net $ii 
  496. }
  497.  
  498. alias netjoined {
  499.   if (signoffs[$0][$1]) {
  500.     if (isbroke[$signoffs[$0][$1]]) {^xecho -window OpView $sd Netjoined at $Z \($splitname[$signoffs[$0][$1]]\)}
  501.     ^assign -isbroke[$signoffs[$0][$1]]
  502.     ^assign -signcross[$signoffs[$0][$1]][$0][$1]
  503.     ^assign -signoffs[$0][$1]
  504.   }
  505.   {
  506.      if ([$2]==[$C]) {/echo *** $3 \($4-\) has joined channel $C}
  507.      {/echo *** $3 \($4-\) has joined channel $2\}
  508.   }
  509. }
  510.  
  511. alias netpurge {
  512.    purge isbroke
  513.    purge splitname
  514.    purge splittime
  515.    purge signcross
  516.    purge signoffs
  517. }
  518.  
  519. alias purge {
  520.    foreach $0 ii {/purge $0.$ii}
  521.    ^assign -ii
  522.    ^assign -$0
  523. }
  524.  
  525. alias lformat {
  526.    @ IRCII.word = [$1-]
  527.    if (@IRCII.word < [$0]) {@ function_return = [$([$0]IRCII.word)]}
  528.    {@ function_return = [$IRCII.word]}
  529. }
  530.  
  531. alias wholeft {
  532.   foreach signoffs ii {
  533.      foreach signoffs.$ii jj {^xecho -window OpView $sd $lformat(15 $decode($ii)) $lformat(10 $decode($jj)) $splitname[$signoffs[$ii][$jj]]}
  534.   }
  535.   ^assign -ii
  536.   ^assign -jj
  537. }
  538.  
  539. EVAL ^set input_prompt [o] |30%| Done...
  540.  
  541. ### DCC Control Parsers 
  542.  
  543. on ^msg "% XDCC *" {
  544.     ^assign XDCCUSER $safe($userhost())
  545.     if ([$floodcheck($encode($0) CTCP $XDCCUSER $2-)]!=[FLOOD]) {/xdccmsg $0 $XDCCUSER $2-}
  546. }
  547.  
  548. on ^ctcp "% % XDCC *" {
  549.     if ([$1]==[$N]) {
  550.        ^assign DCCUSER $safe($userhost())
  551.        if ([$floodcheck($encode($0) CTCP $DCCUSER $3-)]!=[FLOOD]) {/xdccmsg $0 $DCCUSER $3-}
  552.     }
  553. }
  554.  
  555. alias dccCHECK {
  556.     if (rmatch($4 ** ** ** ** ** ** **)) {
  557.     ignore_flood $0 DCC-SEND $dcc_ignore
  558.     ^assign FUNCTION_RETURN FALSE
  559.     log DCC SEND BOMB received from $0\.
  560.     }
  561.     if (rmatch($4 .* */*)) {
  562.     ignore_flood $0 HIDDEN-FILE $dcc_ignore
  563.     ^assign FUNCTION_RETURN FALSE
  564.     log DCC SEND HIDDEN FILE request received from $0\.
  565.     }
  566.     if ([$6] < 1024) {
  567.     ignore_flood $0 FAKE-DCC $dcc_ignore
  568.     ^assign FUNCTION_RETURN FALSE
  569.     log FAKE DCC SEND request received from $0\.
  570.     }
  571.     if (([$AUTOCLOSEWHENAWAY]==[ON])&&([$isaway]==[YES])) {
  572.         pecho You are AWAY: DCC request rejected and closed.
  573.     nnotice $0 I am AWAY and not accepting any DCC SENDS at this time.
  574.     //^dcc close get $0 $4
  575.     log You were AWAY: DCC SEND $4 from $0 request ignored and closed.
  576.     }
  577.     ^assign -dcc_ignore
  578. }
  579.  
  580. on ^ctcp "% % DCC SEND* * *" {
  581.    if ([$1]==[$N]) {
  582.       ^assign dcc_ignore $safe($userhost())
  583.       if ([$dccCHECK($0-)]!=[FALSE]) {
  584.      ^assign dccfile $4
  585.      if (([$AUTOGET]==[ON])&&([$AUTOCLOSE]!=[ON])) {
  586.          //^dcc rename $0 $4 $DOWNLOADDIR/$4
  587.          ^exec -name DCG$0/${DOWNLOADDIR}/$4 ls ${DOWNLOADDIR}/$4
  588.      }
  589.      {
  590.          if ([$AUTOCLOSE]==[ON]) {
  591.                  xdccecho DCC SEND $4 from $0 request ignored and closed.
  592.          //^dcc close get $0 $4
  593.          xdcclog DCC SEND $4 from $0 request ignored and closed.
  594.          }
  595.          {
  596.          if (([$AUTOGET]!=[ON])&&([$AUTOCLOSE]!=[ON])) {
  597.              //^dcc rename $0 $4 $DOWNLOADDIR/$4
  598.                      xdccecho DCC SEND $4 from $0 added to XDCC request list.
  599.              adddccrequest $DOWNLOADDIR/$4 $0
  600.              xdcclog DCC SEND $4 from $0 added to XDCC request list.
  601.          }
  602.          }
  603.      }
  604.       }
  605.    }
  606. }
  607.  
  608. on ^exec_error "DCG* *" {
  609.     @ dcclen = [$0]
  610.     @ getf = [$right(${@dcclen-3} $0)]
  611.     @ idx = [$index(/ $getf)]
  612.     @ filenme = [$right(${@getf-idx+1} $0)]
  613.     @ nicknme = [$left($idx $getf)]
  614.     xdccecho I am autogetting $filenme from $nicknme\.
  615.     //^dcc get $nicknme $filenme
  616. }
  617.  
  618. on ^exec "DCG* *" {
  619.     @ dcclen = [$0]
  620.     @ getf = [$right(${@dcclen-3} $0)]
  621.     @ idx = [$index(/ $getf)]
  622.     @ filenme = [$right(${@getf-idx+1} $0)]
  623.     @ nicknme = [$left($idx $getf)]
  624.     if ([$OVERWRITE]==[ON]) {
  625.         xdccecho Autogetting $filenme from $nicknme \(Overwriting file\).
  626.     //^dcc get $nicknme $filenme
  627.     xdcclog Autoreceived $filenme from $nicknme\. Overwrote existing file.
  628.     }
  629.     {
  630.         pecho $nicknme offered $filenme\ but it already exists.
  631.     if ([$AUTORENAME]!=[ON]) {
  632.         @ dctemp = [$"[E/X] Enter new filename or ENTER to close: "]
  633.         if (dctemp!=[]) {
  634.         if ([$[1]dctemp]!=[/]) {^assign dctemp ${downloaddir}/${dctemp}}
  635.                 pecho Getting $filenme renamed to $dctemp from $nicknme\.
  636.         //^dcc rename $nicknme $filenme $dctemp
  637.         //^dcc get $nicknme $dctemp
  638.         xdcclog Received $filenme renamed to $dctemp from $nicknme\.
  639.         }
  640.         {
  641.                /pecho Closing DCC GET request from $nicknme\.
  642.            //^dcc close get $nicknme $filenme
  643.            xdcclog Closed DCC GET request from $nicknme\.
  644.         }
  645.     }
  646.     {
  647.         ^assign dctemp $filenme\.$rand(999)
  648.             pecho Autorenaming to $dctemp\ and receiving.
  649.         xdcclog Autorenamed GET from $nicknme to $dctemp and received.
  650.         if ([$[1]dctemp]!=[/]) {^assign dctemp ${downloaddir}/${dctemp}}
  651.         //^dcc rename $nicknme $filenme $dctemp
  652.         //^dcc get $nicknme $dctemp
  653.     }
  654.     }
  655. }
  656.  
  657. ### Error Message Editing/Commenting
  658.  
  659. on ^002 "*" #
  660. on ^305 "*" #
  661. on ^306 "*" #
  662. on ^443 "*" #
  663. on ^401 "% % No such nick (channel)" #
  664. on ^333 "*" /echo *** Topic for $1 set by $2 on $mid(4 15 $stime($3))
  665.  
  666. alias do301 {
  667.     ^on ^301 "*" { 
  668.           if ([$0]!=[$N]) {/echo *** $0 is away: $1-}
  669.     }
  670. }
  671.  
  672. on ^404 "*" /check_synch $0-
  673. on ^482 "*" /check_synch $0-
  674.  
  675. alias check_synch {
  676.    if ([$0]!=[$desynch]) {
  677.     if ([$0]!=[$S]) {
  678.             /pecho $0 is desynched from the IRC Network.
  679.        ^assign desynch $0
  680.        ^timer -delete 521
  681.        ^timer -refnum 521 180 ^assign -desynch
  682.     }
  683.         {/echo *** $1-}
  684.    }
  685. }
  686.  
  687.  
  688. ### Notify Functions
  689.  
  690. on ^notify_signon "*" {
  691.    Userhost $0 -cmd if ([$4]!=[<UNKNOWN>]) {/echo $sd Signon at $Z for $0 [$safe($3)@$4] detected.}
  692. }
  693.  
  694. on ^notify_signoff "*" /echo $sd Signoff at $Z for $0 detected.
  695.  
  696. alias notify {
  697.   if ([$0]) {
  698.     if ([$left(1 $0)]==[-])
  699.     {
  700.      //notify $0-
  701.          ^assign notify.sd $rem_w($mid(1 1000 $0-) $notify.sd)
  702.     } 
  703.     {
  704.          ^assign notify.sd $notify.sd $strip(+ $0-)
  705.      //notify $0-
  706.     }
  707.     } 
  708.     {
  709.         /echo $sd Notify List: $notify.sd
  710.     //notify +
  711.     }
  712. }
  713.  
  714. alias snotify {
  715.   EVAL exec rm -rf $home/notify.sd
  716.   wait %exec
  717.   /echo $sd Saving your notify list...
  718.   @notify_size = [$#notify.sd]
  719.   @notify_counter = 0
  720.   while (notify_counter < notify_size) {
  721.     @ind =0
  722.     ^assign -notify_write
  723.      while (ind < 8) {
  724.         ^assign notify_write $notify_write $word($notify_counter $notify.sd)
  725.     @ind=ind+1
  726.     @notify_counter = notify_counter + 1
  727.      }
  728.     EVAL exec echo 'NOTIFY $notify_write' >> $home/notify.sd
  729.     wait
  730.   }
  731.   /echo $sd Notify list saved.
  732. }
  733.  
  734. alias rem_w {
  735.     @ _pattern = rmatch($0 $1-) - 1
  736.     if (_pattern != -1) {@ function_return = notw($_pattern $1-)}
  737.     {@ function_return = [$1-]}
  738. }
  739. alias notw {
  740.     if ([$0]) {@ _pad = [ ]}
  741.     {@ _pad = []}
  742.     @ _words = [$1-]
  743.     @ function_return = [$leftw($0 $1-)] ## [$_pad] ## [$restw(${[$0]+1} $1-)]
  744. }
  745. alias leftw {@ function_return = [$(1-$0)]}
  746. alias restw {@ function_return = [$(${[$0]+1}-)]}
  747.  
  748.  
  749. ### Netsplit Hack Protection 
  750.  
  751. on ^mode "%.% % *+%o* *" {
  752.    if ((isop($N $1))&&([$nhp]==[ON])) {/dop $1 $5 $6 $7 $3 $4}
  753.    pecho NETSPLIT HACK DETECTED. On: $1 By: $3-
  754.    /dop $1 $5 $6 $7 $3 $4
  755. }
  756.  
  757. ### Raw IRC MODE and KICK Protection 
  758.  
  759. alias mdact {
  760.    if (ischanop($N $1)) {
  761.     /quote MODE $1 -o $0
  762.         /echo $sd MASS DEOP DETECTED. By: $0 On: $1
  763.     if (![$donelog]) {^assign donelog On;/log $0 Mass deopped on channel $1 : Protection was activated.;^timer 30 ^assign -donelog}
  764.    }
  765.    @ mcount = 0
  766. }
  767.  
  768. alias kact {
  769.    if (ischanop($N $1)) {
  770.     /quote MODE $1 -o $0
  771.         /echo $sd MASS KICK DETECTED. By: $0 On: $1
  772.     if (![$doneklog]) {^assign doneklog On;/log $0 Mass deopped on channel $1 : Protection was activated.;^timer 30 ^assign -doneklog}
  773.    }
  774.    @ kcount = 0
  775. }
  776.  
  777. alias mdtest {
  778.     if (([$0]==[$lastmd])&&([$0]!=[$N])) {
  779.       @ mcount = mcount + tempnum
  780.       ^timer 12 @ mcount = mcount - 1
  781.       if (mcount>msensor) {/mdact $0 $1}
  782.     }
  783.     {^assign lastmd $0]}
  784. }
  785.  
  786. alias ktest {
  787.     if (([$0]==[$lastmdk])&&([$0]!=[$N])) {
  788.       @ kcount = kcount + 1
  789.       ^timer 12 @ kcount = kcount - 1
  790.       if (kcount>ksensor) {/kact $0 $1}
  791.     }
  792.     {^assign lastmdk $0}
  793. }
  794.  
  795. on -raw_irc "% MODE *" {
  796.   @ mdcnt = 0
  797.   @ nixcnt = 0
  798.   ^assign mde +
  799.   ^assign mdech $3
  800.   ^assign nix $4-
  801.   ^assign mdchnl $2
  802.   ^assign mdlam $strip(;#~- $0)
  803.   ^assign mdchop $left($index(! $0) $0)
  804.   if ([$3]==[-oo]) {
  805.     if (([$aprot]==[On])&&([$badsplit]!=[On])) {
  806.      @ tempnum = 2
  807.      /mdtest $mdchop $mdchnl
  808.     }
  809.   }
  810.   if (([$3]==[-ooo])||([$3]==[-oooo])) {
  811.     if (([$aprot]==[On])&&([$mdchop]!=[$N])) {
  812.      /quote MODE $mdchnl -o $mdchop
  813.          /echo $sd MASS DEOP DETECTED. By: $mdchop
  814.     }
  815.   }
  816.   while (mid($mdcnt 1 $mdech)!=[]) {
  817.     ^assign mdecc $mid($mdcnt 1 $mdech)
  818.     if (([$mdecc]==[-])||([$mdecc]==[+])) {^assign mde $mdecc}
  819.     {
  820.      if (match($mde$mdecc +b -b -o +k -k)) {
  821.     if ([$mde$mdecc]==[+b]) {
  822.       if (match($word($nixcnt $nix) $ownadd)) {
  823.             /echo $sd BAN ON YOU DETECTED. By: $mdchop
  824.         if (([$mdchop]!=[$N])&&(ischanop($N $mdchnl))) {
  825.          /quote MODE $mdchnl -b $word($nixcnt $nix)
  826.          /kkick $mdchnl $mdchop | User Ban |
  827.         }
  828.         /log You were banned from $mdchnl by $mdchop
  829.       }
  830.     }
  831.     if ([$mde$mdecc]==[-o]) {
  832.       if (([$aprot]==[On])&&([$badsplit]!=[On])) {
  833.           @ tempnum = 1
  834.          /mdtest $mdchop $mdchnl
  835.       }
  836.       if ([$word($nixcnt $nix)]==[$N]) {/log You were deopped on $mdchnl by $mdchop}
  837.     }
  838.     if ([$mde$mdecc]==[+k]) {
  839.       ^assign chankey $word($nixcnt $nix)
  840.           #^set status_mode  ESC KEY!
  841.       ^timer 12 checkmode
  842.     }
  843.     @ nixcnt = nixcnt + 1
  844.      }
  845.     }
  846.     @ mdcnt = mdcnt + 1
  847.   }
  848.   if ([$mode_lock]!=[none]) {
  849.     if (([$mdchop]!=[$N])&&(ischanop($N $mdchnl))) {/quote MODE $mdchnl $mode_lock}
  850.   }
  851. }
  852.  
  853. on -raw_irc "% KICK *" {
  854.   ^assign kicker $nickonly($0)
  855.   ^assign kickchan $strip(: $2)
  856.   if ([$aprot]==[On]) {/ktest $kicker $kickchan}
  857.   if ([$3]==[$N]) {
  858.     /log You were kicked from $kickchan by $kicker
  859.     if ([$REJOIN]==[ON]) {^timer 1 /quote JOIN $2}
  860.   }
  861. }
  862.  
  863. alias checkmode {
  864.   if (!rmatch($M *k*)) {^set status_mode  (+%+)}
  865.   {^timer 10 checkmode}
  866. }
  867.  
  868. EVAL ^set input_prompt [.] |35%| Done...
  869.  
  870. ^on ^FLOOD {
  871.   ^echo $0 is trying to $1 fl00d yew...
  872.   ^kick $C $0 $ilogo [.FlooD.AutokicK.]
  873. }
  874.  
  875. #/on ^ctcp "% % LAGD LAGD %" {
  876. #if ([$0]==[$N]) {
  877. #@ tme = [$4]
  878. #/eval set status_user  Lag:${time()-tme}s 
  879. #}
  880. #}
  881.  
  882. ^on -CTCP "% % PING" {
  883.   ^echo [-RioT-] $0 pynged yew.
  884.   ^notice $0  Go PiNG S0meOne Wh0 CarEZ!  $ilogo
  885. }
  886.  
  887. ^on -CTCP "% % VER" {
  888.   ^echo [-RioT-] $0 axed for your version...
  889.   ^notice $0 $ilogo version $iver..
  890. }
  891.  
  892. ^on -CTCP "% % HELP" {
  893.   ^echo [-RioT-] $0 sent you a CTCP HELP. What a fucknut..
  894.   ^notice $0 I'm no bot, fucknut! Don't ask me for help!
  895. }
  896.  
  897.  
  898. ^on -CTCP "% % FINGER" {
  899.   ^echo [-RioT-] $0 is fingering you! Yuck!
  900.   ^notice $0  That's dis-GUST-ing!! 
  901. }
  902.  
  903. ^on -CTCP "% % XDCC LIST" {
  904.   ^echo [CoKE] $0 thinks yer a vending machine..XDCC LIST. Bah!
  905.   ^notice $0 I AiNT nO VENdiN MAChiNE!!!
  906.   ^assign idiot ${idiot+1}
  907. }
  908.  
  909.  
  910.  
  911. ^alias OP {
  912.   /mode $C +oooo $0 $1 $2 $3
  913. }
  914.  
  915. ^alias TOP {
  916.   /mode $C +o $0
  917.   /mode $C +oo $0 $0
  918.   /mode $C +ooo $0 $0 $0
  919.   /mode $C +oo $0 $0
  920.   /mode $C +o $0
  921. }
  922.  
  923. ^alias TDOP {
  924.   /mode $C -o $0
  925.   /mode $C -oo $0 $0
  926.   /mode $C -ooo $0 $0 $0
  927.   /mode $C -oo $0 $0
  928.   /mode $C -o $0
  929. }
  930.  
  931. ^alias 5OP {
  932.   /me grabs $0 by his smelly shirt, and screams:
  933.   /say YA GOT DAH +0!! You got that, muthaphucka? DO YOU??
  934.   /mode $C +o $0
  935. }
  936.  
  937.  
  938. ^alias CK {
  939.   /kick $C $0 $1- $ilogo ]ik[
  940. }
  941.  
  942. ^alias HPKICK {
  943.   /say $ilogo HiPPyKiCK!
  944.   /say How do you hide money from a hippie?
  945.   /me watches the clock tick to zero...*buzz*
  946.   /say Hide it under the soap!
  947.   /kick $C $0 Gwaaaar!! $ilogo ]hpk[
  948. }
  949.  
  950. ^alias PKICK {
  951.   /me pulls out the pipe and packs it full of some funky Op.
  952.   /me passes the pipe to $0 and watches him take a hit.
  953.   /mode $C +o $0
  954.   /say Heh... Pot Op... :) [Tha Shit!]
  955.   /me watches in amusement as the DEA squad kicks in $C's door.
  956.   /me grins at they gun the Op smoker down and drag him out!
  957.   /kick $C $0 I'm not a chicken..yer a turkey! $ilogo ]ipk[
  958. }
  959.  
  960. ^alias S8NKICK {
  961.   /say $ilogo SaTaNKiCK!
  962.   /me raises his hands and chants monotonously...
  963.   /me draws his sacrificial dagger and stabs $0 in the chest!
  964.   /kick $C $0 Malleus...malleus... $ilogo ]s8k[
  965. }
  966.  
  967. alias NK {
  968.   /kick $C $0 $ilogo <$1- |NK|>
  969. }
  970.  
  971. ^alias nsautokick {
  972.     ^if ([$nsknum]==[2]) { /nsbankick $0 }
  973.   /kick $C $0 $ilogo ]NetseX.AutokicK[
  974.     ^assign nsknum ${nsknum+1}
  975. }
  976. EVAL ^set input_prompt [o] |40%| Done...
  977. ^alias nsbankick {
  978.   /say  *$0* : Three strikes, yer out, netsex-putz.
  979.   /mode $C -o+b $0 $0!*@*.*
  980.   /kick $C $0 $ilogo ]Netsex? Here's a foot up yer ass.[ ]nsbk[
  981. }
  982.  
  983. alias bk {
  984.   if ([$0])
  985.   {
  986.     @ param = [$0]
  987.     if (index(! $0)!=-1)
  988.     {
  989.          @ band = [$1]
  990.          @ kbreason = [$2-]
  991.     }
  992.     {
  993.          @ band = [$0]
  994.          @ kbreason = [$1-]
  995.     }
  996.     if ([$kbreason])
  997.     {
  998.          ^assign kbreason  ${kbreason} 
  999.     }
  1000.     {
  1001.          ^assign kbreason $pk
  1002.     }
  1003.     if ([$param]==[$band])
  1004.     {
  1005.          @ param = [!$defban]
  1006.     }
  1007.     Userhost $band -CMD if ([$4]!=[<UNKNOWN>])
  1008.     {
  1009.          @ theban = []
  1010.          if ([$param]==[!n])
  1011.          {
  1012.         ^assign theban $nban($3 $4)
  1013.          }
  1014.          if ([$param]==[!e])
  1015.          {
  1016.         ^assign theban $0!*@*
  1017.          }
  1018.          if ([$param]==[!d])
  1019.          {
  1020.         ^assign theban $dban($3 $4)
  1021.          }
  1022.          if ([$param]==[!h])
  1023.          {
  1024.         ^assign theban $hban($3 $4)
  1025.          }
  1026.          if ([$param]==[!s])
  1027.          {
  1028.         ^assign theban $sban($3 $4)
  1029.          }
  1030.          if ([$param]==[!?])
  1031.          {}
  1032.          {
  1033.         if ([$theban]==[])
  1034.         {
  1035.           /nban $3 $4 theban
  1036.           wait
  1037.         }
  1038.         /quote MODE $C -o+b $0 $theban
  1039.         /kick $C $0 $kbreason
  1040.          }
  1041.     }
  1042.     {/echo $sd I can't find $0 on IRC.}
  1043.   }
  1044.   {/echo $sd Usage: /BKick <BanType> <Nick> <Reason>}
  1045. }
  1046.  
  1047.  
  1048. ^alias BAN {
  1049.   /mode $C +b
  1050. }
  1051.  
  1052. ^alias NICKBAN {
  1053.   /mode $C +b $0
  1054. }
  1055.  
  1056. ^alias VER {
  1057.   ^echo [-RioT-] Yew RuNNiN $ilogo... the none HOMMiE G SCRiPT!
  1058. }
  1059.  
  1060. ^alias M {
  1061.   /msg
  1062. }
  1063.  
  1064. ^alias BYE {
  1065.   /signoff $ilogo : $0-
  1066. }
  1067.  
  1068. ^alias CAT {
  1069.   ^exec cat $0
  1070. }
  1071.  
  1072. ^alias UNFLASH {
  1073. ^set status_user c
  1074. ^set status_user \;\24r
  1075. ^set status_user m
  1076. ^set status_user ?5l
  1077. ^set status_user  [-RioT-]
  1078. ^set status_clock c
  1079. ^set status_clock \;\24r
  1080. ^set status_clock m
  1081. ^set status_clock ?5l
  1082. ^set status_clock 666
  1083. timer 3 ^set status_clock  %T
  1084. echo [-RioT-] SLaP DuH CoNTRoL-L Ta FiX.....
  1085. }
  1086.  
  1087. on ^send_public "*" {
  1088.     if ([$0]==C) {/echo <${N}> $1-} {/echo -> <${N}> $1-}
  1089. }
  1090.  
  1091.  
  1092. alias flash {
  1093. if (match($1 basic killer zmodem)) {
  1094. ^assign fria $1
  1095. }
  1096. {
  1097. ^assign fria ${friar}
  1098. }
  1099. if ([$0]) {
  1100. userhost $0 -cmd if ([$4]!=[<UNKNOWN>]) {
  1101. ^echo [-RioT-]  Sending a flash to $0 \($strip(~ $3)@$4\)
  1102. ^exec flash $strip(~ $3)@$4 $fria
  1103. }
  1104. {
  1105. ^echo [-RioT-]  I can't find $0.
  1106. }
  1107. }
  1108. {
  1109. ^echo [-RioT-]  You must specify a nick.
  1110. }
  1111. ^timer 2 ^assign -fria
  1112. }
  1113.  
  1114. alias superflash {
  1115. if (match($1 basic killer zmodem)) {
  1116. ^assign frias $1
  1117. }
  1118. {
  1119. ^assign frias ${friar}
  1120. }
  1121. if ([$0]) {
  1122. userhost $0 -cmd if ([$4]!=[<UNKNOWN>]) {
  1123. ^echo [CoKE]  Sending a ${frias} flash to $0 \($strip(~ $3)@$4\)
  1124. ^exec superflash $strip(~ $3)@$4 $frias
  1125. }
  1126. {
  1127. ^echo [CoKE]  I can't find $0.
  1128. }
  1129. }
  1130. {
  1131. ^echo [CoKE]  You must specify a nick.
  1132. }
  1133. ^timer 2 ^assign -frias
  1134. }
  1135.  
  1136. alias nuke {
  1137. if (match($1 basic killer zmodem)) {
  1138. ^assign nuk $1
  1139. }
  1140. {
  1141. ^assign nuk ${friar}
  1142. }
  1143. if ([$0]) {
  1144. userhost $0 -cmd if ([$4]!=[<UNKNOWN>]) {
  1145. ^echo [CoKE]  Sending a ${nuk} nuke to $0 \($strip(~ $3)@$4\)
  1146. ^exec nuke $strip(~ $3)@$4 $nuk
  1147. }
  1148. {
  1149. ^echo [CoKE]  I can't find $0.
  1150. }
  1151. }
  1152. {
  1153. ^echo [CoKE]  You must specify a nick.
  1154. }
  1155. ^timer 2 ^assign -nuk
  1156. }
  1157.  
  1158.  
  1159. alias SK {
  1160.   /me ! SlasheR STRIKES AGAIN! 
  1161.   /me ! The hand of Fate lands on $0!
  1162.   /kick $C $0 $ilogo |SLASH/KiCK|
  1163. }
  1164.  
  1165. alias setaway {
  1166.   if ([$0]) {
  1167.   ^assign reason $strip(;#{}=!"'`- $0-)
  1168.   }
  1169.   {^assign reason $defumes}
  1170.   /^away - $reason - logging if yur lucky...[-RioT-]
  1171.   /me is away - $reason - all messages will be saved. [-RioT-]
  1172.   ^assign isaway Yes
  1173.   ^exec echo "[: $Z :] Setaway: $reason " >> $awayfle
  1174.   echo [-RioT-] You are set as being away.
  1175. }
  1176. EVAL ^set input_prompt [O] |45%| Done...
  1177. alias setback {
  1178.   ^assign isaway No
  1179.   //me iZ BacK!
  1180.   /^away
  1181.   /exec cat $awayfle
  1182.    ^assign temp $"Save these messages: "
  1183.    if (([$temp]==[n])||([$temp]==[no]))
  1184.         {
  1185.         /exec rm $awayfle
  1186.         echo $sd Setaway message list has been deleted.     
  1187.         }
  1188.    {echo $sd Setaway message list has not been deleted.;^assign -temp}
  1189.    ^assign -temp
  1190. }
  1191.  
  1192. ^bind ^X3 parse_command pewps
  1193. ^bind ^X1 parse_command do_shrink
  1194. ^bind ^X2 parse_command do_grow
  1195. alias pewps {
  1196. ^window back
  1197. ^c
  1198. ^window back
  1199. }
  1200. alias do_grow {
  1201. if ([$ink]>=[4]) {
  1202. @ ink = ink + 1
  1203. ^window shrink 1
  1204. ^echo Your MSG Window size is now ${ink} lines.
  1205. }
  1206. }
  1207. alias do_shrink {
  1208. if ([$ink]>=[5]) {
  1209. @ ink = ink - 1
  1210. ^window grow 1
  1211. ^echo Your MSG Window size is now ${ink} lines.
  1212. }
  1213. }
  1214. alias winmsg {
  1215. if (rmatch($0 ON OFF)) {
  1216. ^assign inky $onoff($0)
  1217. ^echo $ilogo GUi System $0....
  1218. }
  1219. {
  1220. ^echo $ilogo GUi System $0....
  1221. }
  1222. if ([$0]==[ON]) {
  1223. ^do_this_shit
  1224. }
  1225. if ([$0]==[OFF]) {
  1226. ^assign inks jeah
  1227. ^undo_this_shit
  1228. }
  1229. }
  1230. alias winbox {
  1231. if (rmatch($0 top bottom)) {
  1232. ^assign inkb $0
  1233. ^echo [-RioT-]  Your MSG Window will be at the ${inkb} now.
  1234. if ([$inky]==[On]) {
  1235. ^assign inks jeah
  1236. ^undo_this_shit
  1237. ^do_this_shit
  1238. }
  1239. }
  1240. {
  1241. ^echo [-RioT-]  Your MSG Window is set to be at the ${inkb}.
  1242. }
  1243. }
  1244. alias winsize {
  1245. if ([$0]) {
  1246. if ([$0]>=[4]) {
  1247. ^assign inks jeah
  1248. ^assign ink $0
  1249. ^echo [-RioT-]  Your MSG Window size will now be ${ink} lines.
  1250. ^undo_this_shit
  1251. ^do_this_shit
  1252. }
  1253. {
  1254. ^echo [-RioT-]  Your MSG Window cannot be less than 4 lines.
  1255. }
  1256. }
  1257. {
  1258. ^echo [-RioT-]  Your MSG Window size is ${ink} lines.
  1259. }
  1260. }
  1261. alias undo_this_shit {
  1262. if ([$inks]==[jeah]) {
  1263. ^window back
  1264. ^window kill
  1265. ^assign -inks
  1266. ^on public_other -
  1267. }
  1268. }
  1269. alias do_this_shit {
  1270. ^eval assign ZEN $C
  1271. ^eval assign in ${11-ink}
  1272. ^eval window new
  1273. if ([$inkb]==[top]) {
  1274. ^eval window shrink $in
  1275. }
  1276. {
  1277. ^eval window grow $in
  1278. ^eval window back
  1279. }
  1280. ^eval window name -RioT-
  1281. ^eval window level msg,notice
  1282. ^eval window back
  1283. ^eval window name 1
  1284. ^eval window level crap,public,wall,wallop,note
  1285. ^eval join $ZEN
  1286. ^on ^public_other * {
  1287. if ([$inkb]==[bottom]) {
  1288. xecho -window 2 <$0:$1> $2-
  1289. }
  1290. {
  1291. xecho -window 1 <$0:$1> $2-
  1292. }
  1293. }
  1294. ^window move 1
  1295. /window grow 4
  1296. }
  1297. set status_format [-RioT-] [|%T |] (%*%@)%N%#%S%H%B%Q%A%C%+%I%O%M%F %W%>%U 
  1298. on ^list * echo $[15]0 $[4]1 $2-
  1299. on ^who Channel comment
  1300. on ^names * echo $[15]0 $1-
  1301.  
  1302. alias GUI {
  1303. ^winmsg $0
  1304. }
  1305. EVAL ^set input_prompt [0] |50%| Done...
  1306. alias elite {
  1307. if ([$elon]==[on]&&[$dont]!=[do]) {
  1308. ^elon
  1309. }
  1310. if ([$elon]==[off]&&[$dont]!=[do]) {
  1311. ^eloff
  1312. }
  1313. if ([$0]==[a]) {type /}
  1314. ^assign -dont
  1315. }
  1316. alias elon {
  1317. ^assign dont do
  1318. ^BIND a TYPE_TEXT 4
  1319. ^BIND b TYPE_TEXT B
  1320. ^BIND c TYPE_TEXT <
  1321. ^BIND d TYPE_TEXT |>
  1322. ^BIND e TYPE_TEXT 3
  1323. ^BIND f TYPE_TEXT F
  1324. ^BIND g TYPE_TEXT G
  1325. ^BIND h TYPE_TEXT |-|
  1326. ^BIND i TYPE_TEXT i
  1327. ^BIND j TYPE_TEXT J
  1328. ^BIND k TYPE_TEXT |<
  1329. ^BIND l TYPE_TEXT L
  1330. ^BIND m TYPE_TEXT M
  1331. ^BIND n TYPE_TEXT |\\|
  1332. ^BIND o TYPE_TEXT ()
  1333. ^BIND p TYPE_TEXT P
  1334. ^BIND q TYPE_TEXT Q
  1335. ^BIND r TYPE_TEXT R
  1336. ^BIND s TYPE_TEXT $$
  1337. ^BIND t TYPE_TEXT +
  1338. ^BIND u TYPE_TEXT U
  1339. ^BIND v TYPE_TEXT \\/
  1340. ^BIND w TYPE_TEXT \\/\\/
  1341. ^BIND x TYPE_TEXT X
  1342. ^BIND y TYPE_TEXT Y
  1343. ^BIND z TYPE_TEXT Z
  1344. ^BIND / parse_command elite a
  1345. ^echo $ilogo ELiT0 BURiT0 is now ON....
  1346. ^assign elon off
  1347. }
  1348.  
  1349. alias eloff {
  1350. ^assign dont do
  1351. ^BIND a SELF_INSERT
  1352. ^BIND b SELF_INSERT
  1353. ^BIND c SELF_INSERT
  1354. ^BIND d SELF_INSERT
  1355. ^BIND e SELF_INSERT
  1356. ^BIND f SELF_INSERT
  1357. ^BIND g SELF_INSERT
  1358. ^BIND h SELF_INSERT
  1359. ^BIND i SELF_INSERT
  1360. ^BIND j SELF_INSERT
  1361. ^BIND k SELF_INSERT
  1362. ^BIND l SELF_INSERT
  1363. ^BIND m SELF_INSERT
  1364. ^BIND n SELF_INSERT
  1365. ^BIND o SELF_INSERT
  1366. ^BIND p SELF_INSERT
  1367. ^BIND q SELF_INSERT
  1368. ^BIND r SELF_INSERT
  1369. ^BIND s SELF_INSERT
  1370. ^BIND t SELF_INSERT
  1371. ^BIND u SELF_INSERT
  1372. ^BIND v SELF_INSERT
  1373. ^BIND w SELF_INSERT
  1374. ^BIND x SELF_INSERT
  1375. ^BIND y SELF_INSERT
  1376. ^BIND z SELF_INSERT
  1377. ^BIND / SELF_INSERT
  1378. ^echo $ilogo ELiT0 BURiT0 is now OFF....
  1379. ^assign elon on
  1380. }
  1381.  
  1382. EVAL ^set input_prompt [O] |55%| Done...
  1383.  
  1384. ### Mass Deop, Op, Give Voice, Remove Voice, LK, and Masskick
  1385. alias mass {
  1386.   if ([$0]) {
  1387.    if (([$0]!=[lk])&&([$0]!=[k])) {
  1388.     if ([$0]==[d]) {@ mass_mode = [-ooo];^on ^names "*" /findops $$1-\;^on ^names - "*"}
  1389.     {
  1390.        if ([$0]==[o]) {@ mass_mode = [+ooo]}
  1391.        if ([$0]==[v]) {@ mass_mode = [+vvv]}
  1392.        if ([$0]==[s]) {@ mass_mode = [-vvv]}
  1393.        if ([$mass_mode]!=[]) {^on ^names "*" /findnonops $$1-\;^on ^names - "*"}
  1394.     }
  1395.     //names $C
  1396.     wait -CMD domassmode
  1397.    }
  1398.    {
  1399.     if ([$0]==[lk]) {
  1400.     ^on ^names "*" {^assign lamkick $1-}
  1401.     ^names $C
  1402.     wait
  1403.     ^assign lktmp no
  1404.     @ lcnt = 0
  1405.         /pecho LKick started, please wait.
  1406.     while ([$(#lamkick)]>lcnt) {
  1407.     if (!match(@* $word($lcnt $lamkick))) {
  1408.       if ([$word($lcnt $lamkick)]!=[$N]) {
  1409.         if ([!$word($lcnt $lamkick)]!=[!]) {
  1410.          ^assign bkicked $word($lcnt $lamkick) ${bkicked}
  1411.          ^assign lktmp ppl
  1412.         }
  1413.       }
  1414.     }
  1415.     @ lcnt = lcnt + 1
  1416.      }
  1417.      if ([$lktmp]==[ppl]) {
  1418.      @ lcnt = 0
  1419.      while ([$(#bkicked)]>=lcnt) {
  1420.        /kkick $C $word($lcnt $bkicked) $pk
  1421.        @ lcnt = lcnt + 1
  1422.      }
  1423.           /pecho $bkicked have been kicked from $C.
  1424.       }
  1425.           {/pecho Everyone is opped on $C\.}
  1426.       ^on names - "*"
  1427.       ^assign -bkicked
  1428.       ^assign -lcnt
  1429.       ^assign -lktmp
  1430.     }
  1431.     if ([$0]==[k]) {
  1432.         /pecho Masskicking everyone from $C\.
  1433.     ^on ^names "*" findops $$1-\;^on ^names - "*"
  1434.     ^names $C
  1435.      wait
  1436.     ^assign kicklist $mdchange
  1437.     /kickthem
  1438.     ^assign -mdchange
  1439.     ^on ^names "*" findnonops $$1-\;^on ^names - "*"
  1440.     ^names $C
  1441.      wait
  1442.     ^assign kicklist $mdchange
  1443.     /kickthem
  1444.     ^assign -mdchange
  1445.     }
  1446.    }
  1447.  }
  1448.  {
  1449.       pecho Usage: /MASS <o,d,v,s,k,lk> - O to op all non channel ops,
  1450.       pecho d to deop all ops on the channel, v to give non-ops voice,
  1451.       pecho and s to remove voice from all non-ops \(silence\), lk to
  1452.       pecho mass kick all non-ops from the channel, and k to masskick 
  1453.       pecho EVERYONE from your current channel.
  1454.  }
  1455. }
  1456.  
  1457. alias domassmode {
  1458.     @ mdchangecnt = 1
  1459.     while ([$(#mdchange)]>=mdchangecnt) {
  1460.     /mmode $C $mass_mode $decode($word(${mdchangecnt-1} $mdchange)) $decode($word($mdchangecnt $mdchange)) $decode($word(${mdchangecnt+1} $mdchange))
  1461.     @ mdchangecnt = mdchangecnt + 3
  1462.     }
  1463.     ^assign -mdchangecnt
  1464.     ^assign -mdchange
  1465.     ^assign -mass_mode
  1466. }
  1467.  
  1468. alias findops {
  1469.    if (([$[1]0] == [@]) && (match($0 @${N} $N)==0)) {^assign mdchange $encode($strip(@ $0)) ${mdchange}}
  1470.    if (([$[1]1] == [@]) && (match($1 @${N} $N)==0)) {^assign mdchange $encode($strip(@ $1)) ${mdchange}}
  1471.    if (([$[1]2] == [@]) && (match($2 @${N} $N)==0)) {^assign mdchange $encode($strip(@ $2)) ${mdchange}}
  1472.    if ([$3]) {/findops $3-}
  1473. }
  1474.  
  1475. alias findnonops {
  1476.    if (([$[1]0] != [@]) && (match($0 @${N} $N)==0)) {^assign mdchange $encode($strip(+ $0)) ${mdchange}}
  1477.    if (([$[1]1] != [@]) && (match($1 @${N} $N)==0)) {^assign mdchange $encode($strip(+ $1)) ${mdchange}}
  1478.    if (([$[1]2] != [@]) && (match($2 @${N} $N)==0)) {^assign mdchange $encode($strip(+ $2)) ${mdchange}}
  1479.    if ([$3]) {/findnonops $3-}
  1480. }
  1481.  
  1482. alias kickthem {
  1483.    @ mcnt = 0
  1484.    if ([$kicklist]) {
  1485.        while ([$(#kicklist)]>mcnt){
  1486.        /kkick $C $decode($word($mcnt $kicklist)) $pk
  1487.        @ mcnt = mcnt + 1
  1488.        if ([$(#kicklist)]>mcnt) {
  1489.            /kkick $C $decode($word($mcnt $kicklist)) $pk
  1490.            @ mcnt = mcnt + 1
  1491.        }
  1492.        }
  1493.    }
  1494.    ^assign -kicklist
  1495.    ^assign -mcnt
  1496. }
  1497.  
  1498. EVAL ^set input_prompt [o] |55%| Done...
  1499. alias wordkick {
  1500.   if ([$0] == [OFF]) {
  1501.     EVAL ^on raw_irc - "% PRIVMSG #% *$AKICK*"
  1502.     ^assign -AKICK
  1503.     me : Wordkicking is off.
  1504.     }
  1505.     {
  1506.       EVAL ^on raw_irc - "% PRIVMSG #% *$AKICK*"
  1507.       ^assign AKICK $0-
  1508.       EVAL ^on -raw_irc "% PRIVMSG #% *$AKICK*" {
  1509.         if ([$nickonly($0)] != [$N]) {//kick $2 $nickonly($0) You said '$AKICK' <$ilogo |WK| }
  1510.         }
  1511.       me : Autokick phrase is now '$AKICK' $ilogo
  1512.     }
  1513.   }
  1514.  
  1515. alias jokemassdeop {
  1516.   ^set display off
  1517.   if ([$0]) {^assign FAKER $0}
  1518.     {/EVAL ^assign FAKER $N}
  1519.   on ^who * {
  1520.     if ([$1] != [$FAKER]) {
  1521.       if (rmatch($2 *@*)) {
  1522.         ^assign mdopz $1 ${mdopz}
  1523.         }
  1524.       }
  1525.     }
  1526.   ^who -chops *
  1527.     wait
  1528.   ^set display on
  1529.   listmdopfake $mdopz
  1530.   ^assign -mdopz
  1531.   ^on who - *
  1532.   ^assign -FAKER
  1533.   }
  1534. alias jokemode {/me change "$1-" on channel $C by $0}
  1535. EVAL ^set input_prompt [.] |60%| Done...
  1536. alias listmdopfake {
  1537.   if ([$3])
  1538.   {
  1539.     EVAL /me change "-ooo $0 $1 $2" on channel $C by $FAKER
  1540.     /listmdopfake $3-
  1541.   }
  1542.   {
  1543.     if ([$2])
  1544.     {
  1545.       EVAL /me change "-ooo $0 $1 $2" on channel $C by $FAKER
  1546.     }
  1547.     {
  1548.       if ([$1])
  1549.       {
  1550.         EVAL /me change "-oo $0 $1" on channel $C by $FAKER
  1551.       }
  1552.       {
  1553.         if ([$0])
  1554.         {
  1555.           EVAL /me change "-o $0" on channel $C by $FAKER
  1556.         }
  1557.       }
  1558.     }
  1559.   }
  1560.   }
  1561.  
  1562. ### XDCC File Transfer Script
  1563.  
  1564. alias updatecount {
  1565.    if ([$counting]!=[On]) {
  1566.     ^assign counting On
  1567.         @ dccsent = 0
  1568.         ^on ^window * {
  1569.         if ([$1]==[SEND]) {@ dccsent = dccsent + 1}
  1570.         }
  1571.          //dcc list
  1572.          wait
  1573.         ^on ^window -*
  1574.         ^timer 1 /chgst
  1575.         ^assign -counting
  1576.         ^assign -gonnacount
  1577.    }
  1578. }
  1579.  
  1580. on -window "% ??? DCC SEND:* lost" {
  1581.   if ([$1]==[***]) {/subdccs}
  1582. }
  1583.  
  1584. on -window "% ??? DCC SEND:* %sec" {
  1585.   if ([$1]==[***]) {/subdccs}
  1586. }
  1587.  
  1588. on -window "% ??? DCC SEND:* closed" {
  1589.   if ([$1]==[***]) {/subdccs}
  1590. }
  1591.  
  1592. alias subdccs {
  1593.   if (dccsent>0) {@ dccsent = dccsent - 1}
  1594.   if (![$gonnacount]) {
  1595.     ^assign gonnacount On
  1596.     ^timer 60 /updatecount
  1597.   }
  1598. }
  1599.  
  1600. alias log {
  1601.    ^assign ltext $safe($0-)
  1602.    ^exec echo "| $Z | $ltext " >> $sdlog
  1603. }
  1604.  
  1605. alias iswaiting {
  1606.    ^assign dccfilename none
  1607.    ^assign liststarted no
  1608.    ^assign listdone no
  1609.    ^assign chnick $0
  1610.    ^assign chfile $1
  1611.    ^assign dccwaiting no
  1612.     ^on ^window "*" {
  1613.     if (([$listdone]==[no])&&([$liststarted]==[yes])) {
  1614.         if (([$1]==[SEND])&&([$3]==[Waiting])&&(match(*$chfile $6)!=0)&&([$2]==[$chnick])) {
  1615.          ^assign dccwaiting yes
  1616.          ^assign dccfilename $6
  1617.         }}
  1618.         {if (([$listdone]==[no])&&([$1]==[Type])&&([$2]==[nick])&&([$3]==[status])) {^assign liststarted yes}
  1619.         {xecho -window $0 $1-}}}
  1620.         //dcc list
  1621.         ^on ^window -*
  1622.         if ([$liststarted]==[no]) {^assign dccwaiting dunno}
  1623.     ^assign -listdone
  1624.     ^assign -liststarted
  1625.     ^assign -chnick
  1626.     ^assign -chfile
  1627. }
  1628. EVAL ^set input_prompt [o] |65%| Done...
  1629. alias checksend {
  1630.     /iswaiting $0 $1
  1631.     if ([$dccwaiting]==[dunno]) {^timer 1 checksend $0 $1}
  1632.     {if ([$dccwaiting]==[yes]) {
  1633.           if ([$lastnotdcc]!=[$0]) {/nnotice $0 You have DCCs pending. Type /DCC GET $N\.}
  1634.     ^assign lastnotdcc $0
  1635.     ^timer -delete 224
  1636.     ^timer -refnum 224 15 ^assign -lastnotdcc
  1637.     ^timer 60 closesend $0 $1
  1638.     }}
  1639.     ^assign -dccwaiting
  1640.     ^assign -dccfilename
  1641. }
  1642.  
  1643. alias closesend {
  1644.     /iswaiting $0 $1
  1645.     if ([$dccwaiting]==[dunno]) {^timer 1 closesend $0 $1}
  1646.     {if ([$dccwaiting]==[yes]) {if ([$lastnotdcc]!=[$0]) {
  1647.     /XDCCecho One or more DCC SENDs to $0 have timed out. Closing.}
  1648.     ^assign lastnotdcc $0
  1649.     ^timer -delete 224
  1650.     ^timer -refnum 224 30 ^assign -lastnotdcc
  1651.     //^dcc close send $0 $dccfilename
  1652.     if (dccsent>0) {@ dccsent = dccsent - 1}
  1653.     }}
  1654.  ^assign -dccfilename
  1655. }
  1656.  
  1657. alias xdccmsg {
  1658.          if (match($2 HELP LIST SEND))
  1659.          {$2COMMAND $0 $1 $3-}
  1660.          {/nnotice $0 Try /MSG $N XDCC HELP.}
  1661. }
  1662.  
  1663. alias ctcpmsg {
  1664.    if (rmatch($3 HELP LIST SEND)) {
  1665.            if (!rmatch($2 #*)) {/$3COMMAND $0 $1 $4-}
  1666.            {
  1667.                    if ([$3]!=[LIST]) {/echo $sd Channel-wide XDCC command from $0\: $3\.}
  1668.                    {/LISTCOMMAND $0 $1 $4-}
  1669.            }
  1670.    }
  1671.    {/nnotice $0 Try /Msg $N XDCC HELP.}
  1672. }
  1673.  
  1674. alias HELPcommand {
  1675.         if ([$1]!=[$LASTHELPED]) {
  1676.          /nnotice $0 /CTCP $N XDCC LIST - to get the list of offered packs.
  1677.          /nnotice $0 /CTCP $N XDCC LIST #N - to get more info on pack #N.
  1678.          /nnotice $0 /CTCP $N XDCC SEND #N - to send pack #N.
  1679.          if (([$SECURITYFLAG]==[OFF])||([$isonsecurlist($1)]==[YES]))
  1680.          {}
  1681.          {/nnotice $0 No files offered.}
  1682.         }
  1683.    ^assign LASTHELPED $1
  1684. }
  1685. alias LISTcommand {
  1686.     if ([$1]!=[$lastlister]) {
  1687.          if (([$SECURITYFLAG] == [OFF]) || ([$isonsecurlist($1)] == [YES]))
  1688.          { if ([$2])
  1689.                  { if ([$[1]2] == [#])
  1690.                    { @ TEMP = [$2]
  1691.                         @ NUM  = right(${@TEMP-index(# $2)+1} $2)
  1692.                         if (NUM <= TOTPACK)
  1693.                         { xdccecho List of pack #$NUM request received from $0
  1694.                           @ TEMPFILE = []
  1695.                           @ TEMPTOT  = 0
  1696.                           @ COUNT0   = 1
  1697.                           /nnotice $0 Pack: $ARRAYDESC[$NUM]
  1698.                           /nnotice $0 Length     File
  1699.                           while (COUNT0 <= ARRAYTOTF[$NUM])
  1700.                                 { /nnotice $0 $[10]ARRAYLENG[$NUM][$COUNT0] $X_FILE($ARRAYFILE[$NUM][$COUNT0])
  1701.                                   @ TEMPTOT  = TEMPTOT + ARRAYLENG[$NUM][$COUNT0]
  1702.                                   @ COUNT0   = COUNT0 + 1 }
  1703.                           /nnotice $0 ---------- --------------------------------
  1704.                           /nnotice $0 $[10]TEMPTOT $ARRAYTOTF[$NUM] file/es }
  1705.                         { /nnotice $0 Pack $2 doesn't exist, try /MSG $N XDCC LIST } }
  1706.                    { /nnotice $0 XDCC LIST $2 is invalid. /MSG $N XDCC HELP.} }
  1707.                  { if (TOTPACK > 0)
  1708.                    { xdccecho All pack list request received from $0
  1709.                         @ COUNT0 = 1
  1710.                         /nnotice $0 Pack Description
  1711.                         while (COUNT0 <= TOTPACK)
  1712.                            { /nnotice $0 #$[3]COUNT0 $ARRAYDESC[$COUNT0]
  1713.                                 @ COUNT0 = COUNT0 + 1 } }
  1714.                    { /nnotice $0 No files offered. } } }
  1715.           { xdccecho Unregistered user XDCC LIST REQUEST from $0\.
  1716.             /nnotice $0 No files offered.}
  1717.          }
  1718.     ^assign lastlister $1
  1719. }
  1720. alias SENDcommand {
  1721.          if (([$SECURITYFLAG] == [OFF]) || ([$isonsecurlist($1)] == [YES]))
  1722.          { if ([$AUTOSEND] == [ON] || [$MYSEND] == [YES])
  1723.                  { if ([$2])
  1724.                    { if ([$[1]2] == [#])
  1725.                         { @ TEMP = [$2]
  1726.                           @ NUM  = right(${@TEMP-index(# $2)+1} $2)
  1727.                           if (NUM <= TOTPACK) { 
  1728.                         @ dcctmp = dcclimit - dccsent
  1729.                          if (ARRAYTOTF[$NUM]>dcctmp) {
  1730.                                 /xdccecho Sending $2 to $0 would exceed my limit of $dcclimit - $dccsent active.
  1731.                                 /nnotice $0 I already have $dccsent DCC's active. Try later please.
  1732.                           }        
  1733.                                 {/xdccecho Sending $2 to $0\.
  1734.                           /nnotice $0 Sending you $ARRAYDESC[$NUM]
  1735.                           @ COUNT1 = 1
  1736.                                   @ TEMPTOT = 0
  1737.                                   while (COUNT1 <= ARRAYTOTF[$NUM])
  1738.                                         { /^dcc send $0 $ARRAYFILE[$NUM][$COUNT1]
  1739.                                           @ TEMPTOT = TEMPTOT + ARRAYLENG[$NUM][$COUNT1]
  1740.                                           @ COUNT1 = COUNT1 + 1 }
  1741.                                   /nnotice $0 Total files sent: $ARRAYTOTF[$NUM]
  1742.                                   /nnotice $0 You'll need $TEMPTOT bytes.}}
  1743.                                 { /nnotice $0 File $2 does not exist. /MSG $N XDCC LIST.} }
  1744.                         { /nnotice $0 XDCC SEND $2 is invalid. /MSG $N XDCC HELP.}}
  1745.                    { /nnotice $0 There is no such file. Try /msg $N XDCC HELP.} }
  1746.                  {/nnotice $0 This function has been dissabled.} }
  1747.          { xdccecho Unregistered user XDCC SEND REQUEST from $0\.
  1748.            /nnotice $0 XDCC Security is on. You are not registered.}
  1749. }
  1750.  
  1751. alias xdcc {
  1752.          if (match($0 SEC LOAD PSEND CLOSE SAVE GET DIR AUTOCLOSE HELP LIST PLIST SEND STATUS NOTICE OFFER DOFFER LIMIT AUTOGET AUTOSEND NOISE GLIST OVERWRITE ULDIR DLDIR))
  1753.          {$0MCOMMAND $1-}
  1754.          {/HELPMCOMMAND}
  1755. }
  1756.  
  1757. alias HELPMCOMMAND {/echo $sd Try /XDCC HELP. \(or /XDCCSTUFF).}
  1758. EVAL ^set input_prompt [O] |65%| Done...
  1759. alias LIMITmcommand {
  1760.     if ([$0]) {^assign TMPLIMIT $0 }
  1761.     {^assign TMPLIMIT $word(0 $"[-RioT-] Enter new limit for DCC SENDS: ")}
  1762.     if ([$TMPLIMIT]!=[]) {
  1763.     ^assign dcclimit $TMPLIMIT
  1764.     ^assign -TMPLIMIT
  1765.         }
  1766.   /echo $sd XDCC limit: $dcclimit
  1767. }
  1768.  
  1769. alias SECmcommand {
  1770.          if ([$0])
  1771.          { if (match($0 LOAD NADD ADD NREMOVE REMOVE LIST))
  1772.                  { SEC$0 $1- }
  1773.                  { echo $sd $0 is not a valid SECURITY command. } }
  1774.          { if ([$SECURITYFLAG] == [ON])
  1775.                  { @ SECURITYFLAG = [OFF] }
  1776.                  { @ SECURITYFLAG = [ON] }
  1777.            echo $sd SECURITY: $SECURITYFLAG
  1778.            /chgst }
  1779. }
  1780. alias SECNADD {
  1781.          /echo $sd Searching for $0 ...
  1782.          Userhost $0 -cmd if ([$4]!=[<UNKNOWN>]) {
  1783.             ^assign tempadd $safe($3)@$4
  1784.                   if ([$isonsecurlist($tempadd)] == [YES])
  1785.                    { echo $sd $0 is already on my security list.}
  1786.                    { /secadd $tempadd $0 } }
  1787.                  { echo $sd I couldn't find $0 on IRC.}
  1788. }
  1789. alias SECADD {
  1790.          if ([$0])
  1791.          { ^exec -name save_securfile echo $safe($0) >> $SECURFILE
  1792.            ^wait %save_securfile
  1793.            @ SECURITY_LIST = [$SECURITY_LIST ]##[$0]
  1794.            if ([$1])
  1795.                 { echo $sd Added $1!$0 to XDCC security list.
  1796.                  /nnotice $1 You have been added to $N's XDCC security list.}
  1797.                 { echo $sd Added $0 to XDCC security list.} }
  1798.          { echo $sd Who or what mask do want to add?}
  1799. }
  1800. alias SECLIST {
  1801.          /echo $sd XDCC Security List:
  1802.          @ COUNT = 0
  1803.          while (word($COUNT $SECURITY_LIST))
  1804.             { /echo $sd $word($COUNT $SECURITY_LIST)
  1805.                  @ COUNT = COUNT + 1 }
  1806. }
  1807. alias SECLOAD {
  1808.          EVAL /echo $sd Loading XDCC security list...
  1809.          @ SECURITY_LIST = []
  1810.          @ ERROR = 0
  1811.          ^on exec_error "load_security *" {
  1812.             EVAL /echo $sd Error loading security list.
  1813.           @ ERROR = 1 }
  1814.          ^on ^exec "load_security *" {
  1815.            @ SECURITY_LIST = [$SECURITY_LIST ]##[$1] }
  1816.          ^exec -name load_security cat $SECURFILE
  1817.          ^wait %load_security
  1818.          if (ERROR == 0)
  1819.          { EVAL /echo $sd Security list loaded correctly.}
  1820.          {}
  1821. }
  1822. alias SECSAVE {
  1823.          @ ERROR = 0
  1824.          ^on exec_error "delete_security *" echo $sd Error deleting security list.
  1825.          ^exec -name delete_security rm $SECURFILE
  1826.          ^wait %delete_security
  1827.          ^on exec_error "save_security *" {
  1828.           /echo $sd Error saving security list.
  1829.           @ ERROR = 1 }
  1830.          @ COUNT = 0
  1831.          while (word($COUNT $SECURITY_LIST))
  1832.             { ^exec -name save_security echo $word($COUNT $SECURITY_LIST) >> $SECURFILE
  1833.                  wait %save_security
  1834.                  @ COUNT = COUNT + 1 }
  1835.          if (ERROR == 0)
  1836.          { echo $sd Security list saved correctly.}
  1837.          {}
  1838. }
  1839. alias SECNREMOVE {
  1840.          echo [-RioT-] Trying to find $0 on IRC...
  1841.          userhost $0 -cmd if ([$4] != [<UNKNOWN>])
  1842.                   { SECREMOVE $safe($3) }
  1843.                   { $sd Couldn't find $0 on IRC. }
  1844. }
  1845. alias SECREMOVE {
  1846.          if ([$0])
  1847.          { @ TOT = 0
  1848.            @ COUNT = 0
  1849.            @ NEWLIST = []
  1850.            while (word($COUNT $SECURITY_LIST))
  1851.                  { if (match(*$0* $word($COUNT $SECURITY_LIST)))
  1852.                          { echo $sd Removing $word($COUNT $SECURITY_LIST)
  1853.                         @ tot = tot + 1 }
  1854.                          { @ NEWLIST = [$NEWLIST ]##[$word($COUNT $SECURITY_LIST)] }
  1855.                    @ COUNT = COUNT + 1 }
  1856.            if (tot > 0)
  1857.                  { @ SECURITY_LIST = [$NEWLIST]
  1858.                 @ NEWLIST = []
  1859.                 SECSAVE }
  1860.                  { echo $sd No matches found for pattern $0 } }
  1861.          { echo $sd Remove what? }
  1862. }
  1863. alias PSENDmcommand {
  1864.          if (TOTPACK > 0)
  1865.          { @ TMPVAR = []
  1866.            @ NICKLIST = []
  1867.            ^assign TMPVAR $"[-RioT-] Pack to send : "
  1868.            if ([$TMPVAR])
  1869.                  { if (TMPVAR <= TOTPACK)
  1870.                    { ^assign NICKLIST $"[-RioT-] Nicks: "
  1871.                         if ([$NICKLIST])
  1872.                         { @ COUNT2 = 0
  1873.                           @ MYSEND = [YES]
  1874.                           while (word($COUNT2 $NICKLIST))
  1875.                                 { SENDcommand $word($COUNT2 $NICKLIST) #$TMPVAR
  1876.                                   @ COUNT2 = COUNT2 + 1 }
  1877.                           @ MYSEND = [NO] }
  1878.                         {} }
  1879.                    { /echo $sd Pack #$TMPVAR doesn't exist. Try /XDCC LIST. } }
  1880.                  {} }
  1881.          { /echo $sd There are no packs created.}
  1882. }
  1883. alias LISTmcommand {
  1884.          if ([$0])
  1885.          { if ([$[1]0] == [#])
  1886.                  { @ TEMP = [$0]
  1887.                 @ NUM  = right(${@TEMP-index(# $0)+1} $0)
  1888.                 if (NUM <= TOTPACK)
  1889.                    { @ COUNT2 = 1
  1890.                         @ TEMPTOT = 0
  1891.                         echo $sd PACK: $ARRAYDESC[$NUM]
  1892.                         while (COUNT2 <= ARRAYTOTf[$NUM])
  1893.                            { echo $sd FILE: $ARRAYFILE[$NUM][$COUNT2]
  1894.                                 @ TEMPTOT = TEMPTOT + ARRAYLENG[$NUM][$COUNT2]
  1895.                                 @ COUNT2 = COUNT2 + 1 }
  1896.                     /echo $sd TOTAL : $TEMPTOT Bytes on $ARRAYTOTF[$NUM] file/es }
  1897.                    { /echo $sd $0 pack doesn't exist.} }
  1898.                  { echo $sd /XDCC LIST $0 is not a valid format. Try /XDCC HELP LIST.}}
  1899.          { if (TOTPACK > 0)
  1900.                  { @ COUNT2 = 1
  1901.                 /echo $sd Pack Description
  1902.                 while (COUNT2 <= TOTPACK)
  1903.                          { /echo $sd #$[2]COUNT2  $ARRAYDESC[$COUNT2]
  1904.                         @ COUNT2 = COUNT2 + 1 } }
  1905.                  { /echo $sd There are no files offered. } }
  1906. }
  1907. alias NOTICEmcommand {
  1908.         /say ** To get a list of files I'm offering /MSG $N XDCC LIST.
  1909.         if ([$SECURITYFLAG]==[ON]) {
  1910.           /say ** You must be on my security list to use my XDCC commands.
  1911.         }{}
  1912. }
  1913.  
  1914. alias PLISTmcommand {
  1915.          if (TOTPACK > 0)
  1916.          { /say ** PACKS OFFERED. /MSG $N XDCC SEND #N for autosend pack #N
  1917.            if ([$SECURITYFLAG]==[ON]) {
  1918.            /say ** You must be on my security list to use my XDCC commands.}{}
  1919.            @ COUNT3 = 1
  1920.            while (COUNT3 <= TOTPACK)
  1921.                   { /say #$COUNT3  $ARRAYDESC[$COUNT3]
  1922.                    @ COUNT3 = COUNT3 + 1 } }
  1923.          { /echo $sd There are no files offered. }
  1924. }
  1925. alias SENDmcommand {
  1926.          @ TMPVAR = []
  1927.          ^assign TMPVAR $"[-RioT-] Files to send: "
  1928.          if ([$TMPVAR])
  1929.          { if ([$getdir()] == [OK])
  1930.                  { ^assign NICKLIST $"[-RioT-] Nicks: "
  1931.                 if ([$NICKLIST])
  1932.                    { dosend
  1933.                         xdccecho Send finished }
  1934.                    {} }
  1935.                  { echo $sd Please check the files.} }
  1936.          {}
  1937. }
  1938. EVAL ^set input_prompt [0] |70%| Done...
  1939. alias getdir {
  1940.          @ FILECOUNT = 0
  1941.          ^on -exec_error "DIR1 *" {
  1942.            echo $sd Error: $1- }
  1943.          ^on ^exec "DIR1 *" addfile $$1-
  1944.          @ COUNT4 = 0
  1945.          while (word($COUNT4 $TMPVAR))
  1946.             { @ TMPFILE = word($COUNT4 $TMPVAR)
  1947.                  if ([$[1]TMPFILE] == [/])
  1948.                  {}
  1949.                  { @ TMPFILE = [$UPLOADDIR/$TMPFILE] }
  1950.                  ^exec -name DIR1 ls -ld $TMPFILE
  1951.                  ^wait %DIR1
  1952.                  @ COUNT4 = COUNT4 + 1 }
  1953.          if ( FILECOUNT == 0 )
  1954.          { @ function_return = [ERROR] }
  1955.          { @ function_return = [OK] }
  1956. }
  1957. alias addfile {
  1958.          if ([$[1]0] == [-])
  1959.          { @ FILECOUNT = FILECOUNT + 1
  1960.            if ([$8])
  1961.                  { @ FILELIST[$FILECOUNT] = [$8]
  1962.                 @ FILELENG[$FILECOUNT] = [$4] }
  1963.                  { @ FILELIST[$FILECOUNT] = [$7]
  1964.                 @ FILELENG[$FILECOUNT] = [$3] } }
  1965.          {}
  1966. }
  1967. alias dosend {
  1968.          @ COUNT5 = 0
  1969.          while (word($COUNT5 $NICKLIST))
  1970.             { @ COUNT6  = 1
  1971.                  @ SENDTOT = 0
  1972.                  while (COUNT6 <= FILECOUNT)
  1973.                     { /^dcc send $word($COUNT5 $NICKLIST) $FILELIST[$COUNT6]
  1974.                 @ SENDTOT = SENDTOT + FILELENG[$COUNT6]
  1975.                          @ COUNT6  = COUNT6 + 1 
  1976.                 }
  1977.                  /nnotice $word($COUNT5 $NICKLIST) $SENDTOT Bytes on $FILECOUNT file/es
  1978.                  @ COUNT5 = COUNT5 + 1 }
  1979. }
  1980. alias STATUSmcommand {
  1981.          echo $sd AUTOGET      : $AUTOGET
  1982.          echo $sd AUTOSEND     : $AUTOSEND
  1983.          echo $sd AUTOCLOSE    : $AUTOCLOSE
  1984.          echo $sd NOISE        : $NOISE
  1985.          echo $sd OFFERED      : $TOTPACK
  1986.          echo $sd GET COUNT    : $GETCOUNT
  1987.          echo $sd SECURITY     : $SECURITYFLAG
  1988.          echo $sd UPLOAD DIR   : $UPLOADDIR
  1989.          echo $sd DOWNLOAD DIR : $DOWNLOADDIR
  1990.          echo $sd OVERWRITE    : $OVERWRITE
  1991. }
  1992. alias OFFERmcommand {
  1993.          @ TMPVAR  = []
  1994.          @ TMPDESC = []
  1995.          ^assign TMPVAR $"[-RioT-] Files: "
  1996.          if ([$TMPVAR])
  1997.          { if ([$getdir()] == [OK])
  1998.                  { ^assign TMPDESC $"[-RioT-] Description: "
  1999.                 if ([$TMPDESC])
  2000.                    { @ TOTPACK = TOTPACK + 1
  2001.                         @ COUNT = 1
  2002.                         while (COUNT <= FILECOUNT)
  2003.                            { @ ARRAYFILE[$TOTPACK][$COUNT] = [$FILELIST[$COUNT]]
  2004.                                 @ ARRAYLENG[$TOTPACK][$COUNT] = [$FILELENG[$COUNT]]
  2005.                                 @ ARRAYDESC[$TOTPACK]         = [$TMPDESC]
  2006.                                 @ ARRAYTOTF[$TOTPACK]         = [$FILECOUNT]
  2007.                                 @ COUNT                       = COUNT + 1 }
  2008.                         xdccecho $FILECOUNT files added to Pack #$TOTPACK
  2009.                         chgst }
  2010.                    {} }
  2011.                  { echo $sd Error: one or more of this files don't exist. } }
  2012.          {}
  2013. }
  2014. EVAL ^set input_prompt [O] |70%| Done...
  2015. alias DOFFERmcommand {
  2016.          if (TOTPACK > 0)
  2017.          { @ TMPNUM = []
  2018.            ^assign TMPNUM $"Pack to remove (* for all) #"
  2019.            if ([$TMPNUM])
  2020.                  { if ([$TMPNUM] == [*])
  2021.                    { @ TOTPACK = 0
  2022.                         chgst
  2023.                         echo $sd All packs removed from offer list. }
  2024.                    { if ((TMPNUM <= TOTPACK) && (TMPNUM > 0))
  2025.                         { @ COUNT7 = TMPNUM
  2026.                           while (COUNT7 < TOTPACK)
  2027.                                 { @ COUNT8 = ARRAYTOTF[${COUNT7+1}]
  2028.                                   while (COUNT8 > 0)
  2029.                                         { @ ARRAYFILE[$COUNT7][$COUNT8] = [$ARRAYFILE[${COUNT7+1}][$COUNT8]]
  2030.                                           @ ARRAYLENG[$COUNT7][$COUNT8] = [$ARRAYLENG[${COUNT7+1}][$COUNT8]]
  2031.                                           @ COUNT8 = COUNT8 - 1 }
  2032.                                   @ ARRAYDESC[$COUNT7] = [$ARRAYDESC[${COUNT7+1}]]
  2033.                                   @ ARRAYTOTF[$COUNT7] = [$ARRAYTOTF[${COUNT7+1}]]
  2034.                                   @ COUNT7             = COUNT7 + 1 }
  2035.                           @ TOTPACK = TOTPACK - 1
  2036.                           echo $sd Pack #$TMPNUM removed from offer list.
  2037.                           chgst }
  2038.                         { echo $sd Try between 1 - $TOTPACK ... } } }
  2039.                 {} }
  2040.          { echo $sd There are no files offered. }
  2041. }
  2042. alias AUTOGETmcommand {
  2043.          if ([$AUTOGET] == [ON])
  2044.          { @ AUTOGET = [OFF] }
  2045.          { @ AUTOGET = [ON] }
  2046.          echo $sd AUTOGET: $AUTOGET
  2047.          chgst
  2048. }
  2049. alias AUTOSENDmcommand {
  2050.          if ([$AUTOSEND] == [ON])
  2051.          { @ AUTOSEND = [OFF] }
  2052.          { @ AUTOSEND = [ON] }
  2053.          echo $sd AUTOSEND: $AUTOSEND
  2054.          chgst
  2055. }
  2056. alias AUTOCLOSEmcommand {
  2057.          if ([$AUTOCLOSE] == [ON])
  2058.          { @ AUTOCLOSE = [OFF] }
  2059.          { @ AUTOCLOSE = [ON] }
  2060.          echo $sd AUTOCLOSE: $AUTOCLOSE
  2061.          chgst
  2062. }
  2063. alias NOISEmcommand {
  2064.          if ([$NOISE] == [ON])
  2065.          { @ NOISE = [OFF] }
  2066.          { @ NOISE = [ON] }
  2067.          echo $sd NOISE: $NOISE
  2068.          chgst
  2069. }
  2070. alias OVERWRITEmcommand {
  2071.          if ([$OVERWRITE] == [ON])
  2072.          { @ OVERWRITE = [OFF] }
  2073.          { @ OVERWRITE = [ON] }
  2074.          echo $sd OVERWRITE: $OVERWRITE
  2075. }
  2076. alias ULDIRmcommand {
  2077. if ([$0]) {^assign newdir $0}
  2078. {^assign newdir $"[-RioT-] New upload directory: " }
  2079.    if ([$newdir]!=[])
  2080.    {^assign olddir $W
  2081.     ^cd $newdir
  2082.     ^assign uploaddir $W
  2083.     ^cd $olddir
  2084.     ^assign -olddir
  2085.     }
  2086.    ^assign -newdir
  2087.    /echo $sd Upload directory: $uploaddir
  2088. }
  2089. alias DLDIRmcommand {
  2090. if ([$0]) {^assign newdir $0}
  2091. {^assign newdir $"[-RioT-] New download directory: " }
  2092.    if ([$newdir]!=[])
  2093.    {^assign olddir $W
  2094.     ^cd $newdir
  2095.     ^assign downloaddir $W
  2096.     ^cd $olddir
  2097.     ^assign -olddir
  2098.     }
  2099.    ^assign -newdir
  2100.    /echo $sd Download directory: $downloaddir\.
  2101. }
  2102. EVAL ^set input_prompt [o] |75%| Done...
  2103. alias xdccecho {
  2104.          if ([$NOISE] == [ON])
  2105.          { /echo $sd $0- }
  2106.          {}
  2107. }
  2108. alias x_file {
  2109.          ^assign TMP $0
  2110.          if (rindex(/ $TMP))
  2111.          { @ function_return = right(${@TMP-rindex(/ $0)+1} $0) }
  2112.          { @ function_return = [$0] }
  2113. }
  2114. alias adddccrequest {
  2115.          @ GETCOUNT = GETCOUNT + 1
  2116.          @ ARRAYFILEGET[$GETCOUNT] = [$0]
  2117.          @ ARRAYNICKGET[$GETCOUNT] = [$1]
  2118.          chgst
  2119. }
  2120. alias CLOSEmcommand {
  2121.          if (GETCOUNT > 0)
  2122.          { @ TMPNICK = []
  2123.            ^assign TMPNICK $"Nick to remove get files (* for all): "
  2124.            if ([$TMPNICK])
  2125.                  { if ([$TMPNICK] == [*])
  2126.                    { @ GETCOUNT = 0
  2127.                         foreach ARRAYFILEGET XX
  2128.                                 { //^dcc close get $ARRAYNICKGET[$XX] }
  2129.                         chgst
  2130.                         echo $sd All files removed from get list. }
  2131.                    { @ COUNT8 = 1
  2132.                         @ COUNT9 = 1
  2133.                         @ COUNT10 = GETCOUNT
  2134.                         while (COUNT9 <= COUNT10)
  2135.                            { if ([$ARRAYNICKGET[$COUNT9]] != [$TMPNICK])
  2136.                                 { @ ARRAYFILEGET[$COUNT8] = [$ARRAYFILEGET[$COUNT9]]
  2137.                                   @ ARRAYNICKGET[$COUNT8] = [$ARRAYNICKGET[$COUNT9]]
  2138.                                   @ COUNT8 = COUNT8 + 1 }
  2139.                                 { //^dcc close get $TMPNICK
  2140.                                   @ GETCOUNT = GETCOUNT - 1 }
  2141.                                 @ COUNT9 = COUNT9 + 1 }
  2142.                         chgst } }
  2143.                  {} }
  2144.          { echo $sd There are no pending files. }
  2145. }
  2146. EVAL ^set input_prompt [.] |75%| Done...
  2147. alias DIRmcommand {
  2148.          @ TMPVAR = []
  2149.          ^assign TMPVAR $"[-RioT-] Dir?: "
  2150.          if ([$getdir()] == [OK])
  2151.          { @ COUNT8 = 1
  2152.            echo $sd Length     File
  2153.            while (COUNT8 <= FILECOUNT)
  2154.                  { echo $sd $[10]FILELENG[$COUNT8] $FILELIST[$COUNT8]
  2155.                    @ COUNT8 = COUNT8 + 1 } }
  2156.          {}
  2157. }
  2158. alias GETmcommand {
  2159.          if (GETCOUNT > 0)
  2160.          { @ TMPNICK = []
  2161.            ^assign TMPNICK $"Nick to get files (* for all) #"
  2162.            if ([$TMPNICK])
  2163.                  { if ([$TMPNICK] == [*])
  2164.                    { @ GETCOUNT = 0
  2165.                         foreach ARRAYFILEGET XX
  2166.                                 { /^dcc get $ARRAYNICKGET[$XX] $ARRAYFILEGET[$XX] 
  2167.                           }
  2168.                         chgst
  2169.                         echo $sd All files got from get list. }
  2170.                    { @ COUNT8 = 1
  2171.                         @ COUNT9 = 1
  2172.                         @ COUNT10 = GETCOUNT
  2173.                         echo $sd Getting all files offered from $TMPNICK\.
  2174.                         while (COUNT9 <= COUNT10)
  2175.                            { if ([$ARRAYNICKGET[$COUNT9]] != [$TMPNICK])
  2176.                                 { @ ARRAYFILEGET[$COUNT8] = [$ARRAYFILEGET[$COUNT9]]
  2177.                                   @ ARRAYNICKGET[$COUNT8] = [$ARRAYNICKGET[$COUNT9]]
  2178.                                   @ COUNT8 = COUNT8 + 1 }
  2179.                                 { //^dcc get $TMPNICK $ARRAYFILEGET[$COUNT9]
  2180.                           @ GETCOUNT = GETCOUNT - 1 }
  2181.                                 @ COUNT9 = COUNT9 + 1 }
  2182.                         chgst } }
  2183.                  {} }
  2184.          { echo $sd There are no files offered. }
  2185. }
  2186. alias GLISTmcommand {
  2187.          if (GETCOUNT > 0)
  2188.          { @ TMPNICK = []
  2189.            ^assign TMPNICK $"Nick to list pending files (* for all) #"
  2190.            if ([$TMPNICK])
  2191.                  { @ COUNT11 = 1
  2192.                 echo $sd Nick      File
  2193.                 while (COUNT11 <= GETCOUNT)
  2194.                          { if (match($TMPNICK $ARRAYNICKGET[$COUNT11]))
  2195.                            { echo $sd $[9]ARRAYNICKGET[$COUNT11] $ARRAYFILEGET[$COUNT11] }
  2196.                            {}
  2197.                         @ COUNT11 = COUNT11 + 1 } }
  2198.                  {} }
  2199.          { echo $sd There are no pending files. }
  2200. }
  2201. EVAL ^set input_prompt [o] |80%| Done...
  2202. alias LOADmcommand {
  2203.          if ([$0])
  2204.          { eval /echo $sd Loading XDCC Offer file....
  2205.            @ OLDNUM     = TOTPACK
  2206.            @ LOAD_ERROR = [NO]
  2207.            @ LINECOUNT  = 0
  2208.            @ COUNT12    = [desc comment]
  2209.            ^on exec_error "load_files *" {
  2210.                   echo $sd Error: $1-
  2211.                   @ LOAD_ERROR = [YES] }
  2212.            ^on ^exec "load_files *" add_line $$1-
  2213.            ^exec -name load_files cat $0
  2214.            ^wait %load_files
  2215.            if ([$LOAD_ERROR] == [NO])
  2216.                  { eval /echo $sd Checking file...
  2217.                 @ COUNT = 1
  2218.                 while (COUNT <= LINECOUNT)
  2219.                          { add_file $XDCCFILELINE[$COUNT]
  2220.                         @ COUNT = COUNT + 1 }
  2221.                 if (ARRAYTOTF[$TOTPACK] == 0)
  2222.                    { @ TOTPACK = TOTPACK - 1 }
  2223.                    {}
  2224.                 chgst }
  2225.                  {}
  2226.            if ([$LOAD_ERROR] == [NO])
  2227.                  { eval /echo $sd Offer file loaded correctly.}
  2228.                  { @ TOTPACK = OLDNUM } }
  2229.          {
  2230.                           if ([$OFFERFILE]!=[]) {
  2231.                                   /echo $sd Default: loading $OFFERFILE\...
  2232.                                   /loadmcommand $OFFERFILE
  2233.                           }
  2234.                           {/echo $sd No such file. Try /XDCC HELP LOAD.}
  2235.                    }
  2236. }
  2237. EVAL ^set input_prompt [O] |80%| Done...
  2238.  
  2239. alias SAVEmcommand {
  2240.          if ([$0])
  2241.          { /echo $sd Saving file...
  2242.            @ TEMP1      = [$1-]
  2243.            @ SAVE_ERROR = [NO]
  2244.            @ TEMP2 = []
  2245.            @ COUNT = 0
  2246.            @ LINECOUNT = 0
  2247.            if ([$1])
  2248.                  { while (word($COUNT $TEMP1))
  2249.                          { if ([$[1]word($COUNT $TEMP1)] != [#])
  2250.                            { /echo $sd Error: $word($COUNT $TEMP1) is not a valid pack format.
  2251.                                 @ SAVE_ERROR = [YES] }
  2252.                            { @ TEMP = word($COUNT $TEMP1)
  2253.                                 @ NUM  = right(${@TEMP-1} $TEMP)
  2254.                                 if (NUM > TOTPACK)
  2255.                                 { /echo $sd Error: #$NUM does't exist.
  2256.                                   @ SAVE_ERROR = [YES] }
  2257.                                 { @ TEMP2 = [$TEMP2] ## [ $NUM] } }
  2258.                         @ COUNT = COUNT + 1 } }
  2259.                  { while (COUNT < TOTPACK)
  2260.                          { @ COUNT = COUNT + 1
  2261.                         @ TEMP2 = [$TEMP2] ## [ $COUNT] } }
  2262.            if ([$SAVE_ERROR] != [YES])
  2263.                  { @ COUNT = 0
  2264.                 @ SAVE_ERROR = [NO]
  2265.                 while (word($COUNT $TEMP2))
  2266.                          { add_line Comment Pack $COUNT
  2267.                         add_line desc $ARRAYDESC[$word($COUNT $TEMP2)]
  2268.                         @ COUNT1 = 0
  2269.                         while (COUNT1 < ARRAYTOTF[$word($COUNT $TEMP2)])
  2270.                                  { @ COUNT1 = COUNT1 + 1
  2271.                                 add_line files $ARRAYFILE[$word($COUNT $TEMP2)][$COUNT1] }
  2272.                         @ COUNT = COUNT + 1 }
  2273.                 ^on exec_error "save_xdcc_file *" {
  2274.                     echo $sd Error: $1-
  2275.                     @ SAVE_ERROR = [YES] }
  2276.                 @ COUNT = 0
  2277.                 while (COUNT < LINECOUNT)
  2278.                          { @ COUNT = COUNT + 1
  2279.                         ^exec -name s_xdcc_f echo $XDCCFILELINE[$COUNT] >> $0
  2280.                         wait %s_xdcc_f }
  2281.                 if ([$SAVE_ERROR] = [NO])
  2282.                    { /echo $sd File saved correctly.}
  2283.                    {} }
  2284.                  {} }
  2285.          { /echo $sd What filename? Try /XDCC HELP SAVE. }
  2286. }
  2287. EVAL ^set input_prompt [0] |85%| Done...
  2288. alias add_line {
  2289.          @ LINECOUNT                = LINECOUNT + 1
  2290.          @ XDCCFILELINE[$LINECOUNT] = [$0-]
  2291. }
  2292.  
  2293. alias add_file {
  2294.          if (match($0 $COUNT12))
  2295.          { if ([$0] == [desc])
  2296.                  { @ OLDNUM = TOTPACK
  2297.                 if ((TOTPACK >= 0) && (ARRAYTOTF[$TOTPACK] == 0))
  2298.                    {}
  2299.                    { @ TOTPACK = TOTPACK + 1 }
  2300.                 @ ARRAYDESC[$TOTPACK] = [$1-]
  2301.                 @ ARRAYTOTF[$TOTPACK] = 0
  2302.                 @ COUNT12             = [files comment] }
  2303.                  { if ([$0] == [files])
  2304.                    { @ COUNT12 = [desc files comment]
  2305.                         @ TMPVAR = [$1-]
  2306.                         if ([$getdir()] == [OK])
  2307.                         { @ COUNT13 = 1
  2308.                           while (COUNT13 <= FILECOUNT)
  2309.                                 { @ ARRAYTOTF[$TOTPACK] = ARRAYTOTF[$TOTPACK] + 1
  2310.                                   @ ARRAYFILE[$TOTPACK][$ARRAYTOTF[$TOTPACK]] = [$FILELIST[$COUNT13]]
  2311.                                   @ ARRAYLENG[$TOTPACK][$ARRAYTOTF[$TOTPACK]] = [$FILELENG[$COUNT13]]
  2312.                                   @ COUNT13 = COUNT13 + 1 } }
  2313.                         {} }
  2314.                    {} }
  2315.                  {} }
  2316.          { @ LOAD_ERROR = [YES]
  2317.            echo $sd Error loading offer file on line:
  2318.            echo $sd [$COUNT] $0-
  2319.            echo $sd First word on line isn't [$COUNT12]
  2320.            @ COUNT = LINECOUNT }
  2321. }
  2322. alias isonsecurlist {
  2323.          ^assign stripped $safe($0)
  2324.          if (rmatch($stripped $SECURITY_LIST))
  2325.          {@ FUNCTION_RETURN = [YES]}
  2326.          {@ FUNCTION_RETURN = [NO]}
  2327. }
  2328. EVAL ^set input_prompt [O] |90%| Done...
  2329.  
  2330.  
  2331. alias chgst {
  2332. }
  2333. EVAL ^set input_prompt [o] |95%| Done...
  2334. assign chanprot On
  2335. ### Nickname Flood Protection
  2336.  
  2337. on -channel_nick "*" {
  2338.   if ([$KILLER]==[ON]) {
  2339.         if ([$2]!=[$N]) {
  2340.            //^dcc raw $KILLSOCKET $KILLHOST NICK $1
  2341.            ^assign KILLNICK $1
  2342.         }
  2343.   }
  2344.   if (([$chanprot]==[On])&&([$2]!=[$N])) {
  2345.     if ([$newnick1]==[$1]) {@ nickcnt = nickcnt + 1}
  2346.          if ((nickcnt==nicksensor)&&(P==[@])) {
  2347.           /kkick $0 $2 | Nick Flood |
  2348.           @ nickcnt = 0
  2349.           /echo $sd NICK FLOOD DETECTED. On $0 by: $2
  2350.     }
  2351.     ^assign newnick1 $2
  2352.     ^timer 30 ^assign -newnick1
  2353.     ^timer 30 @ nickcnt = 0
  2354.   }
  2355. }
  2356.  
  2357. # --- Lang translating routines
  2358.  
  2359. SET MAX_RECURSIONS 100
  2360. @ null = []
  2361. @ LAME.CODES = []
  2362. @ LAME.CODES = LAME.CODES ## [r0C ACiD iCE CiA rELiC ]
  2363. @ LAME.CODES = LAME.CODES ## [rAiN v0R ANSi RiP uNi0N ]
  2364. @ LAME.CODES = LAME.CODES ## [nATi0N iNV L0G0 PiCT f0NT ]
  2365. @ LAME.CODES = LAME.CODES ## [iRC LAMER p4CKS fTP w4R3Z ]
  2366. @ LAME.CODES = LAME.CODES ## [JiHAD sHCKW LJ tFH cS SP3EK ]
  2367.  
  2368. @ LAME.INDEX = [a b c d e f g h i j k l m n o p q r s t u v w x y z ]
  2369. @ LAME.REMOVE = [!@#$%^&*-=+`~;:'",/?\|]
  2370.  
  2371. ^ON ^Raw_Irc "% PRIVMSG % :* (lamespeek)" {
  2372.     if (left(1 $2) == [#])
  2373.     {
  2374.         if ([$2]==C)
  2375.                   { echo <$left($index(! $0) $0)> $strip(: $3) $4- }
  2376.                   { echo <$left($index(! $0) $0):$2> $strip(: $3) $4- }
  2377.     }
  2378.         { echo *$left($index(! $0) $0)* $strip(: $3) $4- }
  2379.         echo *** LaMeSpEeK: $util.lametrans($strip(: $3) $4-)
  2380. }
  2381.  
  2382. alias util.lametrans {
  2383.     @ lamecd = []
  2384.  
  2385.     if ([$1] != [(lame)]) { @ lamecd = util.lametrans($1-) }
  2386.     @ dgt.count = 0
  2387.     @ dgtwd = [$0]
  2388.     @ dgtword = []
  2389.     while (dgt.count < @dgtwd){
  2390.         @ tempdgt = []
  2391.         while (mid($dgt.count 1 $0) != [o] && dgt.count < @dgtwd)
  2392.         {
  2393.           @ tempdgt = tempdgt ## mid($dgt.count 1 $0)
  2394.           @ dgt.count = dgt.count + 1
  2395.         }
  2396.  
  2397.         @ dgtindex = rmatch($tempdgt $lame.codes) - 1
  2398.         if (dgtindex >= 0)
  2399.         { @ dgtword = dgtword ## word($dgtindex $lame.index) }
  2400.         {
  2401.           if (tempdgt != [o])
  2402.             { @ dgtword = dgtword ## tempdgt }
  2403.         }
  2404.  
  2405.         @ dgt.count = dgt.count + 1
  2406.     }
  2407.     @ function_return = dgtword ## [ ] ## lamecd
  2408. }
  2409.  
  2410.  
  2411. alias util.lamecode {
  2412.     @ lamecode = []
  2413.  
  2414.     if ([$1] != [$1000]) { @ lamecode = util.lamecode($1-) }
  2415.     @ dg.count = 0
  2416.     @ dgwd = strip( $0)
  2417.     @ dgword = []
  2418.     @ dgsep = []
  2419.     while (dg.count < @dgwd){
  2420.         @ tempdg = mid($dg.count 1 $dgwd)
  2421.         @ dg.count = dg.count + 1
  2422.         @ dgindex = rmatch($tempdg $lame.index) - 1
  2423.         if (dgindex >= 0)
  2424.         {
  2425.           @ dgword = dgword ## dgsep ## word($dgindex $lame.codes)
  2426.         }
  2427.         { 
  2428.           if (tempdg != [.] && tempdg != [_] && tempdg != [o])
  2429.             { @ dgword = dgword ## [o] ## tempdg }
  2430.         }
  2431.         @ dgsep = [o]
  2432.     }
  2433.     @ function_return = dgword ## [ ] ## lamecode
  2434. }
  2435.  
  2436. on ^raw_irc "% PRIVMSG #% :* ?? -+ TEXT +-" {
  2437.   if ([$AUTODECODE] == [ON]) {
  2438.     if ([$2] == [$C]) {
  2439.       echo <$nickonly($0)> $strip(: $3-)
  2440.       echo [DECRYPT] <$nickonly($0)> $strip( $decode($strip(: $left($index(" $3-) $3-))))
  2441.       }
  2442.       {
  2443.       echo <$nickonly($0):$2> $strip(: $3-)
  2444.       echo [DECRYPT] <$nickonly($0):$2> $strip( $decode($strip(: $left($index(" $3-) $3-))))
  2445.       }
  2446.     }
  2447.   }
  2448. on #-msg 2 "% * ?? -+ TEXT +-" {
  2449.   if ([$AUTODECODE] == [ON]) {
  2450.     echo [DECRYPT] *$0* $strip( $decode($left($index(" $1-) $1-)))
  2451.     }
  2452.   }
  2453.  
  2454. @ banfilter.in = [abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890~_-]
  2455. @ banfilter.out =[?bcd?fgh?jklmn?pqr?t?vw??z?BCD?FGH?JKLMN?PQRST?VW??Z??????????*??]
  2456. alias banfilter {
  2457.     @ r3.line = [$*]
  2458.     @ r3.len = @r3.line
  2459.     @ r3.new = []
  2460.     @ r3.cnt = 0
  2461.     while (r3.cnt < r3.len)
  2462.     {
  2463.         @ r3.ind = index($mid($r3.cnt 1 $r3.line) $banfilter.in)
  2464.         if (r3.ind > -1)
  2465.         {
  2466.             @r3.new = r3.new ## mid($r3.ind 1 $banfilter.out)
  2467.         }
  2468.         {
  2469.             @r3.new = r3.new ## mid($r3.cnt 1 $r3.line)
  2470.         }
  2471.         @r3.cnt = r3.cnt + 1
  2472.     }
  2473.     @ function_return = r3.new
  2474.     ^assign -r3.cnt ;^assign -r3.new ;^assign -r3.ind ;^assign -r3.line
  2475.     ^assign -r3.len
  2476. }
  2477.  
  2478.  
  2479. alias floodcheck {
  2480.  if ([$floodp]==[On]) {
  2481.   if (!match($0 $flood_ok)) {
  2482.    if ((match(**** $3-))||(match(*[H*[J*[7m* $3-))||(match(*^[* $3-))) {
  2483.          /ignore_flood $0 $1 $2
  2484.          /clearflood
  2485.          ^assign FUNCTION_RETURN ON
  2486.    }
  2487.    if (([$lastmsger]==[$tempflood])||([$lastnoter]==[$tempflood])||([$lastctcper]==[$tempflood])) {
  2488.         if ([$1]==[MSG]) {
  2489.           @ msgcount = msgcount + 1
  2490.           EVAL ^timer $resetcount /subcheck MSG
  2491.         }
  2492.         if ([$1]==[NOTICE]) {
  2493.           @ notcount = notcount + 1
  2494.           EVAL ^timer $resetcount /subcheck NOTICE
  2495.         }
  2496.         if ([$1]==[CTCP]) {
  2497.           @ ctcpcount = ctcpcount + 1
  2498.           EVAL ^timer $resetcount /subcheck CTCP
  2499.         }
  2500.         if ((msgcount>msgsensor)||(notcount>notsensor)||(ctcpcount>ctcpsensor)) {
  2501.           /ignore_flood $0 $1 $2
  2502.           /clearflood
  2503.           ^assign FUNCTION_RETURN ON
  2504.         }
  2505.    }
  2506.    if ([$1]==[MSG]) {^assign lastmsger $tempflood}
  2507.    if ([$1]==[NOTICE]) {^assign lastnoter $tempflood}
  2508.    if ([$1]==[CTCP]) {^assign lastctcper $tempflood}
  2509.    ^assign mstmp $2
  2510.    ^assign tempflood $right(${@mstmp-index(@ $2)} $2)
  2511.    }
  2512.   }
  2513. }
  2514.  
  2515. alias clearflood {
  2516.     ^assign -tempflood
  2517.         @ msgcount = 0
  2518.         @ notcount = 0
  2519.         @ ctcpcount = 0
  2520. }
  2521.  
  2522. alias subcheck {
  2523.   if (([$0]==[MSG])&&(msgcount>0)) {@ msgcount = msgcount - 1}
  2524.   if (([$0]==[NOTICE])&&(notcount>0)) {@ notcount = notcount - 1}
  2525.   if (([$0]==[CTCP])&&(ctcpcount>0)) {@ ctcpcount = ctcpcount - 1}
  2526. }
  2527.  
  2528. alias ignore_flood {
  2529.    ^assign igtmp $2
  2530.    ^assign toig $right(${@igtmp-index(@ $2)} $2)
  2531.    if ([$toig]) {
  2532.          if (![$floodnotice]) {
  2533.         EVAL /^ignore *$toig MSGS CTCPS NOTICES INVITES NOTES
  2534.         ^assign floodnotice On
  2535.         EVAL ^timer $ignorecount /^ignore *$toig NONE
  2536.         /echo $sd $1 FLOOD DETECTED. Ignoring $0 for $ignorecount seconds.
  2537.         if ([$flood_msg]) {/nnotice $0 $flood_msg}
  2538.         ^timer 12 ^assign -floodnotice
  2539.         ^assign -toig
  2540.          }
  2541.    }
  2542. }
  2543.  
  2544. alias floodok {
  2545.     if ([$0]) {
  2546.         if (!match($0 $flood_ok)) {
  2547.                   @ flood_ok = flood_ok ## [ $0]
  2548.            /echo $sd Nick $0 now exempt from triggering flood protection.
  2549.         }
  2550.         {/echo $sd Nickname $0 is already on your flood_ok list.}
  2551.     }
  2552.   {
  2553.         /echo $sd Nicknames exempt from triggering flood protection:
  2554.         /echo $sd $flood_ok
  2555.   }
  2556. }
  2557.    
  2558. alias remflood {
  2559.   if ([$0]) {
  2560.     if (match($0 $flood_ok)) {
  2561.          @ flood_ok = rem_w($0 $flood_ok)
  2562.          /echo $sd Nickname $0 has been removed from your flood_ok list.
  2563.     }
  2564.     {/echo $sd $0 is not on your flood_ok list.}
  2565.   }
  2566.   {/echo $sd Usage: /REMFLOOD <nick> of person to remove from flood_ok.}
  2567. }
  2568.  
  2569. on ^public "% % *^[*^[*" {
  2570.    if ([$floodp]==[On]) {/pubecho $0 $1 [Textbox/PhoEniX Tsunami Detected]}
  2571.    {/pubecho $0 $1 $2-}
  2572.    if ([$chanprot]==[On]) {
  2573.         if (ischanop($N $1)) {/kkick $1 $0 | Channel Flood |}
  2574.    }
  2575. }
  2576.  
  2577. on ^public "% % *[H*[J*[7m*" {
  2578.    if ([$floodp]==[On]) {/pubecho $0 $1 [Tsunami Form Detected]}
  2579.    {/pubecho $0 $1 $2-}
  2580.    if ([$chanprot]==[On]) {
  2581.         if (ischanop($N $1)) {/kkick $1 $0 | Channel Flood |}
  2582.    }
  2583. }
  2584.  
  2585. on ^public "% % *******" {
  2586.    if ([$floodp]==[On]) {/pubecho $0 $1 [6+ Beeps Detected]}
  2587.    {/pubecho $0 $1 $2-}
  2588.    if ([$chanprot]==[On]) {
  2589.          if (ischanop($N $1)) {/kkick $1 $0 | Channel Flood |}
  2590.    }
  2591. }
  2592.  
  2593. alias pubecho {
  2594.    if ([$1]==[$C]) {/echo <$0> $2-}
  2595.    {/echo <$0:$1> $2-}
  2596. }
  2597.  
  2598.  
  2599. on ^raw_irc "% PRIVMSG % :******" /word_detect $nickonly($0) CTCP-BOMB $2
  2600. on ^raw_irc "% PRIVMSG % :*DCC SEND* 6667**" /word_detect $nickonly($0) DCC-BOMB $2
  2601. on ^raw_irc "% PRIVMSG % :*%INFO*" #
  2602. on ^raw_irc "% PRIVMSG % :*echo**" #
  2603. on ^raw_irc "% PRIVMSG % :*SED**" #
  2604. on ^raw_irc "% NOTICE % :UTC*" /word_detect $nickonly($0) UTC $2
  2605. on ^raw_irc "*.* NOTICE % :% Notice -- Bogus server name**" #
  2606.  
  2607. alias word_detect {
  2608.    if ([$spoken]!=[On]) {
  2609.          if (rmatch($2 #*)) {/echo $sd WARNING! $1 flood/backdoor attempt from $0 to $2\.}
  2610.          {/echo $sd WARNING! $1 flood/backdoor attempt from $0\.}
  2611.          ^assign spoken On
  2612.           EVAL ^timer $resetcount ^assign -spoken
  2613.          /log $1 client/script backdoor attempt by $0\.
  2614.    }
  2615. }
  2616.  
  2617.  
  2618. ^alias RIOT {
  2619. echo
  2620. echo         .________________________________________.
  2621. echo         |::::    ____|:     |::::     :|       .:|:
  2622. echo         |:::     : |:       |:::     ::|__.   :__.:
  2623. echo         |::      |:|:.      |::     :::| :|:. |:
  2624. echo         .________|__________|__________| :|___.:.
  2625. echo            ......:.... main menu:................   
  2626. echo            ..../opz........ .opz.menu............
  2627. echo            ..../kickz...... .kickz.menu..........
  2628. echo            ..../misc....... .other.shit..........
  2629. echo            ..../windowz.... .irc.windowz.stuff...
  2630. echo            ..../xdccstuff.. .xdcc.script.help....
  2631. echo            ..../unixstuff.. .unix.shell.shit.....
  2632. echo            ..../automenu... .auto.op.menu........
  2633. echo      
  2634. }
  2635.  
  2636. ^alias OPZ {
  2637. echo
  2638. echo         .________________________________________.
  2639. echo         |::::    ____|:     |::::     :|       .:|:
  2640. echo         |:::     : |:       |:::     ::|__.   :__.:
  2641. echo         |::      |:|:.      |::     :::| :|:. |:
  2642. echo         .________|__________|__________| :|___.:.
  2643. echo         .........:.... opz menu:.................  
  2644. echo         .../op.(nick)..... ..awp.somebody........
  2645. echo         .../top.(nick).... ..dee-awpz.in.a.tri...      
  2646. echo         .../tfop.(nick)... ..phunky.dee-awp......
  2647. echo         .../5op.(nick).... .discordian.awpz......
  2648. echo         .../dop.(nick).... .take.+oh.away........
  2649. echo         .../jokemassdeop.. .guess.what.it.doez...
  2650. echo         .../jokemode...... .ahh.like.guess.......
  2651. echo
  2652. }
  2653.   
  2654. ^alias KICKZ {
  2655. echo
  2656. echo         .________________________________________.
  2657. echo         |::::    ____|:     |::::     :|       .:|:
  2658. echo         |:::     : |:       |:::     ::|__.   :__.:
  2659. echo         |::      |:|:.      |::     :::| :|:. |:
  2660. echo         .________|__________|__________| :|___.:.
  2661. echo         .......:.... kickz menu:................  
  2662. echo         .../nk.(nick).(y). .normal.kick.........
  2663. echo         .../hpkick.(nick). .hippiekickz.........
  2664. echo         .../pkick.(nick).. .pot.kick............
  2665. echo         .../s8nkick.(nick) .satan.kick..........
  2666. echo         .../bk.(nick)..... .ban.kick............
  2667. echo         .../sk.(nick)..... .slash.kick.a.fewl...
  2668. echo         .../nsbankick..... .net.sex.ban.kick....
  2669. echo
  2670. }
  2671.  
  2672. ^alias MISC {
  2673. echo
  2674. echo         .________________________________________.
  2675. echo         |::::    ____|:     |::::     :|       .:|:
  2676. echo         |:::     : |:       |:::     ::|__.   :__.:
  2677. echo         |::      |:|:.      |::     :::| :|:. |:
  2678. echo         .________|__________|__________| :|___.:.
  2679. echo         .......:.... misc menu:.................   
  2680. echo         .../mass.(mode).. .mass.modez...........
  2681. echo         .../wordkick..... .say.it.kick..........
  2682. echo         .../ban.......... .ban.a.lamuh..........
  2683. echo         .../nickban...... .ban.a.lame.nick......
  2684. echo         .../m.(blah)..... .message..............
  2685. echo         .../j.(channel).. .like.join.but.better.
  2686. echo         .../l.(channel).. .better.than.leave....
  2687. echo         .../bye.(blah)... .ereet.signoff........
  2688. echo         .../ver.......... .version.nf0z.........
  2689. echo         .../gui.(on.off)... .turnz.windowz.on.off
  2690. echo         .../winsize.(lines) .window.size.........
  2691. echo         .../net.(serv)..... .new.win.on.server...
  2692. echo
  2693. echo
  2694. /pause
  2695. echo          ..............war shit.................
  2696. echo          .../death........ .mass.lagkillide.all.
  2697. echo          .../dspawn....... .killider.bot........
  2698. echo          .../koj.......... .kill.on.join........
  2699. echo          .../die.......... .attempts.to.kill.1..
  2700. echo          .../opdie........ .lag.killide.da.opz..
  2701. echo          .../nopdie....... .lag.killide.non.opz.
  2702. echo          .../dsafe........ .people.not.tew.kill.
  2703. echo          .../dsave........ .save.death.konfig...
  2704. echo          .../flash.(nick). .flash.a.lamuh.......
  2705. echo          .../superflash... .a.big.ol.flash......
  2706. echo          .../unflash...... .fix.it.when.u.get.it
  2707. echo    
  2708. }
  2709.  
  2710. ^alias UNIX {
  2711. echo
  2712. echo         .________________________________________.
  2713. echo         |::::    ____|:     |::::     :|       .:|:
  2714. echo         |:::     : |:       |:::     ::|__.   :__.:
  2715. echo         |::      |:|:.      |::     :::| :|:. |:
  2716. echo         .________|__________|__________| :|___.:.
  2717. echo         .......:.... unikz menu:................     
  2718. echo         ...ctrl+e......... .ereet.write.........
  2719. echo         ...ctrl+z......... .unix.shell..........
  2720. echo         ...ctrl+\......... .switches.channels...
  2721. echo         .../cat........... .show.file.to.screen.
  2722. echo
  2723. }
  2724.   
  2725.  
  2726. ^alias XDCCSTUFF {
  2727. echo
  2728. echo         .________________________________________.
  2729. echo         |::::    ____|:     |::::     :|       .:|:
  2730. echo         |:::     : |:       |:::     ::|__.   :__.:
  2731. echo         |::      |:|:.      |::     :::| :|:. |:
  2732. echo         .________|__________|__________| :|___.:.
  2733. echo          ......:.....xdcc menu................
  2734. echo          ./xdcc.help..... .get help...........
  2735. echo          ./xdcc.sec...... .type./xdcc.help.sec
  2736. echo          ./xdcc.load..... .load/offer.filename
  2737. echo          ./xdcc.psend.... .send.packs.........
  2738. echo          ./xdcc.close.... .to.close.file......
  2739. echo          ./xdcc.save..... .save.filename......
  2740. echo          ./xdcc.get...... .to.get.files.......
  2741. echo          ./xdcc.dir...... .to.get.a.dir.......
  2742. echo          ./xdcc.autoclose .switch.on/off......
  2743. echo          ./xdcc.list..... .get.list.of.packs..
  2744. echo          ./xdcc.plist.... .list.to.channel....
  2745. /pause
  2746. echo          ./xdcc.send..... .send.files.........
  2747. echo          ./xdcc.status... .geet.status........
  2748. echo          ./xdcc.notice... .make.public.notice.
  2749. echo          ./xdcc.offer.... .pick.files.to.offer
  2750. echo          ./xdcc.doffer... .un.offer.a.file....
  2751. echo          ./xdcc.limit.... .put.limit..on.dcc's
  2752. echo          ./xdcc.autoget.. .switch.on/off......
  2753. echo          ./xdcc.autosend. .switch.on/off......
  2754. echo          ./xdcc.noise.... .switch.on/off......
  2755. echo          ./xdcc.glist.... .list.of.pending.dcc
  2756. echo          ./xdcc.dldir.... .set.d/l.dir........
  2757. echo          ./xdcc.uldir.... .set.u/l.dir........ 
  2758. }
  2759.  
  2760. alias save {
  2761. pecho Save started, please wait...
  2762. ^on ^exec_error "save *" #
  2763. ^exec -name save mv $savefile $backup
  2764. wait %save
  2765. ^on ^exec_error - "save *"
  2766. ^exec -name exsve cat >> $savefile
  2767. wait
  2768. ^on ^exec_error "exsve *" #
  2769. ^writeln ### Master Script Save File for -RioT- by filbert
  2770. ^writeln ### Last saved: $left(10 $stime($time())) at $ftm($Z)
  2771. pecho Saving miscellaneous script settings...
  2772. ^writeln # Miscellaneous Settings
  2773. ^writest defumes $defumes
  2774. ^writest idlemes $idlemes
  2775. ^writest pk $pk
  2776. ^writest pingmsg $pingmsg
  2777. ^writest signmsg $signmsg
  2778. ^writest usermode $usermode
  2779. ^writest idletime $idletime 
  2780. ^writest bandef $bandef
  2781. ^writest cstat $cstat
  2782. ^writest extmes $extmes
  2783. ^writest ctcpauto $ctcpauto
  2784. ^writest autochannels $autochannels
  2785. pecho Saving Flood/Mass Protection settings...
  2786. ^writeln # Flood and Mass Protection Settings
  2787. ^writest igtypes $igtypes
  2788. ^writest prot $prot
  2789. ^writest flood_ok $flood_ok 
  2790. ^writest floodp $floodp
  2791. ^writest nhp $nhp
  2792. ^writest cprot $cprot
  2793. ^writest resetcount $resetcount
  2794. ^writest ig_count $ig_count
  2795. ^writest msensor $msensor
  2796. ^writest ksensor $ksensor
  2797. ^writest msgsensor $msgsensor
  2798. ^writest noticesensor $noticesensor
  2799. ^writest ctcpsensor $ctcpsen
  2800. ^writest nicksensor $nicksensor
  2801. pecho Saving XDCC settings...
  2802. ^writeln # XDCC Settings
  2803. ^writest autoget $autoget
  2804. ^writest autosend $autosend
  2805. ^writest autoclose $autoclose
  2806. ^writest autorename $autorename
  2807. ^writest security $security
  2808. ^writest uploaddir $UPLOADDIR
  2809. ^writest downloaddir $DOWNLOADDIR
  2810. ^exec -CLOSE %exsve
  2811. wait
  2812. ^on ^exec_error - "exsve *"
  2813. pecho Save has been completed.
  2814. }
  2815.  
  2816. alias writest {
  2817. ^msg %exsve avar $0 $1-
  2818. wait                         
  2819. }
  2820.  
  2821. alias writeln {
  2822. ^msg %exsve $0-
  2823. wait
  2824. }
  2825.   
  2826.  
  2827.  
  2828. alias net {
  2829. if ([$0]) {
  2830. pecho Hit CONTROL-W then ? for help on windowing commands.
  2831. pecho Creating a window on server $0, please wait...
  2832. ^window new
  2833. if ([$1]) {/EVAL window server $0:$1::_$N}
  2834. {/EVAL window server $0:6667::_$N}}{
  2835. pecho Usage: /net <server> [<port>]
  2836. pecho  /NET creates a new window and connects it to <server>.
  2837. pecho   CONTROL-W + <Letter> is used for most window commands:    
  2838. pecho   ^W? - Shows you this help screen.
  2839. pecho   ^WK - kills the current window.
  2840. pecho   ^WH - hides the current window.
  2841. pecho   ^WS - shows and balances all windows.
  2842. pecho   ^WC - clears the current window.
  2843. pecho   ^WL - lists all windows.
  2844. pecho   ^WP - Goes to the previous window.
  2845. pecho   ^WN or /wn - Goes to the next window.
  2846. pecho   ^W<1-9> - Changes to window number <1-9>.
  2847. pecho   /wr <n> to reduce a window <n> number of lines.        
  2848. pecho   /wg <n> to grow a window <n> number of lines.
  2849. }}
  2850.  
  2851. bind ^W meta2_character
  2852. bind ^W? parse_command net
  2853. bind ^Wh parse_command window hide
  2854. bind ^Wn parse_command window next
  2855. bind ^Wp parse_command window previous
  2856. bind ^Wk parse_command window kill
  2857. bind ^Wl parse_command window list     
  2858. bind ^Wc parse_command clear -a
  2859. bind ^Ws parse_command win_show
  2860. bind ^W1 parse_command window goto 1
  2861. bind ^W2 parse_command window goto 2
  2862. bind ^W3 parse_command window goto 3
  2863. bind ^W4 parse_command window goto 4
  2864. bind ^W5 parse_command window goto 5
  2865. bind ^W6 parse_command window goto 6
  2866. bind ^W7 parse_command window goto 7
  2867. bind ^W8 parse_command window goto 8          
  2868. bind ^W9 parse_command window goto 9
  2869.  
  2870. alias wn window next
  2871. alias wr window shrink
  2872. alias wg window grow
  2873. alias win_show {
  2874. ^window show 2
  2875. ^window show 1
  2876. ^window balance
  2877. }      
  2878.  
  2879. @ defdemal = [DESTROYING THE NET!]
  2880. @ defduser = [power]
  2881. @ dsavepth = [~/death.sav]
  2882.  
  2883. eval load $dsavepth
  2884.  
  2885. alias dsafe {
  2886.         if ([$0]) {
  2887.         if ([$nd[$0]]!=[]) {
  2888.         @ oldnd = [$nd[$0]]
  2889.         } {
  2890.         @ oldnd = [-Null-]
  2891.         }
  2892.         @ nd[$0] = [$1]
  2893.         eval echo Replacing $oldnd with $nd[$0] in position $0
  2894.         } {
  2895.         echo Currently not killing:
  2896.         eval echo $sd  1: $nd[1]
  2897.         eval echo $sd  2: $nd[2]
  2898.         eval echo $sd  3: $nd[3]
  2899.         eval echo $sd  4: $nd[4]
  2900.         eval echo $sd  5: $nd[5]
  2901.         eval echo $sd  6: $nd[6]
  2902.         eval echo $sd  7: $nd[7]
  2903.         eval echo $sd 8: $nd[8]
  2904.         eval echo $sd  9: $nd[9]
  2905.         eval echo $sd 10: $nd[10]
  2906.         echo $sd Who do you not want me to kill??
  2907. }}
  2908. @ kojs = [0]
  2909. alias koj {
  2910.         if ([$0]==[on]) {
  2911.         ^on #^join 671 "*" {
  2912.                 die $0
  2913.                 }
  2914.         @ kojs = [1]
  2915.         echo $sd Kill on Joins now ON.
  2916.         } {
  2917.         if ([$0]==[off]) {
  2918.         ^on #join 671 -*
  2919.         @ kojs = [0]
  2920.         echo $sd Kill on Joins now OFF.
  2921.         } {
  2922.         echo $ex USAGE: /koj <OFF/ON>
  2923.         if ([$kojs]==[0]) {
  2924.         echo $sd  Kill on Joins are currently OFF.
  2925.         }
  2926.         if ([$kojs]==[1]) {
  2927.         echo $sd  Kill on Joins are currently ON.
  2928.         }}}}
  2929. alias konc {
  2930.         if ([$0]==[on]) {
  2931.                 ^on #^raw_irc 671 "* NICK *" {
  2932.                         @ knwnk = [$strip(: $2)]
  2933.                         die $knwnk
  2934.                         }
  2935.                 @ koncs = [1]
  2936.                 echo $sd  Kill on NickChanges now ON.
  2937.                 } {
  2938.         if ([$0]==[off]) {
  2939.                 ^on #raw_irc 671 -"* NICK *"
  2940.                 @ koncs = [0]
  2941.                 echo $sd  Kill on NickChanges now OFF.
  2942.                 } {
  2943.         echo $ex  USAGE: /konc <OFF/ON>
  2944.         if ([$koncs]==[0]) {
  2945.                 echo $sd  Kill on NickChanges are currently OFF.
  2946.         }
  2947.         if ([$koncs]==[1]) {
  2948.                 echo $sd Kill on NickChanges are currently ON.
  2949.         }}}}
  2950. alias die if ([$0]) {
  2951.         if (!match($0 $N $nd[1] $nd[2] $nd[3] $nd[4] $nd[5] $nd[6] $nd[7] \
  2952. $nd[8] $nd[9] $nd[10])) {
  2953.         dthraw NICK $0
  2954.         eval echo $sd  Attempting to kill $0.
  2955.         dthraw NICK $defdnick
  2956.         } {
  2957.         eval echo $sd  Attempting to kill $0.
  2958.         eval echo $sd  $0 is a protected nick!
  2959.         }} {
  2960.         echo $sd  Uhh, who do you want me to kill??
  2961. }
  2962. alias death {
  2963.         @ dnopk = [1]
  2964.         @ dopk = [1]
  2965.         ddeath
  2966. }
  2967. alias opdie {
  2968.         @ dnopk = [0]
  2969.         @ dopk = [1]
  2970.         ddeath
  2971. }
  2972. alias nopdie {
  2973.         @ dnopk = [1]
  2974.         @ dopk = [0]
  2975.         ddeath
  2976. }
  2977. alias ddeath {
  2978.         ^on ^names * dodeath $$1- $defdnick
  2979.         eval names $C
  2980.         wait
  2981.         ^on ^names -*
  2982. }
  2983. alias dodeath {
  2984. if ([$0]) {
  2985.         @ fuqn = [$strip(@+ $0)]
  2986.         if (!match($fuqn $N $nd[1] $nd[2] $nd[3] $nd[4] $nd[5] \
  2987. $nd[6] $nd[7] $nd[8] $nd[9] $nd[10])) {
  2988.                 if ((!match($[1]0 @))&&([$dnopk]==[1])) {
  2989.                         eval dthraw NICK $fuqn
  2990.                         if ([$fuqn]!=[$defdnick]) {
  2991.                                 eval echo $sd  Attempting to kill $fuqn
  2992.                 }}
  2993.                 if ((match($[1]0 @))&&([$dopk]==[1])) {
  2994.                         eval dthraw NICK $fuqn
  2995.                         eval echo $sd  Attempting to kill $fuqn
  2996.         }}}
  2997.         dodeath $1-
  2998. }
  2999. alias dspawn {
  3000.         @ defdnick = [$"Killer Nick: "]
  3001.         @ defdserv = [$"Server: "]
  3002.         @ defdport = [$"Port: "]
  3003.         @ dnum = [$connect($defdserv $defdport)]
  3004.         eval dthraw USER $defduser . . :$defdemal
  3005.         eval dthraw NICK $defdnick
  3006.         eval dthraw MODE $defdnick +i
  3007.         }
  3008. alias dthraw {
  3009.         eval ^dcc raw $dnum $defdserv $0-
  3010.         }
  3011. alias dsave {
  3012.         eval exec rm $dsavepth
  3013.         eval exec -name dsave cat >> $dsavepth
  3014.         eval ^msg %dsave @ nd[1] = [$nd[1]]
  3015.         eval ^msg %dsave @ nd[2] = [$nd[2]]
  3016.         eval ^msg %dsave @ nd[3] = [$nd[3]]
  3017.         eval ^msg %dsave @ nd[4] = [$nd[4]]
  3018.         eval ^msg %dsave @ nd[5] = [$nd[5]]
  3019.         eval ^msg %dsave @ nd[6] = [$nd[6]]
  3020.         eval ^msg %dsave @ nd[7] = [$nd[7]]
  3021.         eval ^msg %dsave @ nd[8] = [$nd[8]]
  3022.         eval ^msg %dsave @ nd[9] = [$nd[9]]
  3023.         eval ^msg %dsave @ nd[10] = [$nd[10]]
  3024.         exec -close %dsave
  3025. }
  3026. # clonebots
  3027. ^on #^dcc_raw 571 "% % E %" echo $sd  Connecting to server: $1 $3
  3028. ^on #^dcc_raw 571 "% % C" echo $sd  Closed connection from server: $1
  3029. ^on #^dcc_raw 571 "% % D % 001 *" echo $sd  Connected to server: $1
  3030. ^on #^dcc_raw 571 "% % D % PING *" {
  3031.         @ paddr = [$strip(: $5)]
  3032.         dthraw PONG $paddr
  3033.         }
  3034. EVAL ^set input_prompt [-RiOt-] |100%| Done...
  3035. EVAL ^set input_prompt (?) 
  3036.  
  3037.  
  3038.  
  3039.