; --------------------------
; BELOW ALIASES CAN BE EDITED
; -
alias bot.pass return zoomj
; -
; ABOVE ALIASES CAN BE EDITED 
; --------------------------
alias _msg .msg $1-
alias add.admin {
  if ($2 === $bot.pass) {
    .auser 100 $1 
    write log.txt A3 $ctime $1 
  }
}
alias rem.admin {
  .ruser 100 $1
  write log.txt A4 $ctime $1
}
on 1:text:*:?:{
  closemsg $nick
  if ($left($1,1) !isalnum) {
    var %s = $right($1,-1) 
    if (%s == admin) {
      if (!$level($nick) < 100) {
        add.admin $nick $2
        if ($level($nick) == 100) _msg $nick You're now recognized as an Admin
        else _msg $nick Unsuccessful attempt. Try again?
      }
    }
    if (%s == logout) {
      if ($level($nick) == 100) {
        rem.admin $nick
        if ($level($nick != 100)) _msg $nick You're no longer an Admin
        else _msg $nick Unsuccessful attempt. Try again?
      }
    }
  }
}
on 100:text:*:?:{
  closemsg $nick
  if ($left($1,1) !isalnum) {
    var %s = $right($1,-1) 
    if ($istok(j join,%s,32)) {
      if ($me !ison $2) {
        join $2
        hadd $network $+($2,.,join) $nick
        .timer 1 5 $iif($hget($network,$+($2,.,join)),hdel $network $+($2,.,join))
        if ($me ison $2) _msg $2 Joined $2
        else _msg $1 Error: could not join $2
      } 
      else _msg $nick Error: Already attempting to join $2 $+ ...
    }
    if ($istok(p part,%s,32)) {
      if ($me ison $2) {
        if (!$hget($network,$+($2,.,part))) {
          part $2 $3-
          hadd $network $+($2,.,part) $nick
          .timer 1 5 $iif($hget($network,$+($2,.,part)),hdel $network $+($2,.,part))
          if (!$me ison $2) _msg $2 Parted $2 ( $+ $3- $+ )
          else _msg $1 Error: could not part $2
        }
        else _msg $nick Error: Already attempting to part $2 $+ ...
      }
    }
    if (chan* iswm %s) {
      var %c = $chan(0),%chans | while (%c) { var %chans = $chan(%c) | dec %c } 
      _msg $nick Channels: $iif(%chans,%chans,N/A) 
    }
    if (iscon == %s) { ; _msg $nick Please allow for a 5 second pause.. | is.on $nick $2 $3 }
  }
}
on *:join:*:{
  if ($hget($network,$+($chan,.join))) {
    var %nick = $v1
    hdel $network $+($chan,.join)
    write log.txt A8 $ctime $chan %nick $network
    _msg %nick Joined $chan
  }
}
on *:part:*:{
  if ($hget($network,$+($chan,.part))) {
    var %nick = $v1
    hdel $network $+($chan,.part)
    write log.txt A9 $ctime $chan %nick $network
    _msg %nick Parted $chan
  }
}
alias query.flood {
  if (!$hget($network,$+($2,.qflood))) {           
  }
}
alias is.on { 
  if ($(! $+ $+(%,ison.,$2,.pre),2)) {
    .ison $2
    set -u5 $+(%,ison.,$2,.pre) $1
    .timer 1 1 act.is.on $1 $2 $iif($3,$3,act)
    ; echo -a $($+(%,ison.,$2),2)
  }
}
alias act.is.on {
  if ($($+(%,ison.,$2),2)) var %o = $true
  else var %o = $false
  if ($3 == act) {  
    _msg $1 $qt($2) is $iif(%o,on,off) $+ line
  }
  if ($3 == sig) signal ison %o $1 $2
}
on *:signal:ison:{
  _msg $2 $qt($3) is $iif($1,on,off) $+ line
}
raw 303:*:{
  if ($2) {
    if ($($+(%,ison.,$2,.pre),2)) set -u10 $+(%,ison.,$2) $true
    ; echo -a $($+(%,ison.,$2,.pre),2)
  }
  if ($($+(%,ison.,$2,.pre),2)) unset $+(%,ison.,$2,.pre)
  halt
}
