All pastes #490509 Raw Edit

Mine

public text v1 · immutable
·published 2007-05-16 01:32 UTC
rendered paste body

alias gonehelp {
  /echo -ta 7.:2Help for the Away System - By David7:.
  /echo -ta 2/gone 7<name suffix> <reason>2 - 4 Sets yourself as away. The name suffix is the part of your nick that you wish to come after the line separator.
  /echo -ta 2/gone -s prefix 7<prefix>2 - 4 Sets your name prefix. The name prefix is the part of your nick that comes before the line separator. It is a constant. 
  /echo -ta 2/gone -s main 7<nick>2 - 4 Sets the nickname you use while not away. 
  /echo -ta 2/gone -s pager 7<on/off>2 - 4 Turns the pager on and off
  /echo -ta 2/gone -s logs 7<on/off>2 - 4 Turns the logs on and off
  /echo -ta 2/back - 4 Returns you from the away status.
  /echo -ta 2/pager - 4 Force checks your pager.
}
alias gone {
  write -c pager.txt //echo -ta 7.:2Pager System by David7:.
  if ($left($1,2) == $chr(45) $+ s) {
    if ($2 == prefix) { writeini away.ini prefix prefix $$3 | /echo -t 2Your away prefix has been set to 7 $+ $3 $+ 2. }
    if ($2 == main) { writeini away.ini main nick $$3 | /echo -t 2Your primary nickname has been set to 7 $+ $3 $+ 2. }
    if ($2 == pager) {
      if ($3 == on) {
        if (%pager == on) { /echo -ta 2Your pager is already on. }
        else { set %pager on | /echo -ta 2Your pager is now 7ON }
      }
      elseif ($3 == off) {
        if (%pager == off) { /echo -ta 2Your pager is already off. }
        else { set %pager off | /echo -ta 2Your pager is now 7OFF }
      }
      else { /echo -ta 2The options for this command are 7ON 2and7 OFF2. }
    }
    if ($2 == logs) {
      if ($3 == on) {
        if (%logs == on) { /echo -ta 2Your logs are already on. }
        else { set %logs on | /echo -ta 2Your logs are now 7ON }
      }
      elseif ($3 == off) {
        if (%logs == off) { /echo -ta 2Your logs are already off. }
        else { set %logs off | /echo -ta 2Your logs are now 7OFF }
      }
      else { /echo -ta 2The options for this command are 7ON 2and7 OFF2. }
    }

  }
  else {
    set %prefix $readini(away.ini,prefix,prefix)
    set %primarynick $readini(away.ini,main,nick)
    if (!%prefix) { /echo -ta 7**[AWAY]2 You must designate a nick prefix. $chr(47) $+ gone -s prefix prefix here. }
    else {
      set %reason $$2-
      set %awaytime $remove($time,:)
      /scon -a /nick %prefix $+ $chr(124) $+ $1
      if (%pager == off) {
        if (%logs == on) {
          /scon -a /amsg 7**[AWAY]2 I'm going away due to:7 %reason $+ 2 <> The time is7 $asctime(h:nn:ss TT) $+ 2. Pager is7 OFF2. Logs are7 ON2. 
        }
        else {         /scon -a /amsg 7**[AWAY]2 I'm going away due to:7 %reason $+ 2 <> The time is7 $asctime(h:nn:ss TT) $+ 2. Pager is7 OFF2. Logs are7 OFF2. }
      }
      else { /scon -a /amsg 7**[AWAY]2 I'm going away due to:7 %reason $+ 2 <> The time is7 $asctime(h:nn:ss TT) $+ 2. Pager is7 ON2. }

    }
  }
}
alias back {
  if (!%reason) {
    /echo -t You are not away, dickhead.
  }
  else {
    unset %zeros
    set %backtime $remove($time,:)
    if (%awaytime > %backtime) {
      set %gonetimeun $calc(%awaytime - %backtime)
      set %length $calc(6 - $len(%gonetimeun))
      set %u 0
      while (%u <= %length) {
        set %zeros %zeros $+ 0
        inc %u
      }
      set %gonetimeun %zeros $+ %gonetimeun
      /formattime
    }
    else {
      set %gonetimeun $calc(%backtime - %awaytime)
      set %length $calc(6 - $len(%gonetimeun))
      set %u 0
      while (%u < %length) {
        set %zeros %zeros $+ 0
        inc %u
      }
      set %gonetimeun %zeros $+ %gonetimeun
      /formattime
    }
  }
}

alias formattime {
  set %sec $right(%gonetimeun,2)
  set %gonetimeun2 $remove(%gonetimeun,$right(%gonetimeun,2))
  set %hours $left(%gonetimeun2,2)
  set %min $right(%gonetimeun2,2)
  if (%sec >= 60) {
    set %minremain $int($calc(%sec / 60))
    set %sec $calc(%sec - 60)
    set %min %min + %minremain
  }
  if (%min >= 60) {
    set %hourremain $int($calc(%min / 60))
    set %min $calc(%min - 60)
    set %hours %hours + %hourremain
  }
  if (%hours == 0) { 
    if (%min == 0 || !%min) {
      set %gonetime %sec seconds
    }
    else { set %gonetime %min minutes %sec seconds }
  }
  else {  
    set %gonetime %hours hours %min minutes %sec seconds 
    if (%min == 0 || !%min) {
      set %gonetime %sec seconds
    }
    else { set %gonetime %min minutes %sec seconds }
  }
  /backgmsg
}

alias backgmsg {
  /scon -a /amsg 7**[BACK]2 I went away due to:7 %reason $+ 2 <> Now I'm back <> The time is7 $asctime(h:nn:ss TT) $+ 2. <> I was gone for7 %gonetime $+ 2.
  /scon -a /nick %primarynick
  /pager
  /reset
}

alias reset {
  unset %hours
  unset %min
  unset %sec
  unset %gonetimeun
  unset %gonetime
  unset %reason
  unset %zeros
  unset %awaytime
  unset %backtime
  unset %hourremain
  unset %minremain
}

alias global {
  /scon -a /amsg 3*--[4:GLOBAL:3] 7**[ $+ $upper($$1) $+ ]2 $$2- $+ . 3[4:GLOBAL:3]--*
}

on *:TEXT:*:#:{
  if (%reason) {
    if (Hornet isin $1- || $me isin $1-) {
      /notice $nick 2I am currently away from the computer. <> Reason:7 %reason 2<> I left at:7 %awaytime 2<> Please contact me later, or page me with 7/ctcp $me page message
    }
  }
  if (%logs == on) {
    set %file2 test $+($network,.,$chan,.,txt)
    write $($network $+ . $+ $chan $+ .txt,2) < $+ $date $+ > [ $asctime(h:nn:ss TT) ] < $+ $nick $+ > $strip($1-,burc)
    if ($network !isin %networkslogged) {
      set %networkslogged %networkslogged $network
    }
  }
}

on *:ACTION:*:#:{
  if (%logs == on) {
    write $($network $+ . $+ $chan $+ .txt,2) < $+ $date $+ > [ $asctime(h:nn:ss TT) ] * $nick $strip($1-,burc) 
    if ($network !isin %networkslogged) {
      set %networkslogged %networkslogged $network
    }
  }
}

