Sorry, the Edit button disappeared. Just wanted to say that I fixed my problem and the revised script is finished and up for suggestions.
Code:
alias DVoice {
  if ($me isop $chan) {
    if ($read(dvupkeep.txt, s, $address($1, 1)) == $null) {
      if ($2 isnum) {
        mode # -v $1
        write dvupkeep.txt $address($1, 1) - $1
        timerdv $+ $1 1 $2 mode # +v $1
        timerdv2 $+ $1 1 $2 write -ds $+ $address($1, 1) dvupkeep.txt
      }
      else {
        mode # -v $1
        write dvupkeep.txt $address($1, 1) - $1
      }
    }
    else { echo # That person is already in the Devoice List. }
  }
  else { echo # Can't perform action. $me is not an Operator in $chan $+ . }
}


on *:JOIN:#: {
  if ( $me isop $chan ) && ( $read(dvupkeep.txt, s, $address($nick,1) ) != $null ) { notice $nick You are still muted. } 
  else { mode # +v $nick }
}
Menu channel {
  View Devoice List:{
    window @Devoice -l
    filter -fw dvupkeep.txt @Devoice
  }
}
Menu nicklist {
  Devoice 'EM!
  .Perm DVoice: { DVoice $1 }
  .Timed DV
  ..1 Minute: { DVoice $1 60 }
  ..5 Minutes: { DVoice $1 300 }
  ..15 Min: { DVoice $1 900 }
  ..30 Min: { DVoice $1 1800 }
  ..Custom Mins!: {
    $?="Enter how many minutes."
    DVoice $1 $calc( $! * 60 )
  }
  ..Custom Hrs!!: {
    $?="Enter how many hours."
    DVoice $1 $calc( $! * 60 ^ 2 )
  }
  De-Devoice: {
    write -ds $+ $address($1,1) dvupkeep.txt
    mode # +v $1
    timerdv $+ $1 off
    timerdv2 $+ $1 off
  }
}
Menu @Devoice {
  Refresh List: {
    if ($window(@Devoice)) { clear @Devoice }
    else { window @Devoice -l }
    filter -fw dvupkeep.txt @Devoice
  }
}  

Last edited by Nonborn; 25/01/11 04:47 AM.