begin process at 2010 03 21 07:26:04
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Scripts

 > MASSMODES ET MODES SIMPLE

MASSMODES ET MODES SIMPLE


 Information sur la source

Note :
Aucune note
Catégorie :Scripts Classé sous :massmode, mode, input Niveau :Débutant Date de création :17/06/2006 Vu :2 883

Auteur : Evidance

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

 Description

Possibilités en INPUT:
- op ( .op nick nick -> 6 nick max )
- deop ( .deop nick nick -> 6 nick max )
- voice ( .voice nick nick -> 6 nick max )
- devoice ( .devoice nick nick -> 6 nick max )
- massop ( .massop )
- massdeop ( .massdeop )
- massvoice ( .massvoice )
- massdevoice ( .massdevoice )

Source

  • on 1:input:*:{
  • if ($1 == .ban) { inc %count
  • kick $chan $2 Kicked (*.quakenet.org ( Nick: ' $me ' ( Raison: ' $3-$30 ' on ( $chan ) ( Kick Nr. %count )))) | ban $address($2,2) $chan
  • set %bannick * $+ $2- $+ *!*@*
  • set %banident *!* $+ $ial($2-,1).user $+ *@*
  • set %banhost *!*@ $+ $ial($2-,1).host
  • ban %banhost
  • ban %bannick
  • ban %banident
  • halt
  • }
  • if ($1 == .kick) { kick # $2 }
  • if ($1 == .op) { mode # +oooooo $2 $3 $4 $5 $6 $7 }
  • if ($1 == .deop) { mode # -oooooo $2 $3 $4 $5 $6 $7 }
  • if ($1 == .voice) { mode # +vvvvvv $2 $3 $4 $5 $6 $7 }
  • if ($1 == .devoice) { mode # -vvvvvv $2 $3 $4 $5 $6 $7 }
  • if ($1 == .massop) {
  • %i = 0
  • %nicks = ""
  • :nextnick
  • inc %i
  • if ($nick(#,%i) == $null) {
  • if ($nick(#,%i) isop $chan) { goto nextnick }
  • if ($len(%nicks) > 0) mode # +oooooo %nicks
  • halt
  • }
  • %nicks = %nicks $nick(#,%i)
  • if (6 // %i) {
  • mode # +oooooo %nicks
  • %nicks = ""
  • }
  • goto nextnick
  • }
  • if ($1 == .massdeop) {
  • %i = 0
  • %nicks = ""
  • :nextnick
  • inc %i
  • if ($nick(#,%i) == $null) {
  • if ($nick(#,%i) isop $chan) { goto nextnick }
  • if ($len(%nicks) > 0) mode # -oooooo %nicks
  • halt
  • }
  • if ( $nick(#,%i) != $me ) %nicks = %nicks $nick(#,%i)
  • if (6 // %i) {
  • mode # -oooooo %nicks
  • %nicks = ""
  • }
  • goto nextnick
  • }
  • if ($1 == .massvoice) {
  • %i = 0
  • %nicks = ""
  • :nextnick
  • inc %i
  • if ($nick(#,%i) == $null) {
  • if ($nick(#,%i) isop $chan) { goto nextnick }
  • if ($len(%nicks) > 0) mode # +vvvvvv %nicks
  • halt
  • }
  • %nicks = %nicks $nick(#,%i)
  • if (6 // %i) {
  • mode # +vvvvvv %nicks
  • %nicks = ""
  • }
  • goto nextnick
  • }
  • if ($1 == .massdevoice) {
  • %i = 0
  • %nicks = ""
  • :nextnick
  • inc %i
  • if ($nick(#,%i) == $null) {
  • if ($nick(#,%i) isop $chan) { goto nextnick }
  • if ($len(%nicks) > 0) mode # -vvvvvv %nicks
  • halt
  • }
  • %nicks = %nicks $nick(#,%i)
  • if (6 // %i) {
  • mode # -vvvvvv %nicks
  • %nicks = ""
  • }
  • goto nextnick
  • }
  • }
on 1:input:*:{ 
  if ($1 == .ban) { inc %count
    kick $chan $2 Kicked (*.quakenet.org ( Nick: ' $me ' ( Raison: ' $3-$30 ' on ( $chan ) ( Kick Nr. %count )))) | ban $address($2,2) $chan  
    set %bannick * $+ $2- $+ *!*@*
    set %banident *!* $+ $ial($2-,1).user $+ *@*
    set %banhost *!*@ $+ $ial($2-,1).host
    ban %banhost
    ban %bannick
    ban %banident
    halt
  }
  if ($1 == .kick) { kick # $2 }
  if ($1 == .op) { mode # +oooooo $2 $3 $4 $5 $6 $7 }
  if ($1 == .deop) { mode # -oooooo $2 $3 $4 $5 $6 $7 }
  if ($1 == .voice) { mode # +vvvvvv $2 $3 $4 $5 $6 $7 }
  if ($1 == .devoice) { mode # -vvvvvv $2 $3 $4 $5 $6 $7 }
  if ($1 == .massop) { 
    %i = 0 
    %nicks = "" 
    :nextnick 
    inc %i 
    if ($nick(#,%i) == $null) { 
      if ($nick(#,%i) isop $chan) { goto nextnick } 
      if ($len(%nicks) > 0) mode # +oooooo %nicks 
      halt 
    } 

    %nicks = %nicks $nick(#,%i) 
    if (6 // %i) { 
      mode # +oooooo %nicks 
      %nicks = "" 
    } 
    goto nextnick 
  }  
  if ($1 == .massdeop) { 
    %i = 0 
    %nicks = "" 
    :nextnick 
    inc %i 
    if ($nick(#,%i) == $null) { 
      if ($nick(#,%i) isop $chan) { goto nextnick } 
      if ($len(%nicks) > 0) mode # -oooooo %nicks 
      halt 
    } 

    if ( $nick(#,%i) != $me ) %nicks = %nicks $nick(#,%i) 
    if (6 // %i) { 
      mode # -oooooo %nicks 
      %nicks = "" 
    } 
    goto nextnick 
  } 
  if ($1 == .massvoice) {  
    %i = 0 
    %nicks = "" 
    :nextnick 
    inc %i 
    if ($nick(#,%i) == $null) { 
      if ($nick(#,%i) isop $chan) { goto nextnick } 
      if ($len(%nicks) > 0) mode # +vvvvvv %nicks 
      halt 
    } 

    %nicks = %nicks $nick(#,%i) 
    if (6 // %i) { 
      mode # +vvvvvv %nicks 
      %nicks = "" 
    } 
    goto nextnick 
  } 
  if ($1 == .massdevoice) { 
    %i = 0 
    %nicks = "" 
    :nextnick 
    inc %i 
    if ($nick(#,%i) == $null) { 
      if ($nick(#,%i) isop $chan) { goto nextnick } 
      if ($len(%nicks) > 0) mode # -vvvvvv %nicks 
      halt 
    } 

    %nicks = %nicks $nick(#,%i) 
    if (6 // %i) { 
      mode # -vvvvvv %nicks 
      %nicks = "" 
    } 
    goto nextnick 
  }  
}

 Conclusion

BOn voila ca peut etre utile comme inutile...
A vous d'en juger. Ce sont des inpute donc comme si on ecrivai un message ce qui permet de ne pas devoir passé par les nick a droite clic droit et puis l'action.
Sur ce a+


 Sources de la même categorie

Source avec une capture TORRENT VIEWER par kamikaze97441
Source avec Zip Source avec une capture PANNEAU DE CONFIGURATION PS7 par aliassangelius
LA CONFIGURATION D'UN EGGDROP QUI ENLÈVE LES BANS APRÈS X ... par Atok
Source avec Zip Source avec une capture DARKPROJECT - SCRIPT MIRC par Artwerks
Source avec une capture STATISTIQUES DISQUE(S) DUR(S) par Nort0n

 Sources en rapport avec celle ci

SCRIPT POUR ADMIN STRESSÉ AFFRONTANT UNE URGENCE. par ouroumov
LIMIT SYSTEM [GESTION D' UN CHAN OU MULTI(CHAN/SERV)] par n0man
LECTEUR MP3 EN INPUT par Ampoule52
MASS MODES par mastouille
MASS MODES DELUXE par altair20

Commentaires et avis

Commentaire de wims le 17/06/2006 20:03:12

"BOn voila ca peut etre utile comme inutile..."
Si c'est inutile, pourquoi poster ?

C'est mal codé, utilise les boucles while au lieu des goto
Pourquoi ne limité les commandes que a 6 personnes, pourquoi pas plus ?
Utilise $modespl.
Dans ta description, tu parle pas de la possibilité de bannir alors que dans le code, c'est possible.
A ce sujet, dans ton .ban tu commence par kické alors que c'est un ban... et tu parle de quakenet, mdr ? Tes /set sont inutiles, utilise /var :)

if ($1 == .op) { mode # +oooooo $2 $3 $4 $5 $6 $7 }
devient
if ($1 == .op) mode # +oooooo $2-7

voila optimise tout ca et ton code sera comme tant d'autre sur ce site

Commentaire de ChAnG-Fu le 17/06/2006 20:18:35

L'utilisation des . avant les commandes sont parfois réservé a certain type de bot.
J'en utilise un en C++ qui ne prend des commandes que par .<cmd>
Ton code est mal codé...
A optimiser d'urgence.....
Sinon je rejoin Wims pour le reste.

Commentaire de ISoKa le 17/06/2006 20:37:54

Dans un premier temps je suis d'accord avec Wims, de plus
-sur le principe meme
set %bannick * $+ $2- $+ *!*@*
set %banident *!* $+ $ial($2-,1).user $+ *@*
set %banhost *!*@ $+ $ial($2-,1).host
ban %banhost
ban %bannick
ban %banident
les vars locales ou globales sont inutiles là directement:
ban * $+ $2- $+ *!*@*
ban *!* $+ $ial($2-,1).user $+ *@*
ban *!*@ $+ $ial($2-,1).host
que d'alleuir avec un : mode +bbb tu pourrais faire en une ligne.

-t'as des cascades de if, pose des elseif

-rien n'est parametrable\configurable

-l'architecture de tes mass modes est moche (je parle meme pas des gotos à la place des whiles)

-if ($1 == .op) { mode # +oooooo $2 $3 $4 $5 $6 $7 } devient :
if ($1 == .op) { mode # +oooooo $2- } <<< normalement cette syntaxe passe mm si le nb de o et de $ ne correspodent pas.

-pour les bans ca serai bien de pouvoir définir un temps de ban pck ca va vite pourir la ban liste

enfin bref voila revoi ton code un peu je pense pour essayé de l'arranger, optimiser et le rendre un tant soit peu configurable.

Commentaire de RCA ArKanis le 18/06/2006 12:54:52

Faute de répéter les autres, c'est très très mal codé.
/help $str
/help /while (comme l'a dit wims)

y'a largement moyen de faire plus simple ^^
du genre, si il y a "de" (comme pour DEop), mets %mode = -, sinon %mode = +, puis tu mets la lettre correspondant au reste du mot
tu n'auras dans ce cas là qu'une seule boucle

tu peux aussi utiliser $nick($chan,%compteur,o), tu n'auras que les ops (ta boucle sera plus rapide à s'executer)
la même avec "v" marche aussi

un conseil : /ban -ku ...
/help /ban

le nom de la variable %count est un peu passe-partout ... chosi un autre nom

    set %bannick * $+ $2- $+ *!*@*
    set %banident *!* $+ $ial($2-,1).user $+ *@*
    set %banhost *!*@ $+ $ial($2-,1).host
    ban %banhost
    ban %bannick
    ban %banident
à quoi sert ces variables ?
pourquoi autant de bans ?
utilise $+(*,$2-,*!*@*) (par ex, pour le premier cas)

En plus, si sur ton salon il y a plus de 200personnes (voice par exemple), tu vas excess flood
/help /timer

Commentaire de wims le 18/06/2006 16:19:48

En admettant que son $modespl ( qui retourne le maximum de mode en une seul commande) sois egal a 10, il fera 20 /mode pour 200 pseudo et j'pense pas qu'il "excessfloodera" mais c'est vrai qu'il vaut mieux mettre le timer

Commentaire de RCA ArKanis le 18/06/2006 16:46:22

$calc(200/6) (6 sur quakenet) => 34 modes (car 33.3)
34 modes en 1 dixième de seconde, tu m'expliques comment tu fais pour ne pas excess flood (sauf si l'anti-flood de mIRC est bien configuré, et encore ...) ? :)

Evidance, regarde comment les autres de ce site ont fait, t'apprendras un peu plus comme ça :)

Commentaire de wims le 18/06/2006 18:42:37

Ouais mais quakenet aussi :').
De toute facon on parle souvent d'excess dans ce genre de code si le salon depasse 100 voir 150 personne, mais j'pense pas que ce sois le cas.

Commentaire de PaDa le 19/06/2006 15:45:17

Pi on rajoute juste un .timer -m 1 $calc(300* %i) et ca élimine le pb d'excess flood (après 2-3 tests pour régler le 300..)

Commentaire de Pontiac6000 le 20/06/2006 00:58:52

...ouais!!

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Pb d'inputs [ par Deoxirachi ] Bonsoir ;) j'ai un probleme d'inputs sa fonctionne pas comme sa devrait p&#251;is chai pas comment y remedier ,elle marche mais pas comme jveu kon lta Input [ par LeX02 ] Bonjour jai un petit probleme avec mon input : on *:input:*:{ halt } { msg $chan 4 $1- } Je voudrais savoir commen enlever l'espace dans la phrase? $op milk* [ par Milk0z ] on @*:TEXT:$op *:#:{ var %i = 1,%n = 1,%l | while (%i &lt;= $ialchan($2,$chan,0)) { %l = %l $ialchan($2,$chan,%i).nick | inc %n | if (%n &gt;= $modesp Petit bug et optimisation de code [ par Lestat_2070 ] Bonjour &#224; tous, Voil&#224;, j'ai fait quelques tests pour un addon perso, et je suis tomb&#233; sur un ptit bug . En effet, j'ai automatis&#233; Problem Dialog [ par smitchel ] Boujour tt le monde voila j'ai un peti problem je voudrai, faire un menu pour changer les mode du salon mais je n'arrive pas a faire un action quand o Mode de salon, Combo, Edit [ par smitchel ] Bonsoir tout le monde, je suis encore avec mon dialog des modes du salon, j'ai avanc&#233; depuis la derniere fois, mais j'ai encore quelque petit sou Optimisation de dialog [ par ckemoua2 ] Bonjour. Je voudrais savoir s'il y'a, dans un on dialog, une fa&#231;on plus simple de faire quelque chose de:&nbsp;&nbsp;&nbsp; if ($did == 1) {&nbsp Problème PsyBNC [ par RoX5 ] Yop,J'ai installer mon bot psybnc sur le port 7001 nikel sa marche super mais le prob, depuis que je me connecte ac psybnc je suis bien oper, je c&#23 PB remote [ par kik3z ] Bonjour , voila je post car j'ai un petit probl&#233;me de remote on 1:text:*#*:#mychan: { devoice $nick say No pub $nick mode -m } voila normalem Connaitre le mode d'un salon [ par Deoxirachi ] Bonsoir,J'ai un problème pour une Input de couleur, J'aimerai savoir si c'est possible de metrte un if (...quelquechose..) pour que si il ya le mode +


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
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 : 0,640 sec (4)

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