on *:KICK:#:{ 
  if (%logs == on) {
    write $($network $+ . $+ $chan $+ .txt,2) < $+ $date $+ > [ $asctime(h:nn:ss TT) ] * $nick kicks: $knick 
    if ($network !isin %networkslogged) {
      set %networkslogged %networkslogged $network
    }
  }
}

on *:QUIT:{ 
  if (%logs == on) {
    write $($network $+ . $+ $chan $+ .txt,2) < $+ $date $+ > [ $asctime(h:nn:ss TT) ] * $nick has quit IRC: $1- 
    if ($network !isin %networkslogged) {
      set %networkslogged %networkslogged $network
    }
  }
}

on *:BAN:#:{ 
  if (%logs == on) {
    write $($network $+ . $+ $chan $+ .txt,2) < $+ $date $+ > [ $asctime(h:nn:ss TT) ] * $nick sets mode +b: $bnick $banmask 
    if ($network !isin %networkslogged) {
      set %networkslogged %networkslogged 
      if ($network !isin %networkslogged) {
        set %networkslogged %networkslogged $network
      }
    }
  }
}

on *:OP:#:{
  if (%logs == on) {
    write $($network $+ . $+ $chan $+ .txt,2) < $+ $date $+ > [ $asctime(h:nn:ss TT) ] * $nick sets mode +o: $opnick 
    if ($network !isin %networkslogged) {
      set %networkslogged %networkslogged $network
    }
  }
}

