begin process at 2012 02 08 18:01:34
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

AddOns

 > AUTO LLIMITE SIMPLE

AUTO LLIMITE SIMPLE


 Information sur la source

Note :
Aucune note
Catégorie :AddOns Niveau :Débutant Date de création :02/03/2005 Date de mise à jour :05/03/2005 13:54:08 Vu :2 882

Auteur : Cyrilpop

Ecrire un message privé
Commentaire sur cette source (2)
Ajouter un commentaire et/ou une note

 Description

Voici un petit autolimite très simple pour comme son nom l'indique varier la limite d'un chan de facon automatique.

Source

  • ###########Dfinition des variables#################
  • ; %limite.chan => la limite laquelle va etre mis le chan
  • ; %add => nombre au dessis du nombre d'user que vous dsirez
  • ; %timerS => timer court
  • ; %timerL => timer long
  • ####################################################
  • ON *:START:{
  • set %add 4
  • set %timerS 3
  • set %timerL 5
  • }
  • alias autolimite {
  • mode %chan +l %limite. [ $+ [ %chan ] ]
  • }
  • On @!*:JOIN:#:{
  • set %chan $chan
  • set %limite. [ $+ [ $chan ] ] $calc($nick($chan,0) + %add)
  • if (!$timer(%chan)) { timer $+ %chan 1 %timerL autolimite }
  • }
  • On @!*:PART:#:{
  • set %chan $chan
  • set %limite. [ $+ [ $chan ] ] $calc($nick($chan,0) + %add -1)
  • if (!$timer(%chan)) { timer $+ %chan 1 %timerS autolimite }
  • }
  • On *:KICK:#:{
  • set %chan $chan
  • set %limite. [ $+ [ $chan ] ] $calc($nick($chan,0) + %add -1)
  • if (!$timer(%chan)) { timer $+ %chan 1 %timerS autolimite }
  • }
  • On *:QUIT:{
  • set %nb_chan $comchan($nick,0)
  • set %i 1
  • while (%i <= %nb_chan) {
  • set %limite. [ $+ [ $comchan($nick,%i) ] ] $calc($nick($comchan($nick,%i),0) + %add - 1)
  • if (!$timer(%chan)) { timer $+ %chan 1 %timerS mode $comchan($nick,%i) +l %limite. [ $+ [ $comchan($nick,%i) ] ]
  • }
  • inc %i
  • }
  • }
###########Dfinition des variables#################
; %limite.chan => la limite  laquelle va etre mis le chan
; %add => nombre au dessis du nombre d'user que vous dsirez
; %timerS => timer court
; %timerL => timer long
####################################################

ON *:START:{
  set %add 4
  set %timerS 3
  set %timerL 5
}



alias autolimite {
  mode %chan +l %limite. [ $+ [ %chan ] ]
}


On @!*:JOIN:#:{
  set %chan $chan
  set %limite. [ $+ [ $chan ] ] $calc($nick($chan,0) + %add)
  if (!$timer(%chan)) { timer $+ %chan 1 %timerL autolimite }
}

On @!*:PART:#:{
  set %chan $chan
  set %limite. [ $+ [ $chan ] ] $calc($nick($chan,0) + %add -1)
  if (!$timer(%chan)) { timer $+ %chan 1 %timerS autolimite }
}


On *:KICK:#:{
  set %chan $chan
  set %limite. [ $+ [ $chan ] ] $calc($nick($chan,0) + %add -1)
  if (!$timer(%chan)) { timer $+ %chan 1 %timerS autolimite }
}



On *:QUIT:{
  set %nb_chan $comchan($nick,0)
  set %i 1
  while (%i <= %nb_chan) {
    set %limite. [ $+ [ $comchan($nick,%i) ] ] $calc($nick($comchan($nick,%i),0) + %add - 1)
    if (!$timer(%chan)) { timer $+ %chan 1 %timerS mode $comchan($nick,%i) +l %limite. [ $+ [ $comchan($nick,%i) ] ]
    }
    inc %i
  }
}

 Conclusion

Que dire de plus ?


 Historique

05 mars 2005 06:46:43 :
Maintenant si pendant l'exécution du timer il y a plusieurs personnes qui rentrent ou un in/out, le changement se fait en une seule fois, ou la limite ne change meme pas dans le cas d'un in/out.
05 mars 2005 07:07:32 :
Une erreur s'est glissée dans ma mise à jour voila qui est corrigé, encore désolé.
05 mars 2005 10:09:37 :
Correction du bug multichan, en effet, si deux personnes arrievent en meme temps sur deux chans gérés par le bot, seul un est pris en compte. Du coup j'ai modifier le nom du timer en incluant le nom du chan
05 mars 2005 13:54:09 :
C'est la version définitive...

 Sources du même auteur

UN PETIT AWAY TOUT SIMPLE FONCTIONNANT SUR PLUSIQUERS SERVEU...
SYESTEME DE VOTE POUR WEBRADIO
UN ANTI FLOOD DE PLUS

 Sources de la même categorie

PACMAN MULTI-JOUEUR EN LIGNE par wims
PROXY&SOCKS SCANNER+LEECHER par independentt
GESTIONNAIRE DE HIGHLIGHT AVANCÉ AVEC IGNORE SALON OU PSEUDO par doob666
AUTOJOIN HTABLE MULTISERVER par doob666
TCL - AJOUT SUPPRESSION DE LOGS par Atok

Commentaires et avis

Commentaire de COOLMAN002 le 02/03/2005 09:02:06

On *:QUIT:{
    var %c = $comchan($nick,1)
    mode %c +l $calc($nick(%c,0) + %add)
}

Pk ce limiter qu'au $comchan($nick,1) ? une while sur $comchan($nick,0) et hop.

Pour les variables à stocker, un p'tit evenement on load se serait mieux j'pense...

on @!*:JOIN:#: .timer. [ $+ [ $chan ] ] 1 %timerL mode $chan +l $calc($nick($chan,0) + %add)

non ?

Commentaire de PaDa le 02/03/2005 22:01:37

trop simple, idem que coolman
j'ajouterai que lancer des timers comme ca bof, évite de lancer la limitation si ya plus de tant de join par secs.
ds le mien, le timer se lance que si aucun timer pour +l n'est actif sur le chan...
bonne continuation

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,170 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales