Autolimit v2.0

Soyez le premier à donner votre avis sur cette source.

Snippet vu 4 078 fois - Téléchargée 24 fois

Contenu du snippet

Il incrémente toujours le +l du nombre que vous souhaitez au dessus du nombre de visiteurs.
permet d'éviter les entrées massives de clones

permet de gerer jusqu'à 10 salons

Source / Exemple :


Menu channel,query,menubar {
  -
  Autolimit
  .Configuration :/autolimit
  .$iif(%es.al.act == 1, Désactiver) :/limit
  .$iif(%es.al.act == 0, Activer) :/limit
}

alias autolimit dialog -md autolimit autolimit 
dialog autolimit {
  title "AutoLimit"
  size -1 -1 440 235
  option pixels notheme
  tab "Configuration", 9, 0 2 440 237
  tab "Salons", 1
  edit %es.al.limite, 2, 190 58 100 20, tab 9
  edit %es.al.tps, 3, 189 98 100 20, tab 9
  button "Changer", 4, 339 75 65 25, tab 9
  text "Limite", 5, 50 58 100 17, tab 9
  text "Temps", 6, 50 98 100 17, tab 9
  button "?", 7, 300 58 20 20, tab 9
  button "?", 8, 300 98 20 20, tab 9
  edit %es.al.chan1, 12, 85 60 100 20, tab 1
  edit %es.al.chan2, 13, 85 90 100 20, tab 1
  edit %es.al.chan3, 14, 85 150 100 20, tab 1
  edit %es.al.chan4, 15, 290 120 100 20, tab 1
  edit %es.al.chan5, 16, 290 60 100 20, tab 1
  edit %es.al.chan6, 17, 290 150 100 20, tab 1
  edit %es.al.chan7, 18, 290 90 100 20, tab 1
  edit %es.al.chan8, 19, 85 120 100 20, tab 1
  edit %es.al.chan9, 20, 290 180 100 20, tab 1
  edit %es.al.chan10, 21, 85 180 100 20, tab 1
  text "Entrez les salons ou vous souhaitez activer l'autolimit dans les champs", 22, 20 31 399 17, tab 1
  button "Enregistrer", 23, 70 205 80 25, tab 1
  text "Salon 1", 24, 8 60 70 15, tab 1
  text "Salon 2", 25, 8 90 70 15, tab 1
  text "Salon 3", 26, 8 120 70 17, tab 1
  text "Salon 4", 27, 8 150 70 15, tab 1
  text "Salon 5", 28, 8 180 70 15, tab 1
  text "Salon 6", 29, 200 60 70 15, tab 1
  text "Salon 7", 30, 200 90 70 15, tab 1
  text "Salon 8", 31, 200 120 70 15, tab 1
  text "Salon 9", 32, 200 150 70 15, tab 1
  text "Salon 10", 33, 200 180 70 15, tab 1
  link "www.easirc.org", 34, 353 3 80 17
  button "Fermer", 10, 300 205 65 25, tab 1 cancel
  button "Fermer", 35, 300 180 65 25, tab 9 cancel
  text "Activer/desactiver l'AutoLimit : /limit", 11, 30 180 192 17, tab 9
}
dialog help.limite {
  title "Limite"
  size -1 -1 291 146
  option pixels notheme
  text "La limite est le difference entre le nombre de personnes sur le salon, et la mode +l qui sera mis. ", 1, 10 26 268 33
  text "Par exemple, si il y a 20 personnes sur votre salon, et que la limite est a 3, l'add-on mettra le mode +l 23", 2, 10 70 268 32
}
dialog help.temps {
  title "Temps"
  size -1 -1 291 146
  option pixels notheme
  text "Le temps sera, apres une entree ou une sortie le temps en secondes apres lequel le mode +l sera incrémenté", 1, 10 16 270 31
  text "Si vous le mettez trop haut, personne ne pourra entrer sur votre salon (ils auront le mode +l trop bas, et les bloquant)", 2, 10 60 271 42
  text "Valeur conseillée : 15", 3, 10 121 150 17
}
ON *:DIALOG:autolimit:sclick:4:{ 
  /set %es.al.limite $did(autolimit, 2) 
  /set %es.al.tps $did(autolimit, 3) 
}
ON *:DIALOG:autolimit:sclick:7:{ 
  dialog -md help.limite help.limite
}
ON *:DIALOG:autolimit:sclick:8:{ 
  dialog -md help.temps help.temps
}