on *:VOICE:#:{
  if (%logs == on) {
    write $($network $+ . $+ $chan $+ .txt,2) < $+ $date $+ > [ $asctime(h:nn:ss TT) ] * $nick sets mode +v: $vnick 
    if ($network !isin %networkslogged) {
      set %networkslogged %networkslogged $network
    }
  }
}

on *:DEOP:#:{
  if (%logs == on) {
    write $($network $+ . $+ $chan $+ .txt,2) < $+ $date $+ > [ $asctime(h:nn:ss TT) ] * $nick sets mode -o: $opnick 
    if ($network !isin %networkslogged) {
      set %networkslogged %networkslogged $network
    }
  }
}

on *:DEVOICE:#:{
  if (%logs == on) {
    write $($network $+ . $+ $chan $+ .txt,2) < $+ $date $+ > [ $asctime(h:nn:ss TT) ] * $nick sets mode -v: $vnick
    if ($network !isin %networkslogged) {
      set %networkslogged %networkslogged $network
    }
  }
}

on *:UNBAN:#:{
  if (%logs == on) { 
    write $($network $+ . $+ $chan $+ .txt,2) < $+ $date $+ > [ $asctime(h:nn:ss TT) ] * $nick sets mode -b: $bnick $banmask 
    if ($network !isin %networkslogged) {
      set %networkslogged %networkslogged $network
    }
  }
}

on *:HELP:#:{
  if (%logs == on) {
    write $($network $+ . $+ $chan $+ .txt,2) < $+ $date $+ > [ $asctime(h:nn:ss TT) ] * $nick sets mode +h: $hnick 
    if ($network !isin %networkslogged) {
      set %networkslogged %networkslogged $network
    }
  }
}

on *:DEHELP:#:{
  if (%logs == on) {
    write $($network $+ . $+ $chan $+ .txt,2) < $+ $date $+ > [ $asctime(h:nn:ss TT) ] * $nick sets mode -h: $hnick
    if ($network !isin %networkslogged) {
      set %networkslogged %networkslogged $network
    }
  }
}  

on *:JOIN:#:{
  if (%logs == on) {
    write $($network $+ . $+ $chan $+ .txt,2) < $+ $date $+ > [ $asctime(hh:nn:ss TT)] $nick Joined: $chan : $fulladdress
    if ($network !isin %networkslogged) {
      set %networkslogged %networkslogged $network

    }
  }
}
on *:PART:#:{
  if (%logs == on) {
    write $($network $+ . $+ $chan $+ .txt,2) < $+ $date $+ > $asctime(hh:nn:ss TT) $nick parted: $chan : $fulladdress 
    if ($network !isin %networkslogged) {
      set %networkslogged %networkslogged $network
    }
  }
}
on *:INPUT:#:{
  if ($left($1-,1) != $chr(47)) {
    if (%logs == on) {
      write $($network $+ . $+ $chan $+ .txt,2) < $+ $date $+ > [ $asctime(h:nn:ss TT) ] < $+ $me $+ > $strip($1-,burc)
      if ($network !isin %networkslogged) {
        set %networkslogged %networkslogged $network
      }
    }
  }
}
ctcp *:page:*:{
  if (%pager == on) {
    if (%reason) {
      write pager.txt //echo -ta 2You were paged by7 $nick 2at7 $asctime(h:nn:ss TT) $+ :7 $2-
    }
    else { /notice $nick 2I am not away at the moment. There is no reason to page me. | halt }
  }
  else { /notice $nick 2My pager is not active. }
}
alias pager { 
  if (%pager == on) {
    if ($lines(pager.txt) == 1) { write pager.txt //echo -ta 2You have no pages. }
    play -s pager.txt 
  }
}