Explorando: ./mrc

Repositorio de scripts de irc.terrachat.cl desde los canales #TRAFFIC y #LATINWAREZ.

⬅️ Volver

Vista previa de: DCCSendQueue.mrc

;### DSQ - DCCSendQueue. ;# by dramz 2004. ;### Read the dcc_queue_readme.txt for more information on this mIRC script. ;### Do not edit below this line if you don't know what you're doing! alias dsq_Version { return 0.7 } menu query,nicklist { $iif(!$dsq_Reciver($1,$active),$style(2)) DCC Send Queue $dsq_Version . $+($iif($send($dsq_Reciver($1,$active),0) >= 1,$style(2) S,Start s),ending files in queue, $chr(32), $chr(40),$iif($lines($dsq_QueueFile($dsq_Reciver($1,$active))) >= 1,$lines($dsq_QueueFile($dsq_Reciver($1,$active))),No) files in queue,$chr(41)) : dsq_DccSend $dsq_Reciver($1,$active) $read($dsq_QueueFile($dsq_Reciver($1,$active)),1) . $iif(!$send($dsq_Reciver($1,$active),0),$style(2)) Pause after current send : set %dsq_status_ [ $+ [ $dsq_Reciver($1,$active) ] ] paused | dsq_WinEcho $dsq_Reciver($1,$active) Pause after current send. .- .Add directory to queue : dsq_AddDirToQueue $dsq_Reciver($1,$active) .Add file(s) to queue : dsq_AddFileToQueue $dsq_Reciver($1,$active) .- .List files in queue : dsq_ListQueue $dsq_Reciver($1,$active) .Remove a file in queue : dsq_RemoveFileFromQueue $dsq_Reciver($1,$active) .Remove all files in queue : dsq_RemoveAllFilesInQueue $dsq_Reciver($1,$active) .- .DCC Send Speed Limit $+($chr(40),$dsq_SpeedLimit,$chr(41)) : dsq_SpeedLimit $dsq_Reciver($1,$active) $$input(Enter Speedlimit in kilobytes/s $crlf $+ (Max: 1240000000. Min: 1. Disable: off) $crlf $+ $crlf $+ Example: "20" for 20kilobytes/s or "off" for No Limit , e,Speed Limit) . $iif($group(#dsq_remotecommand) == on,$style(1)) Allow users to !pause,!resume and check !status for filesends : $iif($group(#dsq_remotecommand) == on,.disable #dsq_remotecommand,.enable #dsq_remotecommand) } alias dsq_Reciver { if (($1 == $2) || ($2 ischan)) { return $1 } else { return $2 } } alias dsq_QueueFile { return $+(",$scriptdirDCC_Queue_ [ $+ [ $replace($$1,\,_,/,_,|,_) ] $+ ] .txt,") } alias dsq_SpeedLimit { if (!$2) { return $iif(%dsq_SpeedLimit isnum, $calc(%dsq_SpeedLimit / 8), No Limit) | return } else if ($2 == off) { unset %dsq_SpeedLimit | dsq_WinEcho $1 DCC Send Speed Limit is disabled. | return } else if ($2 isnum) { set %dsq_SpeedLimit $calc($2 * 8) | dsq_WinEcho $1 DCC Send Speed Limit is set to $2 kilobytes/s. | return } else { dsq_WinEcho $1 DCC Send Speed Limit: Invalid input. Please enter a number. } } alias dsq_DeleteQueue { linesep $$1 if ($input(Sure you want to delete the queuefile for $$1 $+ ?,y,DCC Queue)) { .remove $dsq_QueueFile($$1) dsq_WinEcho $$1 Deleted $$1 $+ 's queue. } else { dsq_WinEcho $$1 Queue delete cancelled. } linesep $$1 } alias dsq_RemoveAllFilesInQueue { linesep $$1 if ($input(Sure you want to delete ALL files in queue for $$1 $+ ?,y,DCC Queue)) { if ($send($$1,0) == 0) { .remove $dsq_QueueFile($$1) } else ($lines($dsq_QueueFile($$1)) >= 2) { var %dsq_tmp = $read($dsq_QueueFile($$1),1) .remove $dsq_QueueFile($$1) write $dsq_QueueFile($$1) %dsq_tmp } dsq_WinEcho $$1 Files in queue removed. } else { dsq_WinEcho $$1 Queue delete cancelled. } linesep $$1 } alias dsq_RemoveFileFromQueue { if ($2 !isnum) { var %dsq_tmp = $input(Enter the queue number to remove from list. $+ $crlf (Use "List files in queue" to get the queue number),e,DCC Queue) } else { var %dsq_tmp = $2 } linesep $$1 if ((%dsq_tmp isnum) && ($read($dsq_QueueFile($$1),%dsq_tmp) != $null)) { var %dsq_tmp2 = $read($dsq_QueueFile($$1),%dsq_tmp) .write -dl [ $+ [ %dsq_tmp ] ] $dsq_QueueFile($$1) dsq_WinEcho $$1 Removed file %dsq_tmp2 with queue number %dsq_tmp from queue. } else { dsq_WinEcho $$1 Queue remove cancelled. } linesep $$1 } alias dsq_AddDirToQueue { var %dsq_tmp = $sdir($iif($exists(%dsq_dir),%dsq_dir,C:\),DCC Queue) if ($exists(%dsq_tmp)) { set %dsq_dir $nofile(%dsq_tmp) } linesep $$1 if ($exists(%dsq_tmp)) { dsq_WinEcho $$1 Adding %dsq_tmp to $$1 $+ 's queue... var %dsq_tmp2 = $findfile(%dsq_tmp,*.*,0) var %dsq_tmp3 = %dsq_tmp2 while (%dsq_tmp2 >= 1) { dsq_AddToQueue $$1 $findfile(%dsq_tmp,*.*,%dsq_tmp2) dec %dsq_tmp2 1 } dsq_WinEcho $$1 %dsq_tmp3 files added to queue. Total files in queue is $lines($dsq_QueueFile($$1)) $+ . } else { dsq_WinEcho $$1 No files added to queue. } linesep $$1 } alias dsq_AddFileToQueue { var %dsq_tmp = $msfile($iif($exists(%dsq_dir),%dsq_dir,C:\),DCC Queue,Add) if ($exists(%dsq_tmp)) { set %dsq_dir $nofile(%dsq_tmp) } linesep $$1 if ((%dsq_tmp isnum) && (%dsq_tmp >= 1)) { dsq_WinEcho $$1 Adding files to $$1 $+ 's queue... while (%dsq_tmp >= 1) { var %dsq_tmpfile = $msfile(%dsq_tmp) if ($exists(%dsq_tmpfile)) { set %dsq_dir $nofile(%dsq_tmpfile) } dsq_AddToQueue $$1 %dsq_tmpfile dec %dsq_tmp 1 } dsq_WinEcho $$1 $msfile(0) files added to queue. Total files in queue is $lines($dsq_QueueFile($$1)) $+ . } else { dsq_WinEcho $$1 No files added to queue. } linesep $$1 } alias dsq_AddToQueue { write $dsq_QueueFile($$1) $$2- } alias dsq_ListQueue { var %dsq_tmp = $lines($dsq_QueueFile($$1)) var %dsq_tmp2 = %dsq_tmp linesep $$1 if (%dsq_tmp >= 1) { dsq_WinEcho $$1 Listing files in queue... while (%dsq_tmp >= 1) { echo $colour(info) $$1 $str($chr(160),3) %dsq_tmp - $read($dsq_QueueFile($$1),%dsq_tmp) dec %dsq_tmp 1 } dsq_WinEcho $$1 Done. $+(,%dsq_tmp2,) files in queue. } else { dsq_WinEcho $$1 No files in queue. } linesep $$1 } alias dsq_WinEcho { if (!$query($$1)) { query -n $$1 } echo $colour(info) $$1 $timestamp * $2- } alias dsq_DccSend { .dcc maxcps 9999999999 if (!$exists($2-)) { dsq_WinEcho $$1 Requested file doesn't seem to exist. (You need to add files to queue in order to start sending.) } else { dcc send -cl0 $$1 $+(",$2-,") } } on *:FILESENT:*: { if ($filename == $read($dsq_QueueFile($nick),1)) { dsq_WinEcho $nick Sent $+(",$filename,".) linesep $nick unset %dsq_retry_ [ $+ [ $nick ] ] var %dsq_tmp = 1 while (%dsq_tmp == 1) { .write -dl1 $dsq_QueueFile($nick) if (%dsq_status_ [ $+ [ $nick ] ] == paused) { dsq_WinEcho $nick Paused. | msg $nick Filsend is paused. | goto end } if ($lines($dsq_QueueFile($nick)) < 1) { dsq_WinEcho $nick No more files left in queue. Halt. | goto end } if (!$exists($read($dsq_QueueFile($nick),1))) { dsq_WinEcho $nick File doesn't seem to exist. Deleting it from queue. } else { dsq_WinEcho $nick $calc($lines($dsq_QueueFile($nick)) -1) files left in queue. | dsq_WinEcho $nick Sending: $+(",$read($dsq_QueueFile($nick),1),".) | %dsq_tmp = 0 | dsq_DccSend $nick $read($dsq_QueueFile($nick),1) } } } :end } on *:SENDFAIL:*: { if ($filename == $read($dsq_QueueFile($nick),1)) { dsq_WinEcho $nick Failed to send $+(",$filename,".) if (%dsq_retry_ [ $+ [ $nick ] ] >= 2) { dsq_WinEcho $nick Send failed after 3 retries. dsq_WinEcho $nick Right-click in the window and select "Start sending files in queue" in the menu to resume sending. } else { inc %dsq_retry_ [ $+ [ $nick ] ] 1 dsq_WinEcho $nick Trying to resend file in 30 seconds .timer 1 30 dsq_DccSend $nick $read($dsq_QueueFile($nick),1) } } } on *:NICK: { if ($exists($dsq_QueueFile($nick))) { if ($lines($dsq_QueueFile($nick)) >= 1) { dsq_WinEcho $newnick Nickchange: $nick -> $newnick $+ . Renamed DCC Send Queue-file to suit new nickname. .rename $dsq_QueueFile($nick) $dsq_QueueFile($newnick) } else { .remove $dsq_QueueFile($nick) } } } ;#EOF

👁️ 4 vistas • 📥 0 descargas

⬆ Subir