ON *:DIALOG:autolimit:sclick:34:{ 
  /url http://www.easirc.org
}
ON *:DIALOG:autolimit:sclick:23:{ 
  /set %es.al.chan1 $did(autolimit, 12)
  /set %es.al.chan2 $did(autolimit, 13)
  /set %es.al.chan3 $did(autolimit, 14)
  /set %es.al.chan4 $did(autolimit, 15)
  /set %es.al.chan5 $did(autolimit, 16)
  /set %es.al.chan6 $did(autolimit, 17)
  /set %es.al.chan7 $did(autolimit, 18)
  /set %es.al.chan8 $did(autolimit, 19)
  /set %es.al.chan9 $did(autolimit, 20)
  /set %es.al.chan10 $did(autolimit, 21)
}

alias limit {
  /set %es.al.limit 0
  if (%es.al.act != 1) {
    /set %es.al.limit 1
    /set %es.al.act 1
    if ($me isop %es.al.chan1) {
      set %es.al.incr $nick(%es.al.chan1,0) + %es.al.limite
      .mode %es.al.chan1 +l %es.al.incr
    }
    if ($me isop %es.al.chan2) {
      set %es.al.incr $nick(%es.al.chan2,0) + %es.al.limite
      .mode %es.al.chan2 +l %es.al.incr
    }
    if ($me isop %es.al.chan3) {
      set %es.al.incr $nick(%es.al.chan3,0) + %es.al.limite
      .mode %es.al.chan3 +l %es.al.incr
    }
    if ($me isop %es.al.chan4) {
      set %es.al.incr $nick(%es.al.chan4,0) + %es.al.limite
      .mode %es.al.chan4 +l %es.al.incr
    }
    if ($me isop %es.al.chan5) {
      set %es.al.incr $nick(%es.al.chan5,0) + %es.al.limite
      .mode %es.al.chan5 +l %es.al.incr

    }
    if ($me isop %es.al.chan6) {
      set %es.al.incr $nick(%es.al.chan6,0) + %es.al.limite
      .mode %es.al.chan6 +l %es.al.incr

    }
    if ($me isop %es.al.chan7) {
      set %es.al.incr $nick(%es.al.chan7,0) + %es.al.limite
      .mode %es.al.chan7 +l %es.al.incr

    }
    if ($me isop %es.al.chan8) {
      set %es.al.incr $nick(%es.al.chan8,0) + %es.al.limite
      .mode %es.al.chan8 +l %es.al.incr

    }
    if ($me isop %es.al.chan9) {
      set %es.al.incr $nick(%es.al.chan9,0) + %es.al.limite
      .mode %es.al.chan9 +l %es.al.incr

    }
    if ($me isop %es.al.chan10) {
      set %es.al.incr $nick(%es.al.chan10,0) + %es.al.limite
      .mode %es.al.chan10 +l %es.al.incr

    }
    echo -a 5--- AutoLimit Activé 5---
  }
  if (%es.al.act == 1 && %es.al.limit == 0) {
    /set %es.al.act 0 
    if ($me isop %es.al.chan1) {
      .mode %es.al.chan1 -l 
    }
    if ($me isop %es.al.chan2) {
      .mode %es.al.chan2 -l 
    }
    if ($me isop %es.al.chan3) {
      .mode %es.al.chan3 -l
    }
    if ($me isop %es.al.chan4) {
      .mode %es.al.chan4 -l
    }
    if ($me isop %es.al.chan5) {
      .mode %es.al.chan5 -l
    }
    if ($me isop %es.al.chan6) {
      .mode %es.al.chan6 -l
    }
    if ($me isop %es.al.chan7) {
      .mode %es.al.chan7 -l
    }
    if ($me isop %es.al.chan8) {
      .mode %es.al.chan8 -l
    }
    if ($me isop %es.al.chan9) {
      .mode %es.al.chan9 -l
    }
    if ($me isop %es.al.chan10) {
      .mode %es.al.chan10 -l
    }
    echo -a 5--- AutoLimit Stoppé 5---
} }

ON *:JOIN:*: {
  .timerlimit off
  .timerlimit 1 %es.al.tps .es.al.actualise
}
ON *:PART:*: { 
  .timerlimit off
  .timerlimit 1 %es.al.tps .es.al.actualise
}
ON *:QUIT:*: {
  .timerlimit off
  .timerlimit 1 %es.al.tps .es.al.actualise
}
ON *:KICK:*: { 
  .timerlimit off
  .timerlimit 1 %es.al.tps .es.al.actualise
}

alias es.al.actualise {
  if ($me isop %es.al.chan1) {
    set %es.al.incr $nick(%es.al.chan1,0) + %es.al.limite
    .mode %es.al.chan1 +l %es.al.incr
  }
  if ($me isop %es.al.chan2) {
    set %es.al.incr $nick(%es.al.chan2,0) + %es.al.limite
    .mode %es.al.chan2 +l %es.al.incr
  }
  if ($me isop %es.al.chan3) {
    set %es.al.incr $nick(%es.al.chan3,0) + %es.al.limite
    .mode %es.al.chan3 +l %es.al.incr
  }
  if ($me isop %es.al.chan4) {
    set %es.al.incr $nick(%es.al.chan4,0) + %es.al.limite
    .mode %es.al.chan4 +l %es.al.incr
  }
  if ($me isop %es.al.chan5) {
    set %es.al.incr $nick(%es.al.chan5,0) + %es.al.limite
    .mode %es.al.chan5 +l %es.al.incr
  }
  if ($me isop %es.al.chan6) {
    set %es.al.incr $nick(%es.al.chan6,0) + %es.al.limite
    .mode %es.al.chan6 +l %es.al.incr
  }
  if ($me isop %es.al.chan7) {
    set %es.al.incr $nick(%es.al.chan7,0) + %es.al.limite
    .mode %es.al.chan7 +l %es.al.incr
  }
  if ($me isop %es.al.chan8) {
    set %es.al.incr $nick(%es.al.chan8,0) + %es.al.limite
    .mode %es.al.chan8 +l %es.al.incr
  }
  if ($me isop %es.al.chan9) {
    set %es.al.incr $nick(%es.al.chan9,0) + %es.al.limite
    .mode %es.al.chan9 +l %es.al.incr
  }
  if ($me isop %es.al.chan10) {
    set %es.al.incr $nick(%es.al.chan10,0) + %es.al.limite
    .mode %es.al.chan10 +l %es.al.incr
  }

}

Conclusion :


/autolimit : menu de configuration
/limit : démarrer/arreter l'add-on

A voir également

Ajouter un commentaire

Commentaires

Messages postés
427
Date d'inscription
dimanche 6 juillet 2008
Statut
Membre
Dernière intervention
4 mai 2009

moi je met 10/10, car j'adore :D
Messages postés
708
Date d'inscription
lundi 15 juillet 2002
Statut
Membre
Dernière intervention
17 mars 2005

optimise while et list c tout ce que j'ai a dire
Messages postés
47
Date d'inscription
mercredi 10 décembre 2003
Statut
Membre
Dernière intervention
20 mai 2004

je suis d'accord pour son utilté limité je me suis quand même amusé à l'optimiser (parce que j'en est marre de ces codes qui sont limités), je te le fait parvenir KaZhaR
utilité: 4/10
originalité: 5/10
scripting: 4/10
NOTE: 4/10
Messages postés
230
Date d'inscription
samedi 6 septembre 2003
Statut
Membre
Dernière intervention
13 mai 2004

mal codé tu aurait dû comme la dit sorn faire tout ca dans une LIST et tes $did sont mal structurer tu devrait faire comme ca $did(id) au lieu de $did(dialog,id) 5/10 très peu utile
Messages postés
2087
Date d'inscription
jeudi 12 décembre 2002
Statut
Modérateur
Dernière intervention
30 janvier 2011
8
Trop long pour se que c'est censé faire. Une LIST, une boucle, et le tour est joué. Pas besoin d'autant d'edit.
Afficher les 6 commentaires

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.

Du même auteur (cs_KaZhaR)