Away sys v1.0

Contenu du snippet

Simple away system
-pager
-log
-idle
-Nick change

Have fun o.O

Source / Exemple :


alias F4 {
  /unset %awayuser.*
  /dialog -m away away
}
alias warnaway echo -a You are away : %away.reason ( $+ $duration($calc($ctime - %aw.time)) $+ )
alias F5 {
  if ( $away == $true ) {
    if (%awaynick.use == on) { /nick %awaynick.old }
    /resetidle 0
    /away 
    /ame is back after $duration($calc($ctime - %aw.time)) !
    /set %way off  
    //.timeraway off
    /chicon data\main.ico
  }
  else { /echo -a $ud You are back! $ud }
}

on *:text:*:#:{
  if ( $me isin $1- ) { 
    if ( $away == $true ) { 
      if (%awaylog == on) { 
        /window @AwayLog
        /echo @awaylog [ $+ $time $+ ] < $+ $chan $+ / $+ $nick $+ > $1-
      }
      if ( %awayuser. $+ $nick !== yes ) { 
        /.notice $nick is away : reason -  %away.reason  - $+ $duration($calc($ctime - %aw.time)) 
        /set %awayuser. $+ $nick yes 
      } 
    }
  }
}

on *:text:*:?: { 
  if ($away == $true) { 
    /.notice $nick away : ( %away.reason ) - $+ $duration($calc($ctime - %aw.time)) 
    if ( %awaypage == on ) { /.notice $nick If you have somethins important for me /q $me }
    if (%awaylog == on) { 
      /window @AwayLog
      /echo @awaylog [ $+ $time $+ ] < $+ $nick $+ > $1-
    }
  }
}
ctcp *:page:?:{
  if ($away == $true) {  
    if ( %awaypage == on ) { /dialog -m paging paging | /beep 10000 1 | /flash AwAy Pager! | /.notice $nick PAGING!... | /echo -s <+*+> $nick is PAGING you... }
  }
}
on *:open:?:{
  if ($away == $true) {
    if (%awaylog == on) { //.timerclose $+ $nick 1 1 /closemsg $nick }
  }
}

menu menubar,status,channel {
  • Away System(now $iif($away == $true,on,off) $+ )
  .-
  .On:/F4
  .Off:/F5
  .-
  .Settings
  ..Pager(now| %awaypage $+ )
  ...ON:/set %awaypage on
  ...OFF:/set %awaypage off
  ..Idle(now| %awayidle $+ )
  ...ON:/set %awayidle on
  ...OFF:/set %awayidle off
  ...-
  ...Time(now %idletime.min min):{
    /set %idletime.min $?="Enter the time in minutes:"
    /set %idletime.sec $calc(%idletime.min * 60) 
  }
  ..Log(now| %awaylog $+ )
  ...ON:/set %awaylog on
  ...OFF:/set %awaylog off
  ..Use Nick(now %awaynick.use $+ )
  ...ON:/set %awaynick.use on
  ...OFF:/set %awaynick.use off
  ...-
  ...Nick(now %awaynick $+ ):/set %awaynick $?="Enter your away nick:"
  -
}
menu @AwAyLog {
  Close:/close -@ @AwAyLog
}
dialog paging {
  title "PAGING!!!"
  size 162 250 193 35
  option dbu
  button "OK", 10, 27 17 137 11, cancel,
  text "Press the OK Button to STOP Beeping!", 20, 6 5 181 6, center,
}
on *:dialog:paging:sclick:*:{
  if ( $did == 10 ) { /beep off }
}
alias checkidle {
  if ($away == $false) {
    if ($idle >= %idletime.sec) {
      /unset %awayuser.*
      /set %away.reason Auto-away
      /away  %away.reason 
      /ame is away. Reason - %away.reason (after %idletime.min mins idle)  
      /chicon data\away.ico
      /set %away on 
      /set %aw.time $ctime
      //.timeraway 0 300 /warnaway
    }
  }
}
dialog away {
  title "Away System by v1ko0" 
  size -1 -1 175 52 
  option dbu
  text "&Away message:", 202, 5 7 37 7
  edit "", 1, 43 5 118 11, autohs
  text "0", 4, 163 7 13 7
  check "&Pager on", 2, 5 21 44 7 
  check "&Log on", 3, 58 21 39 7
  button "OK", 101, 5 35 27 12, OK default
  button "Cancel", 102, 38 35 27 12, cancel
  check "&Nick:", 103, 75 38 22 7
  edit "", 105, 98 36 73 11
  check "Warn you are away", 104, 107 21 60 7, 3state
} 
on *:dialog:xaway:init:*:{
  if (%awaypage == off) { did -u away 2 }
  if (%awaypage == on) { did -c away 2 }
  if (%awaylog == off) { did -u away 3 }
  if (%awaylog == on) { did -c away 3 }
  if (%awaynick.use == off) { did -u away 103 }
  if (%awaynick.use == on) { did -c away 103 }
  if (%awaywarn == off) { did -u away 104 }
  if (%awaywarn == on) { did -c away 104 }
  if (%awaynick !== $null) { did -a away 105 %awaynick }
}
on *:dialog:away:sclick:*:{
  if ($did == 2) { 
    if (%awaypage == on) { /set %awaypage off }
    else { /set %awaypage on } 
  }
  if ($did == 3) { 
    if (%awaylog == on) { /set %awaylog off }
    else { /set %awaylog on } 
  }
  if ($did == 103) { 
    if (%awaynick.use == on) { /set %awaynick.use off }
    else { /set %awaynick.use on } 
  }
  if ($did == 101) { 
    /set %awaynick $did(105)
    if ($did(1) == $null) { /echo -a $ud Enter your reason ! $ud | halt }
    /set %away.reason $did(1)
    /away  %away.reason 
    /ame is away...reason - %away.reason  
    /chicon data\away.ico
    /set %way on 
    /set %aw.time $ctime
    if (%awaywarn == on) { //.timeraway 0 300 /warnaway }
    if (%awaynick.use == on) { /set %awaynick.old $me | /nick %awaynick }
  }
  if ($did == 104) { 
    if (%awaywarn == on) { /set %awaywarn off }
    else { /set %awaywarn on } 
  }
}

on *:DIALOG:away:edit:1:{ doeditboxchk }
alias -l doeditboxchk {
  if ($len($did(1)) < 100) { did -a $dname 4 $len($did(1)) }
  if ($len($did(1)) == 100) { %did1text = $did(1) | did -a $dname 4 Max }
  if ($len($did(1)) == 101) { did -ar $dname 1 %did1text | beep 1 | %did1text = $did(1) }
}

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.