Seb

Delay Voice +Dm (Undernet)

Seb
Feb 24th, 2026 (edited)
10,490
0
Never
5
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
mIRC 2.79 KB | None | 0 0
  1. ; ================================================================
  2. ; Delay Hidden Voice Script (+Dm Auto Voice Handler)
  3. ; ================================================================
  4. ; Usage:
  5. ; This script is designed for Undernet channels using mode +Dm
  6. ; (Delay Join + Moderated). When enabled, users join the channel
  7. ; without voice and are automatically voiced (+v) after a short delay.
  8. ;
  9. ; Features:
  10. ; - Automatically scans joining users via NAMES reply (RAW 355)
  11. ; - WHOIS checks users before voicing
  12. ; - Voices users after a short delay (5 seconds)
  13. ; - Includes anti-flood protection when unhiding users
  14. ; - Toggle-safe with timer cleanup
  15. ;
  16. ; Requirements:
  17. ; - Must be on Undernet
  18. ; - Requires channel operator access to set +Dm and +v
  19. ;
  20. ; Notes:
  21. ; - The script sets channel mode +Dm when enabled.
  22. ; - When disabled, it removes +Dm and clears timers.
  23. ; - Uses a temporary hash system to prevent voice flooding.
  24. ; ================================================================
  25. menu channel, {
  26.   $iif(undernet isin $network,Delay Voice)
  27.   ..ON:husers | mode $chan +Dm
  28.   ..OFF:husers | mode $chan -Dm
  29. }
  30.  
  31. alias dm.off {
  32.   .names -d $chan
  33.   if ($timer(hUsers) != $null) {
  34.     .timerhUsers off
  35.     unset %huserchan
  36.     echo -at Delay Hidden voice Script is Off!
  37.     .mode $chan -Dm
  38.     unhide $chan
  39.   }
  40. }
  41.  
  42. alias dm.on {
  43.   .timerhUsers 0 15 .names -d $chan
  44.   set %huserchan $chan
  45.   .mode $chan +Dm
  46.   echo -at Delay Hidden voice Script is On!
  47. }
  48.  
  49. raw 355:*: {
  50.   if ( $4 == $null ) { HALT }
  51.   else {
  52.     set %allnicks $4-
  53.     set %i 1
  54.     :next
  55.     set %nick $gettok(%allnicks,%i, 32)
  56.     if %nick == $null goto done
  57.     if $istok( %nrdone,%nick,32 ) { inc %i | goto next }
  58.     .set -u60 %nrdone %nrdone %nick
  59.     .enable #ghost
  60.     .whois %nick
  61.     ;.timern 1 1 .notice %nick You Are hidden under +Dm channel modes, in a moment you will be voiced(+v) and you will be able to speak.
  62.     .timerv 1 5 mode %huserchan +v %nick
  63.     inc %i
  64.     goto next
  65.     :done
  66.   }
  67.   halt
  68. }
  69.  
  70. raw 366:*: halt
  71.  
  72. #ghost off
  73. raw 301:*: halt
  74. raw 310:*: halt
  75. raw 311:*: { echo -at 4 $+ Scanning Hidden User: $address($2,5)  | halt }
  76. raw 312:*: halt
  77. raw 313:*: halt
  78. raw 330:*: halt
  79. raw 319:*: halt
  80. raw 317:*: halt
  81. raw 318:*: { .timer 1 15 .disable #ghost | haltdef }
  82. #ghost end
  83.  
  84. alias unhide {
  85.   hadd -mu4 noflood plx 1
  86.   .timer 1 0 names -d $1
  87. }
  88.  
  89. raw 355:*:{
  90.   if ( $hget(noflood,plx) ) {
  91.     var %total = $numtok($4-,32)
  92.     hadd -mu15 user list $4-
  93.     var %x = $hget(user,0).item
  94.     while ( %x > 0 ) {
  95.       var %a = $gettok($hget(user,list),1-6,32)
  96.       .timer 1 0 mode $3 +vvvvvv %a
  97.       .timer 1 1 mode $3 -vvvvvv %a
  98.       hadd user list $gettok($hget(user,list),7-,32)
  99.       dec %x 6
  100.     }
  101.     HALT
  102.   }
  103. }
  104. raw 366:*:{ if ( $Hget(noflood,plx) ) { HALT } }
  105.  
Advertisement
Comments
  • User was banned
  • User was banned
  • User was banned
  • User was banned
  • User was banned
Add Comment
Please, Sign In to add comment