Idle help-check

Contenu du snippet

bonjour :)

alors voici un premier code que je dépose ici. sans aucune prétention , il est très utile

fonctions:

encore plus utile pour les opérateurs de salons officiels ou il n'est pas
autorisé de rester opé ou voicé quand on est pas là ,ce code sert à:

> se déoper ou se dévoicer auto quand on a un idle dépassant le temps d'idle que vous définirez
tout en rajoutant une extension a votre pseudo signifiant votre absence
> si vous n'êtes ni opé ni voicé, alors il ne rajoutera que l'extension approprié

particularité:
les extensions sont variables en fonction de la plage horraire que vous choisirez dans le popup
donc si par exemple vous avez choisi le " time of sleep " @ 23hr , et si le idle-check est activé
à un moment ou le $time se trouve entre 23hr et 07hr du mat , ça mettra " Dort " en extension
autrement ça mettre " Occupe " .

Enfin , comme c'est mon premier code , vous pouvez le critiquer a mort . lol
comme ça je pourrais comprendre mes erreurs car je suis sur qu'il y en a.

merci d'avance :)

TropNul

Source / Exemple :


/*
GOING AWAY / IDLE Helper :o)
Permet de vous mettre une extension 'absent' a votre pseudo
quand vous oubliez si vous êtes @ ou + sur un salon
et même quand vous l'êtes pas. De plus , ça vous dé@ ou dé+ !!
Conseil: Il est préférable de placer l'addon le plus haut
possible dans la liste des remotes en utilisant
ALT+R/File/Order    :o)

  • /
#IdleShortCuts off alias cF1 { GoingIdleAlias } alias cF2 { StopGoingIdle } alias sF2 { .enable #IdleHelpChK } alias sF3 { .disable #IdleHelpChK } alias sF4 { /nick %NickAbsent } alias sF5 { /nick %NickDort } #IdleShortCuts end alias DayNighTest { if (%JourNuit == $null) { set %JourNuit Day | echo -s 4 Le mode Jour est activé 12 ^_^ | halt } elseif (%JourNuit == Day) { if (%DayOrNight == 0) { halt } set %DayOrNight 0 | echo -s 4 Le mode Jour est activé 12 ^_^ | halt } elseif (%JourNuit == Night) { if (%DayOrNight == 1) { halt } set %DayOrNight 1 | echo -s 4 Le mode Nuit est activé 12 -_- | halt } elseif (%JourNuit == DayNight) { if ( $regex($time,/(^(2[2-3]|0[0-6]))/) ) { set %DayOrNight 1 } elseif ( $regex($time,/(^(0[7-9]|1\d|2[0-1]))/) ) { set %DayOrNight 0 } } elseif (%JourNuit == DayNight1) { if ( $regex($time,/(^(23|0[0-6]))/) ) { set %DayOrNight 1 } elseif ( $regex($time,/(^(0[7-9]|1\d|2[0-2]))/) ) { set %DayOrNight 0 } } elseif (%JourNuit == DayNight2) { if ( $regex($time,/(^(0[0-6]))/) ) { set %DayOrNight 1 } elseif ( $regex($time,/(^(0[7-9]|1\d|2[0-3]))/) ) { set %DayOrNight 0 } } elseif (%JourNuit == DayNight3) { if ( $regex($time,/(^(0[1-6]))/) ) { set %DayOrNight 1 } elseif ( $regex($time,/(^(0[7-9]|1\d|2[0-3]|00))/) ) { set %DayOrNight 0 } } } alias AddExtPseudo { if (%DayOrNight == 1) { /nick %NickDort } if (%DayOrNight == 0) { /nick %NickAbsent } /timerGoingIdle off } ;to verify if any chan you're on is moderate alias verifmode { var %chekchanmd = 1 while (%chekchanmd <= $chan(0)) { if (m isin $gettok($chan(%chekchanmd).mode,1,32)) { halt } | inc %chekchanmd } /AddExtPseudo } ;test définitif avant changement d'état alias TestIdle { DayNighTest if ( $idle > %TimeLimit ) { if ($me isop %TonSalon) { /mode %TonSalon -vo $me $me | /verifmode | halt } elseif ($me isvoice %TonSalon) { /verifmode | /part %TonSalon devoicing... | .timer 1 2 /join %TonSalon | halt } else { /verifmode | halt } } } ;compteur d'idle alias GoingIdleAlias { .timerGoingIdle 1 %TimeLimitMax .TestIdle } ;stopper le compteur d'idle alias StopGoingIdle { .timerGoingIdle off } ;tester l'état de l'idle alias TestTimerSalon { if ($timer(GoingIdle).secs > 0) { /StopGoingIdle | .timerWaitoStart 1 3 /GoingIdleAlias } elseif ($timer(GoingIdle).secs == $null) { .timerWaitoStart 1 3 /GoingIdleAlias } } ;configuration du salon principal de surveillance alias ConfigChan { if ( %TonSalon != $null ) { echo -s 3Votre Salon est: 12 %TonSalon } else { set %TonSalon $$?="Entrer le Salon ou vous êtes OP" | echo -s 3Votre Salon est: 12 %TonSalon } } ;configuration des extensions de pseudos alias ConfigNick { if ($1 != $null) && ($2 != $null) { set %NickAbsent $1 | set %NickDort $2 | echo -s Les Extensions par défauts sont: 12 %NickAbsent 3et 12 %NickDort } else { set %NickAbsent $$?="Entrer l'extension quand vous êtes absent" | set %NickDort $$?="Entrer l'extension quand vous dormez" echo -s Vous avez rentré: 12 %NickAbsent 3et 12 %NickDort } } ;pour configurer manuellement l'idle alias ConfigTimerIdle { if ($1 == 15) { set %TimeLimitMax 900 | set %TimeLimit 780 | /echo -s 14Timer Start for Idle Check Initialised ... | :next | /echo -s 14You have 12 $calc((%TimeLimitMax)/60) 14minutes idle time 12 :o) | DayNighTest } elseif ($1 == $null) { set %TimeLimitTemp $$?="Time Limit Maximum Pour L' Idle ( >2 )" | set %TimeLimitMax $calc((%TimeLimitTemp)*60) | set %TimeLimit $calc((%TimeLimitMax)-120) | DayNighTest } } on 1:LOAD:{ /ConfigChan | /ConfigNick Occupe Dort | DayNighTest | /ConfigTimerIdle 15 | /GoingIdleAlias | halt } #IdleHelpChK on on *:input:*:TestTimerSalon On me:^*:JOIN:#:{ TestTimerSalon | haltdef } #IdleHelpChK end menu menubar { - Idle Help-ChecK .$iif($group(#IdleHelpChK) == on,$style(1) Activé,Désactivé):$iif($group(#IdleHelpChK) == on,.disable,.enable) #IdleHelpChK .Configurer Chan:ConfigChan .Configurer Idle-Time ..Manuellement:ConfigTimerIdle ..Remettre a 15 min:/ConfigTimerIdle 15 .Configurer Extension Pseudo ..NickAway:/nick %NickAbsent ..NickDort:/nick %NickDort ..Config Man:ConfigNick ..Auto Config:/ConfigNick Occupe Dort .Raccourcis Clavier ..$iif($group(#IdleShortCuts) == on,$style(1) Activé,Désactivé):$iif($group(#IdleShortCuts) == on,.disable,.enable) #IdleShortCuts .Sleep Time ..@ 22hr:{ set %JourNuit DayNight | echo -s 4 L'heure de l'extension " %NickDort " est 3 22hr | halt } ..@ 23hr:{ set %JourNuit DayNight1 | echo -s 4 L'heure de l'extension " %NickDort " est 3 23hr | halt } ..@ 00hr:{ set %JourNuit DayNight2 | echo -s 4 L'heure de l'extension " %NickDort " est 3 00hr | halt } ..@ 01hr:{ set %JourNuit DayNight3 | echo -s 4 L'heure de l'extension " %NickDort " est 3 01hr | halt } .Day Or Night ..Day:{ set %JourNuit Day | echo -s 4Attention ! 12Vous êtes tout le temps en mode "Jour" | halt } ..Night:{ set %JourNuit Night | echo -s 4Attention ! 12Vous êtes tout le temps en mode "Nuit" | halt } .As you wish ..Start:GoingIdleAlias ..Stop:StopGoingIdle - }

Conclusion :


a venir: choix par l'utilisateur des plages horaires

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.