All pastes #778286 Raw Edit

Anonymous

public text v1 · immutable
·published 2007-11-17 13:43 UTC
rendered paste body
on $*:text:/^[!@]away/Si:#:{
  if (!%away. [ $+ [ $address($nick,2) ] ]) {
    if ($len($2-) <= 100) {
      set %away. [ $+ [ $address($nick,2) ] ] $iif($2,$2-,No reason)
      set %awaytime. [ $+ [ $address($nick,2) ] ] $ctime
      msg $chan [7AWAY] $+([7,$nick,]) Reason $+([7,$iif($2,$2-,No reason),]) Left $+([,$chr(3),07,$asctime($gmt,hh:nn:ss:TT),$chr(40),GMT,$chr(41),$chr(3),])
    }
    else .notice $nick Please shorten your reason $+($chr(91),$chr(3),07,$len($2-),$chr(3),/,$chr(3),07,100,$chr(3),$chr(93))
  }
  else .notice $nick Youre already away
}
on $*:text:/^[!@]back/Si:#:{
  if (%away. [ $+ [ $address($nick,2) ] ]) {
    msg $chan [7BACK] $+($chr(91),$chr(3),07,$nick,$chr(3),$chr(93)) Reason $+($chr(91),$chr(3),07,%away. [ $+ [ $address($nick,2) ] ],$chr(3),$chr(93)) Gone $+($chr(91),$chr(3),07,$duration($calc($ctime - %awaytime. [ $+ [ $address($nick,2) ] ] )),$chr(3),$chr(93))
    unset %away. [ $+ [ $address($nick,2) ] ]
    unset %awaytime. [ $+ [ $address($nick,2) ] ]
  }
  else .notice $nick Youre not away
}
on $*:text:/^[!@]list(away)?/Si:#:{
  if ($var(%away.*,0) > 0) { 
    var %k = 1
    while (%k <= $nick($chan,0)) {
      if (%away. [ $+ [ $address($nick($chan,%k),2) ] ]) {
        var %allaway = $iif(%allaway,$+($v1,$chr(3),$chr(44),$chr(3),07)) $nick($chan,%k)
        inc %k
      }
      else inc %k
    }
    $iif($left($2,1) == @,msg $chan,.notice $nick) [7AWAY] $iif(%allaway,Users marked as away in7 $chan $+ :7 %allaway $+ .,No users marked as away in $chan $+ .)
  }
  else $iif($left($2,1) == @,msg $chan,.notice $nick) There are no users marked as away in all channels I am on.
}
on $*:text:/^llama (!|@)check/Si:#:{
  if ($2 == -a) {
    if ($3) {
      if (%away. [ $+ [ $3- ] ]) {
        $iif($left($2,1) == @,msg $chan,.notice $nick) Host $+([7,$3,])  Is away at7 %away. [ $+ [ $3 ] ] $+ . Left7 $duration($calc($ctime - %awaytime. [ $+ [ $3 ] ] )) Ago.
      }
      else $iif($left($2,1) == @,msg $chan,.notice $nick) Host $+([7,$3,]) Is Not away.
    }
    else .notice $nick Please provide a host, !@check -a7 *!*@host. 
  }
  else {
    if ($2) {
      if (%away. [ $+ [ $address($2-,2) ] ]) {
        $iif($left($2,1) == @,msg $chan,.notice $nick) Nick7 $2 Is away at7 %away. [ $+ [ $address($2,2) ] ] $+ . Left7 $duration($calc($ctime - %awaytime. [ $+ [ $address($2-,2) ] ] )) Ago.
      }
      else $iif($left($2,1) == @,msg $chan,.notice $nick) Nick7 $2 Is Not away.
    }
    else {
      if (%away. [ $+ [ $address($nick,2) ] ]) {
        $iif($left($2,1) == @,msg $chan,.notice $nick) Nick7 $nick Is away at7 %away. [ $+ [ $address($nick,2) ] ] $+ . Left7 $duration($calc($ctime - %awaytime. [ $+ [ $address($nick,2) ] ] )) Ago.
      }
      else $iif($left($2,1) == @,msg $chan,.notice $nick) Nick7 $nick Is Not away.
    }
  }
}
on *:text:*:#:{
  var %o = 1
  while (%o <= $0) {
    if (%away. [ $+ [ $address($($+($chr(36),%o),2),2) ] ]) {
      if (!%told. [ $+ [ $address($nick,2) ] ]) {
        .notice $nick [7AWAY] $+($chr(91),$chr(3),07,$ialchan($address($($+($chr(36),%o),2),2),$chan,1).nick,$chr(3),$chr(93)) Is away $+($chr(91),$chr(3),07,%away. [ $+ [ $address($($+($chr(36),%o),2),2) ] ],$chr(3),$chr(93)) They have been gone for $+($chr(91),$chr(3),07,$duration($calc($ctime - %awaytime. [ $+ [ $address($($+($chr(36),%o),2),2) ] ] )),$chr(3),$chr(93))
        set -u60 %told. [ $+ [ $address($nick,2) ] ] HI
        inc %o $0
      }
      else inc %o $0
    }
    else inc %o
  }
}