Advertisement
hatchet-smith-icy

AdiIRC & mIRC XDCC browser and search dialogs.

Feb 24th, 2025 (edited)
171
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
mIRC 5.64 KB | Source Code | 0 0
  1. on *:START:{
  2.   .timerhash 1 1 hmake -s xdccv 9999 | dcc packetsize 65535 | fsend on | pdcc on
  3. } // Cleaned up the code
  4.  
  5. alias xdccv if (!$dialog(xdccv)) dialog -md xdccv xdccv
  6. alias addpacket {
  7.   ; /addpacket [nick] [packet N] [line]
  8.   if (!$3) halt
  9.   hadd xdccv $+($1,_,$remove($2,$chr(35))) $3-
  10.   if ($dialog(xdccv)) && (!$didwm(xdccv,27,$1,1)) did -a xdccv 27 $1
  11. }
  12. alias xpack {
  13.  
  14.   ; this determines if the text is a text line or an xdcc pack
  15.   ; you can add your own, you better know how to script though...
  16.   ; if you find an xdcc match, you HAVE to 'return packN [text]'
  17.  
  18.   tokenize 32 $strip($1-)
  19.  
  20.   ; iroffer
  21.   ; #1 14x [ 50M] a_file.zip
  22.   ;
  23.   var %format = #?* [*?*] *
  24.   if (%format iswm $1-) {
  25.     if (*x iswm $2) tokenize 32 $1 $3-
  26.     if ([*] iswm $2-3) tokenize 32 $1 $2 $+ $3-
  27.     var %pack = $regex($1,^(#|)[0-9]+$)
  28.     if (!%pack) return 0
  29.     return $remove($1,$chr(35)) $3-
  30.   }
  31.  
  32.   ; eirc xdcc
  33.   ; #1 arg.exe :: description
  34.   ;
  35.   var %format = #?* *?* :: *?*
  36.   if (%format iswm $1-) {
  37.     var %pack = $regex($1,^(#|)[0-9]+$)
  38.     if (!%pack) return 0
  39.     return $remove($1,$chr(35)) $2-
  40.   }
  41.  
  42.   ; ? xdcc (if you know what it's from tell me, polaris maybe?)
  43.   ; [#13] (0x|639.8Mb) - blahhh.iso
  44.   ;
  45.   var %format = [#*] (*x|*b) - *
  46.   if (%format iswm $1-) {
  47.     var %pack = $regex($1,^\[(#|)[0-9]+\]$)  
  48.     if (!%pack) return 0
  49.     return $remove($1,[,],$chr(35)) $4-
  50.   }
  51. }
  52. dialog xdccv {
  53.   title "File Viewer"
  54.   size -1 -1 913 588  // Increased width and height by 25%
  55.   box "Bots", 1, 6 6 200 531  // Adjusted box dimensions
  56.   button "OK", 2, 714 548 94 31, ok // Adjusted button positions and sizes
  57.   button "Cancel", 3, 813 548 94 31, cancel // Adjusted button positions and sizes
  58.   box "Packs", 4, 211 6 694 531 // Adjusted box dimensions
  59.   list 27, 14 25 184 504, size sort extsel hsbar vsbar // Adjusted list dimensions
  60.   list 28, 220 25 674 502, size sort extsel hsbar vsbar // Adjusted list dimensions
  61.   menu "File", 5
  62.   item "Open...", 34, 5
  63.   item "Open new...", 8, 5
  64.   item "Save as...", 9, 5
  65.   item break, 10, 5
  66.   item Exit, 11, 5
  67.   menu "Packets",29
  68.   item "Request download",30,29
  69.   item break,31,29
  70.   item "Copy selected",32,29
  71.   item "Copy list",33,29
  72.   menu "About", 22
  73.   item "Help...", 23, 22
  74.   item break, 24, 22
  75.   item About..., 25, 22
  76.  
  77.   button Search...,35, 6 548 94 31 //adjusted button position and size
  78.   button "Flush List", 12, 113 548 94 31 //adjusted button position and size
  79. }
  80. on *:dialog:xdccv:sclick:35:xdccs
  81. on *:dialog:xdccv:menu:32:clipboard $$did($dname,28).seltext
  82. on *:dialog:xdccv:menu:33:clipboard $$did($dname,28,1) $+ $crlf | var %a = 2 | while ($did($dname,28,%a)) { clipboard -a $ifmatch $+ $crlf | inc %a }
  83. on *:dialog:xdccv:menu:8:hdel -w xdccv * | hload xdccv " $+ $$sfile(*.xdc,Select file) $+ " | dialog -x $dname | xdccv
  84. on *:dialog:xdccv:menu:34:hload xdccv " $+ $$sfile(*.xdc,Select file) $+ " | dialog -x $dname | xdccv
  85. on *:dialog:xdccv:menu:9:hsave -o xdccv " $+ $$sfile(xdcc-list.xdc,Select file,Save) $+ "
  86. on *:dialog:xdccv:sclick:12:hdel -w xdccv * | did -r $dname 27,28
  87. on *:dialog:xdccv:menu:11:dialog -x $dname
  88. on *:dialog:xdccv:menu:23:help
  89. on *:dialog:xdccv:menu:25:return $input(XDCC Viewer v2.1 $crlf $+ by Eric^^ $crlf $+ $crlf Thanks to: $crlf dohcan - dstudio,124)
  90. on *:dialog:xdccv:dclick:28:var %msg = $$did($dname,27).seltext xdcc send $+($chr(35),$calc($gettok($gettok($$did($dname,28).seltext,1,32),1,46))) | ctcp %msg | if ($network == Dalnet) /dccallow $+(+,$$did($dname,27))
  91. on *:dialog:xdccv:menu:30:var %msg = $$did($dname,27).seltext xdcc send $+($chr(35),$calc($gettok($gettok($$did($dname,28).seltext,1,32),1,46))) | ctcp %msg | if ($network == Dalnet) /dccallow $+(+,$$did($dname,27))
  92. on *:dialog:xdccv:menu:14:var %msg = $$did($dname,27).seltext xdcc list | ctcp %msg
  93. on *:dialog:xdccv:menu:13:var %nick = $$did($dname,27).seltext | did -d $dname 27 $did($dname,27).sel | hdel -w xdccv $+(%nick,_*)
  94. on *:dialog:xdccv:init:*:var %a = 1 | while ($hget(xdccv,%a).item) { var %name = $ifmatch | if (!$didwm($dname,27,$gettok(%name,1- $+ $calc($numtok(%name,95) -1),95),1)) did -a $dname 27 $gettok(%name,1- $+ $calc($numtok(%name,95) -1),95) | inc %a }
  95. on *:dialog:xdccv:sclick:27:did -r $dname 28 | var %a = 1 | while ($hmatch(xdccv,$+($did($dname,27).seltext,_*),%a)) { did -a $dname 28 $right(0000 $+ $gettok($ifmatch,$numtok($ifmatch,95),95),4) $+ . $hget(xdccv,$ifmatch) | inc %a }
  96. on *:text:*:*:if ($xpack($1-)) addpacket $nick $ifmatch
  97. on *:notice:*:*:if ($xpack($1-)) addpacket $nick $ifmatch
  98.  
  99.  
  100. dialog xdccs {
  101.   title "Search File Database"
  102.   size -1 -1 800 500
  103.   box "Search", 1, 10 5 780 30  // Adjusted y coordinate to 5
  104.   edit "", 2, 20 35 650 30, selected // Adjusted edit y coordinate
  105.   button "Search", 3, 680 35 100 30, default // Adjusted button y coordinate
  106.   box "Results", 4, 10 70 780 30  // Adjusted y coordinate to 70
  107.   list 5, 10 100 780 355, size  // Adjusted list y coordinate
  108.   button "OK", 6, 690 460 100 30, ok
  109.   button "Viewer", 36, 10 460 100 30
  110. }
  111. on *:dialog:xdccs:sclick:36:xdccv
  112. on *:dialog:xdccs:dclick:5:ctcp $gettok($did($dname,5).seltext,1,32) xdcc send $gettok($did($dname,5).seltext,2,58) | if ($network == Dalnet) dccallow $+(+,$gettok($did($dname,5).seltext,1,32))
  113. on *:dialog:xdccs:sclick:3:{
  114.   did -r $dname 5
  115.   var %a = 1
  116.   while ($hget(xdccv,%a).item) {
  117.     var %item = $ifmatch,%value = $hget(xdccv,%item),%pack = $gettok(%item,$numtok(%item,95),95),%name = $gettok(%item,1- $+ $calc($numtok(%item,95) -1),95)
  118.     if (* $+ $replace($did($dname,2),$chr(32),*) $+ * iswm %value) did -a $dname 5 %name : $chr(35) $+ %pack : %value
  119.     inc %a
  120.   }
  121. }
  122. alias xdccs if (!$dialog(xdccs)) dialog -md xdccs xdccs
  123.  
  124. -
  125.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement