Auto /hop dés qu'il ya personne (peu être pratique)

Contenu du snippet

Ceci est une remote qui peut servir; dés qu'une personnes quitera votre salon et si la personne en quitant vous laise seul, vous pourez librement devenir operateur par /hop, l'interet de cet remote est de vous auto op pour controler un salon.

Source / Exemple :


on ^1:part:#:{
  if ( %autohopconfig == on ) {
    if ( %prajp == on ) { halt }
    else {
      if ( $me isop $chan ) { halt }
      else {
        /set -u5 %sftnbrp [ $+ [ $chan ] ] $calc($nick(#,0)-1)
      if ( %sftnbrp [ $+ [ $chan ] ] == 1 ){ hop $chan | set -u5 %prajp on | inc %reusites 1 | halt }
      else { halt }
    }
    else { halt }
  }
}

alias autohopconfig {
  dialog -m autohopconfig autohopconfig
}
alias actuc {  
  did -a autohopconfig 6 %reusites
}
dialog autohopconfig {
  title "Auto /hop by juki (juki@noos.fr)"
  size -1 -1 167 31
  option dbu
  text "Ceci vous permez de faire /hop dés qu'il ya que vous sur un salon .", 1, 1 1 163 8
  radio "Activé", 2, 1 10 30 10
  radio "Desactivé", 3, 1 20 35 10
  button "Fermer", 5, 105 10 60 19, ok
  box "Nombre de reusite :", 4, 37 10 67 19
  edit "", 6, 40 17 61 10, disable
}
on *:dialog:autohopconfig:sclick:2:{ set %autohopconfig on | echo -a Tu vien d'activer l'auto hop . }
on *:dialog:autohopconfig:sclick:3:{ set %autohopconfig off | echo -a Tu vien de desactiver l'auto hop . }
on *:dialog:autohopconfig:init:0:{
  actuc
}

Conclusion :


Une explication s'impose pour comprendre cette source pour ceux qui debute en scripting.
on ^1:part:#:{
Est la commade de basse des evenements (part), ici le # signifit que cela peut se produire n'importe où , où vous vous situé.
if ( %autohopconfig == on ) {
Est la condition if , qui dit que si la variable %autohopconfig est "egale" à "on" alors ...
if ( $me isop $chan ) { halt }
Cela signifit juste que si les deux criteres sont accepté ( %autohopconfig == on et %prajp n'est pas égale à "on" ) et si vous êtes vous ($me) deja operateur sur le salon où c'est produit l'evenement "part" alors ont execute "halt" ou "/halt" donc ont ne fait rien !
/set -u5 %sftnbrp [ $+ [ $chan ] ] $calc($nick(#,0)-1)
Ici vous allons fixez à la variable contruictive %sftnbrp#salon deux chose : une autodestruction de la variable aprés 5secondes de sa création et nous allons appliqué a la variable %sftnbrp#salon un calcule sera la fonction qui permet de savoir le nombre de personne sur un salon -1.
if ( %sftnbrp [ $+ [ $chan ] ] == 1 ){ hop $chan | set -u5 %prajp on | inc %reusites 1 | halt }
Pour cette condition là, il faut que deja 3 autres contidions soit effectué puis si le nombre affecté a la variable %sftnbrp#salon est égale à 1, nous effectuons l'application qui consiste à faire un /hop puis de créer la variable %prajp qui sera detruite aprés 5 secondes et qui permet deviter les bugs , nous allons aussi faire une incrementation sur la variable %reusites de 1, qui va servir pour le dialogue (savoir combien de fois ont à reussi notre coup) .
Voila se qu'il ait de l'autre partie (dialogue) cela reste pas trés compliqué, je vous conseille : Dialog Studio pour realiser votre dialogues en quelques minutes.

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.