|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
COULEUR SYSTEM V4.4
Information sur la source
Description
Couleur System V4.4 par aerith "contact@aerith.biz"
pour une utilisation partielle ou complete dans un script me prevenir svp
cette addon vous permet de configurer vos couleurs :
-text : couleur, gras, souligne, inverse, majuscule
-deco : gauche, droite, activable ou non
-1ere lettre : couleur, gras, souligne, inverse, majuscule
-pseudo : couleur, gras, souligne, inverse, majuscule, carractere de liason
-url : même coloration que les pseudo
-detection automatique de la configuration (mode auto)
-possibilité de forcer une configuration une seul fois (mode temp), ou toujour (mode manu)
-detection des modes pour chaque chan lors de masse commandes
-desactivation si la premiere lettre de la phrase est par exemple / ou ! (configurable)
-mode no-color sur le serveur (configurable)
-tout desactiver
-tout cela en msg, me, notice, amsg ou ame et sauvegardable
la config des couleurs reagit sur un masque configurer pour changer de couleur en fonction des chans,
serveurs, pv...
Source
- ;Couleur System V4.4 par aerith "contact@aerith.biz"
- ;pour une utilisation partielle ou complete dans un script me prevenir svp
-
- ;##########FENETRE##########
- alias couleurs if (!$dialog(couleur)) dialog -m couleur couleur
-
- ;##########MENU##########
- menu * {
- -
- Couleur: /couleurs
- }
-
-
- ;##########CONFIG##########
- dialog couleur {
- title "Couleur System V4.4"
- size $cl(r,fenetre,x) $cl(r,fenetre,y) 210 222
- option dbu
-
- box "Couleur ecriture", 1, 2 2 132 33
- text " Text :", 10, 5 10 30 10
- combo 11, 35 10 30 150, result drop
- text " Fond :", 12, 69 10 30 10
- combo 13, 101 10 30 150, result drop
- check "gras", 14, 5 21 30 10
- check "souligne", 15, 37 21 30 10
- check "inverser", 16, 69 21 30 10
- check "maj", 17, 101 21 30 10
-
- box "Deco gauche", 2, 2 35 65 23
- check "activer", 20, 5 43 27 10
- edit "", 21, 35 43 30 10, autohs
- box "Deco droite", 3, 66 35 68 23
- check "activer", 30, 70 43 27 10
- edit "", 31, 101 43 30 10, autohs
-
- box "Couleur 1ere Lettre", 4, 2 58 132 33
- text " Text :", 40, 5 67 30 10
- combo 41, 35 66 30 150, result drop
- text " Fond :", 42, 69 66 30 10
- combo 43, 101 66 30 150, result drop
- check "gras", 44, 5 78 30 10
- check "souligne", 45, 37 78 30 10
- check "inverser", 46, 69 78 30 10
- check "maj", 47, 101 78 30 10
-
- box "Couleur pseudo", 54, 2 91 132 46
- text "Separateur", 55, 4 99 94 10
- edit "", 56, 100 98 30 10, autohs center
- check "gras", 57, 4 124 30 10
- check "souligné", 58, 36 124 30 10
- check "inverser", 59, 68 124 30 10
- check "maj", 60, 100 124 30 10
- check "desactiver l'addon", 61, 6 166 60 10
- text " Text :", 62, 4 111 30 10
- combo 63, 34 111 30 150, result drop
- text " Fond :", 64, 68 111 30 10
- combo 65, 100 111 30 150, result drop
-
- box "Option", 5, 2 137 132 42
- text "desactive si la 1ere lettre de la phrase :", 50, 6 146 100 10
- edit "", 51, 106 146 25 10, autohs center
- text "mode no-color sur le serveur du chan :", 52, 6 156 100 10
- edit "", 53, 106 156 25 10, autohs center
-
- box "Modes", 100, 2 179 132 41
- text "commande pour le mode manuel :", 101, 4 187 90 10
- edit "", 102, 99 187 30 10, autohs center
- text "<mode> pour le mode, <config> pour la config", 103, 4 197 125 10
- check "Message", 104, 4 207 35 10
- edit "", 105, 39 207 90 10, autohs center
-
- box "Action", 7, 136 2 72 33
- text "Type :", 70, 139 10 25 10
- combo 71, 171 10 34 50, size drop
- text "commande :", 72, 139 21 30 10
- edit "", 73, 171 21 34 10, autohs center
-
- text "Nom", 80, 137 38 20 10
- edit "", 81, 160 38 48 10, autohs center
- text "Masque", 82, 137 48 20 10
- edit "", 83, 160 48 48 10, autohs center
- list 84, 137 60 71 99, size hsbar vsbar
- button "Ajouter", 85, 137 161 35 10
- button "Supprimer", 86, 137 172 35 10
- button "Monter", 87, 173 161 35 10
- button "Descendre", 88, 173 172 35 10
- button "Afficher l'aide", 89, 137 194 71 10
- button "Quitter", 90, 137 205 35 15, cancel
- button "Sauver comme defaut", 91, 137 183 71 10
- button "Prendre", 92, 173 205 35 15, ok
- }
- ;##initialisation##
- on *:dialog:couleur:init:*:{
- did -a couleur 11,13,41,43,63,65 Blanc
- did -a couleur 11,13,41,43,63,65 Noir
- did -a couleur 11,13,41,43,63,65 Bleu foncé
- did -a couleur 11,13,41,43,63,65 Vert foncé
- did -a couleur 11,13,41,43,63,65 Rouge
- did -a couleur 11,13,41,43,63,65 Brun
- did -a couleur 11,13,41,43,63,65 Violet
- did -a couleur 11,13,41,43,63,65 Orange
- did -a couleur 11,13,41,43,63,65 Jaune
- did -a couleur 11,13,41,43,63,65 Vert clair
- did -a couleur 11,13,41,43,63,65 Vert anglais
- did -a couleur 11,13,41,43,63,65 Bleu ciel
- did -a couleur 11,13,41,43,63,65 Bleu clair
- did -a couleur 11,13,41,43,63,65 Rose
- did -a couleur 11,13,41,43,63,65 Gris foncé
- did -a couleur 11,13,41,43,63,65 Gris clair
- did -a couleur 11,13,41,43,63,65 aucun
- did -a couleur 41,43,63,65 identique
-
- did -c couleur 11 $calc($cl(r,couleur,txt) + 1)
- did -c couleur 13 $calc($cl(r,couleur,fnd) + 1)
- if ($cl(r,couleur,gra) == 1) did -c couleur 14
- if ($cl(r,couleur,sou) == 1) did -c couleur 15
- if ($cl(r,couleur,inv) == 1) did -c couleur 16
- if ($cl(r,couleur,maj) == 1) did -c couleur 17
-
- if ($cl(r,gauche,actif) == 1) did -c couleur 20
- if ($cl(r,gauche,text)) did -a couleur 21 $cl(r,gauche,text)
- if ($cl(r,droite,actif) == 1) did -c couleur 30
- if ($cl(r,droite,text)) did -a couleur 31 $cl(r,droite,text)
-
- did -c couleur 41 $calc($cl(r,lettre,txt) + 1)
- did -c couleur 43 $calc($cl(r,lettre,fnd) + 1)
- if ($cl(r,lettre,gra) == 1) did -c couleur 44
- if ($cl(r,lettre,sou) == 1) did -c couleur 45
- if ($cl(r,lettre,inv) == 1) did -c couleur 46
- if ($cl(r,lettre,maj) == 1) did -c couleur 47
-
- if ($cl(r,config,strip)) did -a couleur 51 $cl(r,config,strip)
- if ($cl(r,config,nocolor)) did -a couleur 53 $cl(r,config,nocolor)
- did -c couleur 63 $calc($cl(r,pseudo,txt) + 1)
- did -c couleur 65 $calc($cl(r,pseudo,fnd) + 1)
- if ($cl(r,pseudo,car)) did -a couleur 56 $cl(r,pseudo,car)
- if ($cl(r,pseudo,gra) == 1) did -c couleur 57
- if ($cl(r,pseudo,sou) == 1) did -c couleur 58
- if ($cl(r,pseudo,inv) == 1) did -c couleur 59
- if ($cl(r,pseudo,maj) == 1) did -c couleur 60
- if ($cl(r,config,desactive)) did -a couleur 61 $cl(r,config,desactive)
-
- if ($cl(r,config,cmd)) did -a couleur 102 $cl(r,config,cmd)
- if ($cl(r,config,mode) == 1) did -c couleur 104
- if ($cl(r,config,cmode)) did -a couleur 105 $cl(r,config,cmode)
-
- did -a couleur 71 msg
- did -a couleur 71 me
- did -a couleur 71 notice
- did -a couleur 71 amsg
- did -a couleur 71 ame
- did -c couleur 71 1
- did -b couleur 73
- couleur.affiche msg
- }
- ;##commande manuelle##
- on *:dialog:couleur:edit:102: {
- cl w config cmd $did(102)
- }
- ;##afficher les modes##
- on *:dialog:couleur:sclick:104: {
- cl w config mode $did(104).state
- }
- ;##couleur mode##
- on *:dialog:couleur:edit:105: {
- cl w config cmode $did(105)
- }
- ;##type action##
- on *:dialog:couleur:*:71: {
- couleur.affiche $did(71).seltext
- if ($did(71).seltext == msg) did -rb couleur 73
- else did -era couleur 73 $cl(r,config,$did(71).seltext)
- }
- ;##commande perso##
- on *:dialog:couleur:edit:73: {
- if ($did(71).seltext != msg) cl w config $did(71).seltext $did(73)
- }
- ;##ajoute une config##
- on *:dialog:couleur:sclick:85: {
- if (!$did(81)) $iif($?!="veuillez spécifier un nom de config",halt,halt)
- if ($cv($did(71).seltext,r,$did(81),nom)) $iif($?!="remplacer $did(81) ?",$null,halt)
- couleur.ecrit $did(71).seltext $did(81)
- couleur.affiche $did(71).seltext
- couleur.aloue $cl(r,config,config)
- }
- ;##supprime une config##
- on *:dialog:couleur:sclick:86: {
- if ($did(84).seltext == defaut) $iif($?!="impossible de suprimer la configuration par defaut",halt,halt)
- if (!$did(84).seltext) $iif($?!="selectioner d'abord une config dans la liste",halt,halt)
- if ($cv($did(71).seltext,r,$did(84).seltext,nom)) $iif($?!="supprimer $did(84).seltext ?",$null,halt)
- cv $did(71).seltext d $did(84).seltext
- couleur.affiche $did(71).seltext
- }
- ;##monter la config##
- on *:dialog:couleur:sclick:87: {
- if (!$did(84).seltext) $iif($?!="selectioner d'abord une config dans la liste",halt,halt)
- if ($did(84).seltext == defaut) $iif($?!="deplacement interdi",halt,halt)
- var %i = $cv($did(71).seltext,r,listcmds,list)
- var %t = $findtok(%i,$did(84).seltext,1,32)
- if (%t == 1) $iif($?!="la config est toute en haut de la liste",halt,halt)
- cv $did(71).seltext w listcmds list $instok($deltok(%i,%t,32),$did(84).seltext,$calc(%t - 1),32)
- couleur.affiche $did(71).seltext
- did -c couleur 84 %t
- }
- ;##descendre la config##
- on *:dialog:couleur:sclick:88: {
- if (!$did(84).seltext) $iif($?!="selectioner d'abord une config dans la liste",halt,halt)
- if ($did(84).seltext == defaut) $iif($?!="deplacement interdi",halt,halt)
- var %i = $cv($did(71).seltext,r,listcmds,list)
- var %t = $findtok(%i,$did(84).seltext,1,32)
- if (%t == $numtok(%i,32)) $iif($?!="la config est toute en bas de la liste",halt,halt)
- cv $did(71).seltext w listcmds list $instok($deltok(%i,%t,32),$did(84).seltext,$calc(%t + 1),32)
- couleur.affiche $did(71).seltext
- did -c couleur 84 $calc(%t + 2)
- }
- ;##affiche l'aide##
- on *:dialog:couleur:sclick:89: {
- run $scriptdiraide.txt
- }
- ;##sauvegarde du par defaut##
- on *:dialog:couleur:sclick:91: {
- $iif($?!="confirmer defaut",$null,halt)
- couleur.ecrit $did(71).seltext defaut
- couleur.affiche $did(71).seltext
- }
- ;##prendre la config##
- on *:dialog:couleur:sclick:92: {
- if (!$did(84).seltext) $iif($?!="selectioner d'abord une config dans la liste",halt,halt)
- cl w config config $did(71).seltext $did(84).seltext
- cl w config manuel on $cl(r,config,config)
- couleur.aloue $cl(r,config,config)
- echo -a $replace($cl(r,config,cmode),<mode>,Mode Manu,<config>,$cl(r,config,config))
- }
- ;##affiche la config##
- on *:dialog:couleur:dclick:84: {
- var %m = $did(71).seltext
- var %s = $did(84).seltext
- did -c couleur 11 $calc($cv(%m,r,%s,couleur.couleur1) + 1)
- did -c couleur 13 $calc($cv(%m,r,%s,couleur.couleur2) + 1)
- if ($cv(%m,r,%s,couleur.gra) == 1) did -c couleur 14
- else did -u couleur 14
- if ($cv(%m,r,%s,couleur.sou) == 1) did -c couleur 15
- else did -u couleur 15
- if ($cv(%m,r,%s,couleur.inv) == 1) did -c couleur 16
- else did -u couleur 16
- if ($cv(%m,r,%s,couleur.maj) == 1) did -c couleur 17
- else did -u couleur 17
-
- if ($cv(%m,r,%s,couleur.gauche) == 1) did -c couleur 20
- else did -u couleur 20
- did -ra couleur 21 $crp($cv(%m,r,%s,couleur.gauche.text))
- if ($cv(%m,r,%s,couleur.droite) == 1) did -c couleur 30
- else did -u couleur 30
- did -ra couleur 31 $crp($cv(%m,r,%s,couleur.droite.text))
-
- did -c couleur 41 $calc($cv(%m,r,%s,couleur.lettre.couleur1) + 1)
- did -c couleur 43 $calc($cv(%m,r,%s,couleur.lettre.couleur2) + 1)
- if ($cv(%m,r,%s,couleur.lettre.gra) == 1) did -c couleur 44
- else did -u couleur 44
- if ($cv(%m,r,%s,couleur.lettre.sou) == 1) did -c couleur 45
- else did -u couleur 45
- if ($cv(%m,r,%s,couleur.lettre.inv) == 1) did -c couleur 46
- else did -u couleur 46
- if ($cv(%m,r,%s,couleur.lettre.maj) == 1) did -c couleur 47
- else did -u couleur 47
-
- did -ra couleur 51 $cv(%m,r,%s,couleur.strip)
- did -ra couleur 53 $cv(%m,r,%s,couleur.nocolor)
- did -c couleur 63 $calc($cv(%m,r,%s,couleur.pseudo.couleur1) + 1)
- did -c couleur 65 $calc($cv(%m,r,%s,couleur.pseudo.couleur2) + 1)
- did -ra couleur 56 $cv(%m,r,%s,couleur.pseudo)
- if ($cv(%m,r,%s,couleur.pseudo.gra) == 1) did -c couleur 57
- else did -u couleur 57
- if ($cv(%m,r,%s,couleur.pseudo.sou) == 1) did -c couleur 58
- else did -u couleur 58
- if ($cv(%m,r,%s,couleur.pseudo.inv) == 1) did -c couleur 59
- else did -u couleur 59
- if ($cv(%m,r,%s,couleur.pseudo.maj) == 1) did -c couleur 60
- else did -u couleur 60
- if ($cv(%m,r,%s,couleur.desactive) == 1) did -c couleur 61
- else did -u couleur 61
-
- did -ra couleur 81 $cv(%m,r,%s,nom)
- did -ra couleur 83 $cv(%m,r,%s,couleur.masque)
- }
- ;##retien la position##
- on *:dialog:couleur:close:*: {
- cl w fenetre x $dialog(couleur).x
- cl w fenetre y $dialog(couleur).y
- }
-
- ;##########ALIAS##########
- ;##retourne une variable##
- alias -l cv {
- var %rep = $+(",$scriptdir,$1,.ini,")
- if ($2 == d) remini %rep $3-
- elseif ($2 == r) return $crp($readini(%rep,$3,$4))
- elseif ($2 == w) writeini -n %rep $3 $4 $cp($5-)
- }
- alias -l cl {
- var %rep = $+(",$scriptdir,couleur.ini,")
- if ($1 == r) return $crp($readini(%rep,$2,$3))
- elseif ($1 == w) {
- if ($4) writeini -n %rep $2 $3 $cp($4-)
- else remini %rep $2 $3
- }
- }
- ;##affiche dans le dialogue##
- alias -l couleur.affiche {
- var %rep = $+(",$scriptdir,$1,.ini,")
- var %l = $cv($1,r,listcmds,list)
- var %a = 1
- while (%a <= $ini(%rep,0)) {
- var %i = $ini(%rep,%a)
- if ((%i != listcmds) && (%i != defaut) && (!$findtok(%l,%i,1,32))) var %l = %l %i
- inc %a 1
- }
- did -ra couleur 84 defaut
- if (%l) {
- var %a = 1
- while (%a <= $numtok(%l,32)) {
- if (!$cv($1,r,$gettok(%l,%a,32),nom)) var %l = $deltok(%l,%a,32)
- else did -za couleur 84 $gettok(%l,%a,32)
- inc %a 1
- }
- cv $1 w listcmds list %l
- }
- ;##remember position##
- cl w fenetre x $dialog(couleur).x
- cl w fenetre y $dialog(couleur).y
- }
- ;##recherche de la config en suivant les regles de priorités##
- alias -l couleur.find {
- var %rep = $scriptdir $+ $1 $+ .ini
- var %l = $cv($1,r,listcmds,list)
- var %a = 1
- while (%a <= $numtok(%l,32)) {
- var %m = $gettok(%l,%a,32)
- var %t = $cv($1,r,%m,couleur.masque)
- if ((%t) && (%t iswm $2-)) break
- inc %a 1
- }
- if (%a > $numtok(%l,32)) {
- var %a = 1
- while (%a <= $numtok(%l,32)) {
- var %m = $gettok(%l,%a,32)
- var %t = $cv($1,r,%m,couleur.masque)
- if ((%t) && (%t iswm $3)) break
- inc %a 1
- }
- }
- if (%a > $numtok(%l,32)) var %m = defaut
- return %m
- }
- ;##set les variables##
- alias -l couleur.aloue {
- cl w couleur txt $cv($1,r,$2,couleur.couleur1)
- cl w couleur fnd $cv($1,r,$2,couleur.couleur2)
- cl w couleur gra $cv($1,r,$2,couleur.gra)
- cl w couleur sou $cv($1,r,$2,couleur.sou)
- cl w couleur inv $cv($1,r,$2,couleur.inv)
- cl w couleur maj $cv($1,r,$2,couleur.maj)
-
- cl w gauche actif $cv($1,r,$2,couleur.gauche)
- cl w gauche text $crp($cv($1,r,$2,couleur.gauche.text))
- cl w droite actif $cv($1,r,$2,couleur.droite)
- cl w droite text $crp($cv($1,r,$2,couleur.droite.text))
-
- cl w lettre txt $cv($1,r,$2,couleur.lettre.couleur1)
- cl w lettre fnd $cv($1,r,$2,couleur.lettre.couleur2)
- cl w lettre gra $cv($1,r,$2,couleur.lettre.gra)
- cl w lettre sou $cv($1,r,$2,couleur.lettre.sou)
- cl w lettre inv $cv($1,r,$2,couleur.lettre.inv)
- cl w lettre maj $cv($1,r,$2,couleur.lettre.maj)
-
- cl w config strip $cv($1,r,$2,couleur.strip)
- cl w config nocolor $cv($1,r,$2,couleur.nocolor)
- cl w config desactive $cv($1,r,$2,couleur.desactive)
-
- cl w pseudo txt $cv($1,r,$2,couleur.pseudo.couleur1)
- cl w pseudo fnd $cv($1,r,$2,couleur.pseudo.couleur2)
- cl w pseudo car $cv($1,r,$2,couleur.pseudo)
- cl w pseudo gra $cv($1,r,$2,couleur.pseudo.gra)
- cl w pseudo sou $cv($1,r,$2,couleur.pseudo.sou)
- cl w pseudo inv $cv($1,r,$2,couleur.pseudo.inv)
- cl w pseudo maj $cv($1,r,$2,couleur.pseudo.maj)
- }
- ;##ecrit dans la database##
- alias -l couleur.ecrit {
- cv $1 w $2 nom $2
- if ($did(couleur,83)) cv $1 w $2 couleur.masque $did(couleur,83)
- else cv $1 d $2 couleur.masque
- cv $1 w $2 couleur.couleur1 $calc($did(couleur,11).sel - 1)
- cv $1 w $2 couleur.couleur2 $calc($did(couleur,13).sel - 1)
- cv $1 w $2 couleur.gra $did(couleur,14).state
- cv $1 w $2 couleur.sou $did(couleur,15).state
- cv $1 w $2 couleur.inv $did(couleur,16).state
- cv $1 w $2 couleur.maj $did(couleur,17).state
-
- cv $1 w $2 couleur.gauche $did(couleur,20).state
- if ($did(couleur,21)) cv $1 w $2 couleur.gauche.text $did(couleur,21)
- else cv $1 d $2 couleur.gauche.text
- cv $1 w $2 couleur.droite $did(couleur,30).state
- if ($did(couleur,31)) cv $1 w $2 couleur.droite.text $did(couleur,31)
- else cv $1 d $2 couleur.droite.text
-
- cv $1 w $2 couleur.lettre.couleur1 $calc($did(couleur,41).sel - 1)
- cv $1 w $2 couleur.lettre.couleur2 $calc($did(couleur,43).sel - 1)
- cv $1 w $2 couleur.lettre.gra $did(couleur,44).state
- cv $1 w $2 couleur.lettre.sou $did(couleur,45).state
- cv $1 w $2 couleur.lettre.inv $did(couleur,46).state
- cv $1 w $2 couleur.lettre.maj $did(couleur,47).state
-
- if ($did(couleur,51)) cv $1 w $2 couleur.strip $did(couleur,51)
- else cv $1 d $2 couleur.strip
- if ($did(couleur,53)) cv $1 w $2 couleur.nocolor $did(couleur,53)
- else cv $1 d $2 couleur.nocolor
- cv $1 w $2 couleur.pseudo.couleur1 $calc($did(couleur,63).sel - 1)
- cv $1 w $2 couleur.pseudo.couleur2 $calc($did(couleur,65).sel - 1)
- if ($did(couleur,56)) cv $1 w $2 couleur.pseudo $did(couleur,56)
- else cv $1 d $2 couleur.pseudo
- cv $1 w $2 couleur.pseudo.gra $did(couleur,57).state
- cv $1 w $2 couleur.pseudo.sou $did(couleur,58).state
- cv $1 w $2 couleur.pseudo.inv $did(couleur,59).state
- cv $1 w $2 couleur.pseudo.maj $did(couleur,60).state
- cv $1 w $2 couleur.desactive $did(couleur,61).state
- else cv $1 d $2 couleur.desactive
- }
- ;##permet de lire les caracteres speciaux dans la database##
- alias -l cp return $replace($1-,,&o,,&b,,&u,,&c,,&r)
- alias -l crp return $replace($1-,&o,,&b,,&u,,&c,,&r,)
-
- ;##########INSTALLATION##########
- on *:load: {
- if (!$cl(r,fenetre,x)) cl w fenetre x -1
- if (!$cl(r,fenetre,y)) cl w fenetre y -1
- if (!$cl(r,config,manuel)) cl w config manuel off
- if (!$cl(r,config,cmd)) cl w config cmd /couleur
- if (!$cl(r,config,me)) cl w config me /me
- if (!$cl(r,config,notice)) cl w config notice /n
- if (!$cl(r,config,amsg)) cl w config amsg /amsg
- if (!$cl(r,config,ame)) cl w config ame /ame
- if (!$cl(r,config,mode)) cl w config mode 1
- if (!$cl(r,config,cmode)) cl w config cmode 7(Couleur) 4[<mode>] 2config <config> activée
- couleur.aloue msg defaut
- dialog -m couleur couleur
- }
-
- ;##########PUB##########
- ctcp *:VERSION:*:{
- ctcpreply $nick VERSION 12 addon : 4 $+ Couleur System V4.4 12 $+ crée par 13 $+ A $+ 6 $+ erith
- }
-
- ;##########NOYAU##########
- on *:input:*: {
- if (!$server) goto fin
-
- ;mode manuel
- if ($1 == $cl(r,config,cmd)) {
- if (!$2) {
- if ($gettok($cl(r,config,manuel),1,32) == on) {
- cl w config config $gettok($cl(r,config,manuel),2-3,32)
- couleur.aloue $cl(r,config,config)
- cl w config manuel off
- echo -a $replace($cl(r,config,cmode),<mode>,Mode Auto,<config>,$cl(r,config,config))
- goto fin2
- }
- }
- elseif ($2 == -s) {
- if ($cv($iif($4,$4,msg),r,$3,nom)) {
- cl w config manuel say $cl(r,config,config) $cl(r,config,manuel)
- cl w config config $iif($4,$4,msg) $3
- couleur.aloue $cl(r,config,config)
- echo -a $replace($cl(r,config,cmode),<mode>,Mode Temp,<config>,$cl(r,config,config))
- goto fin2
- }
- }
- elseif ($cv($iif($3,$3,msg),r,$2,nom)) {
- cl w config config $iif($3,$3,msg) $2
- cl w config manuel on $cl(r,config,config)
- couleur.aloue $cl(r,config,config)
- echo -a $replace($cl(r,config,cmode),<mode>,Mode Manu,<config>,$cl(r,config,config))
- goto fin2
- }
- }
-
- ;desactivation de l'addon et recherche le type
- if ($1 == $cl(r,config,me)) {
- if (($left($2,1) isin $cl(r,config,strip) ) || ($cl(r,config,desactive) == 1)) goto fin
- else var %type = me
- }
- elseif ($1 == $cl(r,config,notice)) {
- if (($left($3,1) isin $cl(r,config,strip) ) || ($cl(r,config,desactive) == 1)) goto fin
- else var %type = notice
- }
- elseif ($1 == $cl(r,config,amsg)) {
- if (($left($2,1) isin $cl(r,config,strip) ) || ($cl(r,config,desactive) == 1)) goto fin
- else var %type = amsg
- }
- elseif ($1 == $cl(r,config,ame)) {
- if (($left($2,1) isin $cl(r,config,strip) ) || ($cl(r,config,desactive) == 1)) goto fin
- else var %type = ame
- }
- else {
- if (($left($1,1) isin $cl(r,config,strip) ) || ($cl(r,config,desactive) == 1)) goto fin
- else var %type = msg
- }
-
- ;set les variables en fonction de la fenetre active
- ;$cl(r,config,config) et $cl(r,config,config) permettent de ne pas faire des operations inutile si la config n'a pas a changé
- if ($cl(r,config,manuel) == off) {
- var %a = %type $couleur.find(%type,$iif($address($active,5),$address($active,5),$active),$network $+ $server)
- if (%a != $cl(r,config,config)) {
- cl w config config %a
- couleur.aloue $cl(r,config,config)
- if ($cl(r,config,mode) == 1) echo -a $replace($cl(r,config,cmode),<mode>,Mode Auto,<config>,$cl(r,config,config))
- }
- }
-
- ;sauvegarde la chaine q travailler et qui sera envoyer
- if ((%type == me) || (%type == amsg) || (%type == ame)) var %out = $2-
- elseif (%type == notice) var %out = $3-
- else var %out = $1-
- var %out = $chr(32) $+ %out
-
- ;creation de la couleur du text
- var %cg = $iif($cl(r,couleur,gra) == 1,)
- var %cs = $iif($cl(r,couleur,sou) == 1,)
- var %ci = $iif($cl(r,couleur,inv) == 1,)
- set %couleur $iif($cl(r,couleur,txt) < 16, $+ $cl(r,couleur,txt) $+ $iif($cl(r,couleur,fnd) < 16,$chr(44) $+ $cl(r,couleur,fnd))) $+ %cg $+ %cs $+ %ci
-
- ;creation de la couleur premiere lettre
- var %clg = $iif($cl(r,lettre,gra) == 1,)
- var %cls = $iif($cl(r,lettre,sou) == 1,)
- var %cli = $iif($cl(r,lettre,inv) == 1,)
- cl w lettre outtxt $iif($cl(r,lettre,txt) == 17,$cl(r,couleur,txt),$cl(r,lettre,txt))
- cl w lettre outfnd $iif($cl(r,lettre,fnd) == 17,$cl(r,couleur,fnd),$cl(r,lettre,fnd))
- cl w lettre out $iif($cl(r,lettre,outtxt) < 16, $+ $cl(r,lettre,outtxt) $+ $iif($cl(r,lettre,outfnd) < 16,$chr(44) $+ $cl(r,lettre,outfnd))) $+ %clg $+ %cls $+ %cli
-
- ;creation du pseudo
- var %cpg = $iif($cl(r,pseudo,gra) == 1,)
- var %cps = $iif($cl(r,pseudo,sou) == 1,)
- var %cpi = $iif($cl(r,pseudo,inv) == 1,)
- cl w pseudo outtxt $iif($cl(r,pseudo,txt) == 17,$cl(r,lettre,outtxt),$cl(r,pseudo,txt))
- cl w pseudo outfnd $iif($cl(r,pseudo,fnd) == 17,$cl(r,lettre,outfnd),$cl(r,pseudo,fnd))
- cl w pseudo out $iif($cl(r,pseudo,outtxt) < 16, $+ $cl(r,pseudo,outtxt) $+ $iif($cl(r,pseudo,outfnd) < 16,$chr(44) $+ $cl(r,pseudo,outfnd))) $+ %cpg $+ %cps $+ %cpi
- var %i = 1
- while (%i <= $numtok(%out,32)) {
- if ($gettok(%out,%i,32) ison $active) %out = $replace(%out,$gettok(%out,%i,32),$cl(r,pseudo,out) $+ $gettok(%out,%i,32) $+ $cl(r,pseudo,out) $+ %couleur)
- ;coloration url
- if ((http:// isin $gettok(%out,%i,32)) || (www. isin $gettok(%out,%i,32))) %out = $replace(%out,$gettok(%out,%i,32),$cl(r,pseudo,out) $+ $+ $gettok(%out,%i,32) $+ $+ $cl(r,pseudo,out) $+ %couleur)
- inc %i 1
- }
-
- if (($strip($gettok(%out,1,32)) ison $active) || (http:// isin $gettok(%out,1,32)) || (www. isin $gettok(%out,1,32))) {
- %out = $gettok(%out,1,32) $iif($gettok(%out,2,32),$cl(r,pseudo,car),) $gettok(%out,2-,32)
-
- ;creation premiere lettre
- if (($left($gettok(%out,3,32),1) !isnum) && ($mid($gettok(%out,3,32),2,1) !isnum)) {
- %out = $gettok(%out,1-2,32) $replace($gettok(%out,3,32),$gettok(%out,3,32),$cl(r,lettre,out) $+ $iif($cl(r,lettre,maj) == 1,$upper($left($gettok(%out,3,32),1)),$left($gettok(%out,3,32),1)) $+ %couleur $+ $right($gettok(%out,3,32),-1))) $gettok(%out,4-,32)
- }
- else var %out = %couleur $+ %out
- }
- else {
- ;creation premiere lettre
- if (($left($gettok(%out,1,32),1) !isnum) && ($mid($gettok(%out,1,32),2,1) !isnum)) {
- %out = $replace($gettok(%out,1,32),$gettok(%out,1,32),$cl(r,lettre,out) $+ $iif($cl(r,lettre,maj) == 1,$upper($left($gettok(%out,1,32),1)),$left($gettok(%out,1,32),1)) $+ %couleur $+ $right($gettok(%out,1,32),-1))) $gettok(%out,2-,32)
- }
- else var %out = %couleur $+ %out
- }
-
- ;creation des decos
- if ($cl(r,gauche,actif) == 1) var %out = $cl(r,gauche,text) %out
- if ($cl(r,droite,actif) == 1) var %out = %out $+ $cl(r,droite,text)
-
- ;supprime les couleurs si interdite sur le chan
- if ((%type isin amsg ame) && ($me ison $active) && ($right($cl(r,config,nocolor),1) isincs $chan($active).mode)) var %out $strip(%out, co)
-
- ;affiche le resultat
- if (%type == me) describe $active %out
- elseif (%type == notice) notice $2 %out
- elseif (%type == amsg) {
- var %a = 1
- while (%a <= $chan(0)) {
- if ($right($cl(r,config,nocolor),1) isincs $chan(%a).mode) msg $chan(%a) $strip(%out)
- else msg $chan(%a) %out
- inc %a 1
- }
- }
- elseif (%type == ame) {
- var %a = 1
- while (%a <= $chan(0)) {
- if ($right($cl(r,config,nocolor),1) isincs $chan(%a).mode) describe $chan(%a) $strip(%out)
- else describe $chan(%a) %out
- inc %a 1
- }
- }
- else msg $active %out
-
- ;remet ancienne config si mode couleur say
- if ($gettok($cl(r,config,manuel),1,32) == say) {
- cl w config config $gettok($cl(r,config,manuel),2-3,32)
- cl w config manuel $gettok($cl(r,config,manuel),4-,32)
- couleur.aloue $cl(r,config,config)
- }
-
- ;quit l'addon
- :fin2
- halt
- :fin
- }
;Couleur System V4.4 par aerith "contact@aerith.biz"
;pour une utilisation partielle ou complete dans un script me prevenir svp
;##########FENETRE##########
alias couleurs if (!$dialog(couleur)) dialog -m couleur couleur
;##########MENU##########
menu * {
-
Couleur: /couleurs
}
;##########CONFIG##########
dialog couleur {
title "Couleur System V4.4"
size $cl(r,fenetre,x) $cl(r,fenetre,y) 210 222
option dbu
box "Couleur ecriture", 1, 2 2 132 33
text " Text :", 10, 5 10 30 10
combo 11, 35 10 30 150, result drop
text " Fond :", 12, 69 10 30 10
combo 13, 101 10 30 150, result drop
check "gras", 14, 5 21 30 10
check "souligne", 15, 37 21 30 10
check "inverser", 16, 69 21 30 10
check "maj", 17, 101 21 30 10
box "Deco gauche", 2, 2 35 65 23
check "activer", 20, 5 43 27 10
edit "", 21, 35 43 30 10, autohs
box "Deco droite", 3, 66 35 68 23
check "activer", 30, 70 43 27 10
edit "", 31, 101 43 30 10, autohs
box "Couleur 1ere Lettre", 4, 2 58 132 33
text " Text :", 40, 5 67 30 10
combo 41, 35 66 30 150, result drop
text " Fond :", 42, 69 66 30 10
combo 43, 101 66 30 150, result drop
check "gras", 44, 5 78 30 10
check "souligne", 45, 37 78 30 10
check "inverser", 46, 69 78 30 10
check "maj", 47, 101 78 30 10
box "Couleur pseudo", 54, 2 91 132 46
text "Separateur", 55, 4 99 94 10
edit "", 56, 100 98 30 10, autohs center
check "gras", 57, 4 124 30 10
check "souligné", 58, 36 124 30 10
check "inverser", 59, 68 124 30 10
check "maj", 60, 100 124 30 10
check "desactiver l'addon", 61, 6 166 60 10
text " Text :", 62, 4 111 30 10
combo 63, 34 111 30 150, result drop
text " Fond :", 64, 68 111 30 10
combo 65, 100 111 30 150, result drop
box "Option", 5, 2 137 132 42
text "desactive si la 1ere lettre de la phrase :", 50, 6 146 100 10
edit "", 51, 106 146 25 10, autohs center
text "mode no-color sur le serveur du chan :", 52, 6 156 100 10
edit "", 53, 106 156 25 10, autohs center
box "Modes", 100, 2 179 132 41
text "commande pour le mode manuel :", 101, 4 187 90 10
edit "", 102, 99 187 30 10, autohs center
text "<mode> pour le mode, <config> pour la config", 103, 4 197 125 10
check "Message", 104, 4 207 35 10
edit "", 105, 39 207 90 10, autohs center
box "Action", 7, 136 2 72 33
text "Type :", 70, 139 10 25 10
combo 71, 171 10 34 50, size drop
text "commande :", 72, 139 21 30 10
edit "", 73, 171 21 34 10, autohs center
text "Nom", 80, 137 38 20 10
edit "", 81, 160 38 48 10, autohs center
text "Masque", 82, 137 48 20 10
edit "", 83, 160 48 48 10, autohs center
list 84, 137 60 71 99, size hsbar vsbar
button "Ajouter", 85, 137 161 35 10
button "Supprimer", 86, 137 172 35 10
button "Monter", 87, 173 161 35 10
button "Descendre", 88, 173 172 35 10
button "Afficher l'aide", 89, 137 194 71 10
button "Quitter", 90, 137 205 35 15, cancel
button "Sauver comme defaut", 91, 137 183 71 10
button "Prendre", 92, 173 205 35 15, ok
}
;##initialisation##
on *:dialog:couleur:init:*:{
did -a couleur 11,13,41,43,63,65 Blanc
did -a couleur 11,13,41,43,63,65 Noir
did -a couleur 11,13,41,43,63,65 Bleu foncé
did -a couleur 11,13,41,43,63,65 Vert foncé
did -a couleur 11,13,41,43,63,65 Rouge
did -a couleur 11,13,41,43,63,65 Brun
did -a couleur 11,13,41,43,63,65 Violet
did -a couleur 11,13,41,43,63,65 Orange
did -a couleur 11,13,41,43,63,65 Jaune
did -a couleur 11,13,41,43,63,65 Vert clair
did -a couleur 11,13,41,43,63,65 Vert anglais
did -a couleur 11,13,41,43,63,65 Bleu ciel
did -a couleur 11,13,41,43,63,65 Bleu clair
did -a couleur 11,13,41,43,63,65 Rose
did -a couleur 11,13,41,43,63,65 Gris foncé
did -a couleur 11,13,41,43,63,65 Gris clair
did -a couleur 11,13,41,43,63,65 aucun
did -a couleur 41,43,63,65 identique
did -c couleur 11 $calc($cl(r,couleur,txt) + 1)
did -c couleur 13 $calc($cl(r,couleur,fnd) + 1)
if ($cl(r,couleur,gra) == 1) did -c couleur 14
if ($cl(r,couleur,sou) == 1) did -c couleur 15
if ($cl(r,couleur,inv) == 1) did -c couleur 16
if ($cl(r,couleur,maj) == 1) did -c couleur 17
if ($cl(r,gauche,actif) == 1) did -c couleur 20
if ($cl(r,gauche,text)) did -a couleur 21 $cl(r,gauche,text)
if ($cl(r,droite,actif) == 1) did -c couleur 30
if ($cl(r,droite,text)) did -a couleur 31 $cl(r,droite,text)
did -c couleur 41 $calc($cl(r,lettre,txt) + 1)
did -c couleur 43 $calc($cl(r,lettre,fnd) + 1)
if ($cl(r,lettre,gra) == 1) did -c couleur 44
if ($cl(r,lettre,sou) == 1) did -c couleur 45
if ($cl(r,lettre,inv) == 1) did -c couleur 46
if ($cl(r,lettre,maj) == 1) did -c couleur 47
if ($cl(r,config,strip)) did -a couleur 51 $cl(r,config,strip)
if ($cl(r,config,nocolor)) did -a couleur 53 $cl(r,config,nocolor)
did -c couleur 63 $calc($cl(r,pseudo,txt) + 1)
did -c couleur 65 $calc($cl(r,pseudo,fnd) + 1)
if ($cl(r,pseudo,car)) did -a couleur 56 $cl(r,pseudo,car)
if ($cl(r,pseudo,gra) == 1) did -c couleur 57
if ($cl(r,pseudo,sou) == 1) did -c couleur 58
if ($cl(r,pseudo,inv) == 1) did -c couleur 59
if ($cl(r,pseudo,maj) == 1) did -c couleur 60
if ($cl(r,config,desactive)) did -a couleur 61 $cl(r,config,desactive)
if ($cl(r,config,cmd)) did -a couleur 102 $cl(r,config,cmd)
if ($cl(r,config,mode) == 1) did -c couleur 104
if ($cl(r,config,cmode)) did -a couleur 105 $cl(r,config,cmode)
did -a couleur 71 msg
did -a couleur 71 me
did -a couleur 71 notice
did -a couleur 71 amsg
did -a couleur 71 ame
did -c couleur 71 1
did -b couleur 73
couleur.affiche msg
}
;##commande manuelle##
on *:dialog:couleur:edit:102: {
cl w config cmd $did(102)
}
;##afficher les modes##
on *:dialog:couleur:sclick:104: {
cl w config mode $did(104).state
}
;##couleur mode##
on *:dialog:couleur:edit:105: {
cl w config cmode $did(105)
}
;##type action##
on *:dialog:couleur:*:71: {
couleur.affiche $did(71).seltext
if ($did(71).seltext == msg) did -rb couleur 73
else did -era couleur 73 $cl(r,config,$did(71).seltext)
}
;##commande perso##
on *:dialog:couleur:edit:73: {
if ($did(71).seltext != msg) cl w config $did(71).seltext $did(73)
}
;##ajoute une config##
on *:dialog:couleur:sclick:85: {
if (!$did(81)) $iif($?!="veuillez spécifier un nom de config",halt,halt)
if ($cv($did(71).seltext,r,$did(81),nom)) $iif($?!="remplacer $did(81) ?",$null,halt)
couleur.ecrit $did(71).seltext $did(81)
couleur.affiche $did(71).seltext
couleur.aloue $cl(r,config,config)
}
;##supprime une config##
on *:dialog:couleur:sclick:86: {
if ($did(84).seltext == defaut) $iif($?!="impossible de suprimer la configuration par defaut",halt,halt)
if (!$did(84).seltext) $iif($?!="selectioner d'abord une config dans la liste",halt,halt)
if ($cv($did(71).seltext,r,$did(84).seltext,nom)) $iif($?!="supprimer $did(84).seltext ?",$null,halt)
cv $did(71).seltext d $did(84).seltext
couleur.affiche $did(71).seltext
}
;##monter la config##
on *:dialog:couleur:sclick:87: {
if (!$did(84).seltext) $iif($?!="selectioner d'abord une config dans la liste",halt,halt)
if ($did(84).seltext == defaut) $iif($?!="deplacement interdi",halt,halt)
var %i = $cv($did(71).seltext,r,listcmds,list)
var %t = $findtok(%i,$did(84).seltext,1,32)
if (%t == 1) $iif($?!="la config est toute en haut de la liste",halt,halt)
cv $did(71).seltext w listcmds list $instok($deltok(%i,%t,32),$did(84).seltext,$calc(%t - 1),32)
couleur.affiche $did(71).seltext
did -c couleur 84 %t
}
;##descendre la config##
on *:dialog:couleur:sclick:88: {
if (!$did(84).seltext) $iif($?!="selectioner d'abord une config dans la liste",halt,halt)
if ($did(84).seltext == defaut) $iif($?!="deplacement interdi",halt,halt)
var %i = $cv($did(71).seltext,r,listcmds,list)
var %t = $findtok(%i,$did(84).seltext,1,32)
if (%t == $numtok(%i,32)) $iif($?!="la config est toute en bas de la liste",halt,halt)
cv $did(71).seltext w listcmds list $instok($deltok(%i,%t,32),$did(84).seltext,$calc(%t + 1),32)
couleur.affiche $did(71).seltext
did -c couleur 84 $calc(%t + 2)
}
;##affiche l'aide##
on *:dialog:couleur:sclick:89: {
run $scriptdiraide.txt
}
;##sauvegarde du par defaut##
on *:dialog:couleur:sclick:91: {
$iif($?!="confirmer defaut",$null,halt)
couleur.ecrit $did(71).seltext defaut
couleur.affiche $did(71).seltext
}
;##prendre la config##
on *:dialog:couleur:sclick:92: {
if (!$did(84).seltext) $iif($?!="selectioner d'abord une config dans la liste",halt,halt)
cl w config config $did(71).seltext $did(84).seltext
cl w config manuel on $cl(r,config,config)
couleur.aloue $cl(r,config,config)
echo -a $replace($cl(r,config,cmode),<mode>,Mode Manu,<config>,$cl(r,config,config))
}
;##affiche la config##
on *:dialog:couleur:dclick:84: {
var %m = $did(71).seltext
var %s = $did(84).seltext
did -c couleur 11 $calc($cv(%m,r,%s,couleur.couleur1) + 1)
did -c couleur 13 $calc($cv(%m,r,%s,couleur.couleur2) + 1)
if ($cv(%m,r,%s,couleur.gra) == 1) did -c couleur 14
else did -u couleur 14
if ($cv(%m,r,%s,couleur.sou) == 1) did -c couleur 15
else did -u couleur 15
if ($cv(%m,r,%s,couleur.inv) == 1) did -c couleur 16
else did -u couleur 16
if ($cv(%m,r,%s,couleur.maj) == 1) did -c couleur 17
else did -u couleur 17
if ($cv(%m,r,%s,couleur.gauche) == 1) did -c couleur 20
else did -u couleur 20
did -ra couleur 21 $crp($cv(%m,r,%s,couleur.gauche.text))
if ($cv(%m,r,%s,couleur.droite) == 1) did -c couleur 30
else did -u couleur 30
did -ra couleur 31 $crp($cv(%m,r,%s,couleur.droite.text))
did -c couleur 41 $calc($cv(%m,r,%s,couleur.lettre.couleur1) + 1)
did -c couleur 43 $calc($cv(%m,r,%s,couleur.lettre.couleur2) + 1)
if ($cv(%m,r,%s,couleur.lettre.gra) == 1) did -c couleur 44
else did -u couleur 44
if ($cv(%m,r,%s,couleur.lettre.sou) == 1) did -c couleur 45
else did -u couleur 45
if ($cv(%m,r,%s,couleur.lettre.inv) == 1) did -c couleur 46
else did -u couleur 46
if ($cv(%m,r,%s,couleur.lettre.maj) == 1) did -c couleur 47
else did -u couleur 47
did -ra couleur 51 $cv(%m,r,%s,couleur.strip)
did -ra couleur 53 $cv(%m,r,%s,couleur.nocolor)
did -c couleur 63 $calc($cv(%m,r,%s,couleur.pseudo.couleur1) + 1)
did -c couleur 65 $calc($cv(%m,r,%s,couleur.pseudo.couleur2) + 1)
did -ra couleur 56 $cv(%m,r,%s,couleur.pseudo)
if ($cv(%m,r,%s,couleur.pseudo.gra) == 1) did -c couleur 57
else did -u couleur 57
if ($cv(%m,r,%s,couleur.pseudo.sou) == 1) did -c couleur 58
else did -u couleur 58
if ($cv(%m,r,%s,couleur.pseudo.inv) == 1) did -c couleur 59
else did -u couleur 59
if ($cv(%m,r,%s,couleur.pseudo.maj) == 1) did -c couleur 60
else did -u couleur 60
if ($cv(%m,r,%s,couleur.desactive) == 1) did -c couleur 61
else did -u couleur 61
did -ra couleur 81 $cv(%m,r,%s,nom)
did -ra couleur 83 $cv(%m,r,%s,couleur.masque)
}
;##retien la position##
on *:dialog:couleur:close:*: {
cl w fenetre x $dialog(couleur).x
cl w fenetre y $dialog(couleur).y
}
;##########ALIAS##########
;##retourne une variable##
alias -l cv {
var %rep = $+(",$scriptdir,$1,.ini,")
if ($2 == d) remini %rep $3-
elseif ($2 == r) return $crp($readini(%rep,$3,$4))
elseif ($2 == w) writeini -n %rep $3 $4 $cp($5-)
}
alias -l cl {
var %rep = $+(",$scriptdir,couleur.ini,")
if ($1 == r) return $crp($readini(%rep,$2,$3))
elseif ($1 == w) {
if ($4) writeini -n %rep $2 $3 $cp($4-)
else remini %rep $2 $3
}
}
;##affiche dans le dialogue##
alias -l couleur.affiche {
var %rep = $+(",$scriptdir,$1,.ini,")
var %l = $cv($1,r,listcmds,list)
var %a = 1
while (%a <= $ini(%rep,0)) {
var %i = $ini(%rep,%a)
if ((%i != listcmds) && (%i != defaut) && (!$findtok(%l,%i,1,32))) var %l = %l %i
inc %a 1
}
did -ra couleur 84 defaut
if (%l) {
var %a = 1
while (%a <= $numtok(%l,32)) {
if (!$cv($1,r,$gettok(%l,%a,32),nom)) var %l = $deltok(%l,%a,32)
else did -za couleur 84 $gettok(%l,%a,32)
inc %a 1
}
cv $1 w listcmds list %l
}
;##remember position##
cl w fenetre x $dialog(couleur).x
cl w fenetre y $dialog(couleur).y
}
;##recherche de la config en suivant les regles de priorités##
alias -l couleur.find {
var %rep = $scriptdir $+ $1 $+ .ini
var %l = $cv($1,r,listcmds,list)
var %a = 1
while (%a <= $numtok(%l,32)) {
var %m = $gettok(%l,%a,32)
var %t = $cv($1,r,%m,couleur.masque)
if ((%t) && (%t iswm $2-)) break
inc %a 1
}
if (%a > $numtok(%l,32)) {
var %a = 1
while (%a <= $numtok(%l,32)) {
var %m = $gettok(%l,%a,32)
var %t = $cv($1,r,%m,couleur.masque)
if ((%t) && (%t iswm $3)) break
inc %a 1
}
}
if (%a > $numtok(%l,32)) var %m = defaut
return %m
}
;##set les variables##
alias -l couleur.aloue {
cl w couleur txt $cv($1,r,$2,couleur.couleur1)
cl w couleur fnd $cv($1,r,$2,couleur.couleur2)
cl w couleur gra $cv($1,r,$2,couleur.gra)
cl w couleur sou $cv($1,r,$2,couleur.sou)
cl w couleur inv $cv($1,r,$2,couleur.inv)
cl w couleur maj $cv($1,r,$2,couleur.maj)
cl w gauche actif $cv($1,r,$2,couleur.gauche)
cl w gauche text $crp($cv($1,r,$2,couleur.gauche.text))
cl w droite actif $cv($1,r,$2,couleur.droite)
cl w droite text $crp($cv($1,r,$2,couleur.droite.text))
cl w lettre txt $cv($1,r,$2,couleur.lettre.couleur1)
cl w lettre fnd $cv($1,r,$2,couleur.lettre.couleur2)
cl w lettre gra $cv($1,r,$2,couleur.lettre.gra)
cl w lettre sou $cv($1,r,$2,couleur.lettre.sou)
cl w lettre inv $cv($1,r,$2,couleur.lettre.inv)
cl w lettre maj $cv($1,r,$2,couleur.lettre.maj)
cl w config strip $cv($1,r,$2,couleur.strip)
cl w config nocolor $cv($1,r,$2,couleur.nocolor)
cl w config desactive $cv($1,r,$2,couleur.desactive)
cl w pseudo txt $cv($1,r,$2,couleur.pseudo.couleur1)
cl w pseudo fnd $cv($1,r,$2,couleur.pseudo.couleur2)
cl w pseudo car $cv($1,r,$2,couleur.pseudo)
cl w pseudo gra $cv($1,r,$2,couleur.pseudo.gra)
cl w pseudo sou $cv($1,r,$2,couleur.pseudo.sou)
cl w pseudo inv $cv($1,r,$2,couleur.pseudo.inv)
cl w pseudo maj $cv($1,r,$2,couleur.pseudo.maj)
}
;##ecrit dans la database##
alias -l couleur.ecrit {
cv $1 w $2 nom $2
if ($did(couleur,83)) cv $1 w $2 couleur.masque $did(couleur,83)
else cv $1 d $2 couleur.masque
cv $1 w $2 couleur.couleur1 $calc($did(couleur,11).sel - 1)
cv $1 w $2 couleur.couleur2 $calc($did(couleur,13).sel - 1)
cv $1 w $2 couleur.gra $did(couleur,14).state
cv $1 w $2 couleur.sou $did(couleur,15).state
cv $1 w $2 couleur.inv $did(couleur,16).state
cv $1 w $2 couleur.maj $did(couleur,17).state
cv $1 w $2 couleur.gauche $did(couleur,20).state
if ($did(couleur,21)) cv $1 w $2 couleur.gauche.text $did(couleur,21)
else cv $1 d $2 couleur.gauche.text
cv $1 w $2 couleur.droite $did(couleur,30).state
if ($did(couleur,31)) cv $1 w $2 couleur.droite.text $did(couleur,31)
else cv $1 d $2 couleur.droite.text
cv $1 w $2 couleur.lettre.couleur1 $calc($did(couleur,41).sel - 1)
cv $1 w $2 couleur.lettre.couleur2 $calc($did(couleur,43).sel - 1)
cv $1 w $2 couleur.lettre.gra $did(couleur,44).state
cv $1 w $2 couleur.lettre.sou $did(couleur,45).state
cv $1 w $2 couleur.lettre.inv $did(couleur,46).state
cv $1 w $2 couleur.lettre.maj $did(couleur,47).state
if ($did(couleur,51)) cv $1 w $2 couleur.strip $did(couleur,51)
else cv $1 d $2 couleur.strip
if ($did(couleur,53)) cv $1 w $2 couleur.nocolor $did(couleur,53)
else cv $1 d $2 couleur.nocolor
cv $1 w $2 couleur.pseudo.couleur1 $calc($did(couleur,63).sel - 1)
cv $1 w $2 couleur.pseudo.couleur2 $calc($did(couleur,65).sel - 1)
if ($did(couleur,56)) cv $1 w $2 couleur.pseudo $did(couleur,56)
else cv $1 d $2 couleur.pseudo
cv $1 w $2 couleur.pseudo.gra $did(couleur,57).state
cv $1 w $2 couleur.pseudo.sou $did(couleur,58).state
cv $1 w $2 couleur.pseudo.inv $did(couleur,59).state
cv $1 w $2 couleur.pseudo.maj $did(couleur,60).state
cv $1 w $2 couleur.desactive $did(couleur,61).state
else cv $1 d $2 couleur.desactive
}
;##permet de lire les caracteres speciaux dans la database##
alias -l cp return $replace($1-,,&o,,&b,,&u,,&c,,&r)
alias -l crp return $replace($1-,&o,,&b,,&u,,&c,,&r,)
;##########INSTALLATION##########
on *:load: {
if (!$cl(r,fenetre,x)) cl w fenetre x -1
if (!$cl(r,fenetre,y)) cl w fenetre y -1
if (!$cl(r,config,manuel)) cl w config manuel off
if (!$cl(r,config,cmd)) cl w config cmd /couleur
if (!$cl(r,config,me)) cl w config me /me
if (!$cl(r,config,notice)) cl w config notice /n
if (!$cl(r,config,amsg)) cl w config amsg /amsg
if (!$cl(r,config,ame)) cl w config ame /ame
if (!$cl(r,config,mode)) cl w config mode 1
if (!$cl(r,config,cmode)) cl w config cmode 7(Couleur) 4[<mode>] 2config <config> activée
couleur.aloue msg defaut
dialog -m couleur couleur
}
;##########PUB##########
ctcp *:VERSION:*:{
ctcpreply $nick VERSION 12 addon : 4 $+ Couleur System V4.4 12 $+ crée par 13 $+ A $+ 6 $+ erith
}
;##########NOYAU##########
on *:input:*: {
if (!$server) goto fin
;mode manuel
if ($1 == $cl(r,config,cmd)) {
if (!$2) {
if ($gettok($cl(r,config,manuel),1,32) == on) {
cl w config config $gettok($cl(r,config,manuel),2-3,32)
couleur.aloue $cl(r,config,config)
cl w config manuel off
echo -a $replace($cl(r,config,cmode),<mode>,Mode Auto,<config>,$cl(r,config,config))
goto fin2
}
}
elseif ($2 == -s) {
if ($cv($iif($4,$4,msg),r,$3,nom)) {
cl w config manuel say $cl(r,config,config) $cl(r,config,manuel)
cl w config config $iif($4,$4,msg) $3
couleur.aloue $cl(r,config,config)
echo -a $replace($cl(r,config,cmode),<mode>,Mode Temp,<config>,$cl(r,config,config))
goto fin2
}
}
elseif ($cv($iif($3,$3,msg),r,$2,nom)) {
cl w config config $iif($3,$3,msg) $2
cl w config manuel on $cl(r,config,config)
couleur.aloue $cl(r,config,config)
echo -a $replace($cl(r,config,cmode),<mode>,Mode Manu,<config>,$cl(r,config,config))
goto fin2
}
}
;desactivation de l'addon et recherche le type
if ($1 == $cl(r,config,me)) {
if (($left($2,1) isin $cl(r,config,strip) ) || ($cl(r,config,desactive) == 1)) goto fin
else var %type = me
}
elseif ($1 == $cl(r,config,notice)) {
if (($left($3,1) isin $cl(r,config,strip) ) || ($cl(r,config,desactive) == 1)) goto fin
else var %type = notice
}
elseif ($1 == $cl(r,config,amsg)) {
if (($left($2,1) isin $cl(r,config,strip) ) || ($cl(r,config,desactive) == 1)) goto fin
else var %type = amsg
}
elseif ($1 == $cl(r,config,ame)) {
if (($left($2,1) isin $cl(r,config,strip) ) || ($cl(r,config,desactive) == 1)) goto fin
else var %type = ame
}
else {
if (($left($1,1) isin $cl(r,config,strip) ) || ($cl(r,config,desactive) == 1)) goto fin
else var %type = msg
}
;set les variables en fonction de la fenetre active
;$cl(r,config,config) et $cl(r,config,config) permettent de ne pas faire des operations inutile si la config n'a pas a changé
if ($cl(r,config,manuel) == off) {
var %a = %type $couleur.find(%type,$iif($address($active,5),$address($active,5),$active),$network $+ $server)
if (%a != $cl(r,config,config)) {
cl w config config %a
couleur.aloue $cl(r,config,config)
if ($cl(r,config,mode) == 1) echo -a $replace($cl(r,config,cmode),<mode>,Mode Auto,<config>,$cl(r,config,config))
}
}
;sauvegarde la chaine q travailler et qui sera envoyer
if ((%type == me) || (%type == amsg) || (%type == ame)) var %out = $2-
elseif (%type == notice) var %out = $3-
else var %out = $1-
var %out = $chr(32) $+ %out
;creation de la couleur du text
var %cg = $iif($cl(r,couleur,gra) == 1,)
var %cs = $iif($cl(r,couleur,sou) == 1,)
var %ci = $iif($cl(r,couleur,inv) == 1,)
set %couleur $iif($cl(r,couleur,txt) < 16, $+ $cl(r,couleur,txt) $+ $iif($cl(r,couleur,fnd) < 16,$chr(44) $+ $cl(r,couleur,fnd))) $+ %cg $+ %cs $+ %ci
;creation de la couleur premiere lettre
var %clg = $iif($cl(r,lettre,gra) == 1,)
var %cls = $iif($cl(r,lettre,sou) == 1,)
var %cli = $iif($cl(r,lettre,inv) == 1,)
cl w lettre outtxt $iif($cl(r,lettre,txt) == 17,$cl(r,couleur,txt),$cl(r,lettre,txt))
cl w lettre outfnd $iif($cl(r,lettre,fnd) == 17,$cl(r,couleur,fnd),$cl(r,lettre,fnd))
cl w lettre out $iif($cl(r,lettre,outtxt) < 16, $+ $cl(r,lettre,outtxt) $+ $iif($cl(r,lettre,outfnd) < 16,$chr(44) $+ $cl(r,lettre,outfnd))) $+ %clg $+ %cls $+ %cli
;creation du pseudo
var %cpg = $iif($cl(r,pseudo,gra) == 1,)
var %cps = $iif($cl(r,pseudo,sou) == 1,)
var %cpi = $iif($cl(r,pseudo,inv) == 1,)
cl w pseudo outtxt $iif($cl(r,pseudo,txt) == 17,$cl(r,lettre,outtxt),$cl(r,pseudo,txt))
cl w pseudo outfnd $iif($cl(r,pseudo,fnd) == 17,$cl(r,lettre,outfnd),$cl(r,pseudo,fnd))
cl w pseudo out $iif($cl(r,pseudo,outtxt) < 16, $+ $cl(r,pseudo,outtxt) $+ $iif($cl(r,pseudo,outfnd) < 16,$chr(44) $+ $cl(r,pseudo,outfnd))) $+ %cpg $+ %cps $+ %cpi
var %i = 1
while (%i <= $numtok(%out,32)) {
if ($gettok(%out,%i,32) ison $active) %out = $replace(%out,$gettok(%out,%i,32),$cl(r,pseudo,out) $+ $gettok(%out,%i,32) $+ $cl(r,pseudo,out) $+ %couleur)
;coloration url
if ((http:// isin $gettok(%out,%i,32)) || (www. isin $gettok(%out,%i,32))) %out = $replace(%out,$gettok(%out,%i,32),$cl(r,pseudo,out) $+ $+ $gettok(%out,%i,32) $+ $+ $cl(r,pseudo,out) $+ %couleur)
inc %i 1
}
if (($strip($gettok(%out,1,32)) ison $active) || (http:// isin $gettok(%out,1,32)) || (www. isin $gettok(%out,1,32))) {
%out = $gettok(%out,1,32) $iif($gettok(%out,2,32),$cl(r,pseudo,car),) $gettok(%out,2-,32)
;creation premiere lettre
if (($left($gettok(%out,3,32),1) !isnum) && ($mid($gettok(%out,3,32),2,1) !isnum)) {
%out = $gettok(%out,1-2,32) $replace($gettok(%out,3,32),$gettok(%out,3,32),$cl(r,lettre,out) $+ $iif($cl(r,lettre,maj) == 1,$upper($left($gettok(%out,3,32),1)),$left($gettok(%out,3,32),1)) $+ %couleur $+ $right($gettok(%out,3,32),-1))) $gettok(%out,4-,32)
}
else var %out = %couleur $+ %out
}
else {
;creation premiere lettre
if (($left($gettok(%out,1,32),1) !isnum) && ($mid($gettok(%out,1,32),2,1) !isnum)) {
%out = $replace($gettok(%out,1,32),$gettok(%out,1,32),$cl(r,lettre,out) $+ $iif($cl(r,lettre,maj) == 1,$upper($left($gettok(%out,1,32),1)),$left($gettok(%out,1,32),1)) $+ %couleur $+ $right($gettok(%out,1,32),-1))) $gettok(%out,2-,32)
}
else var %out = %couleur $+ %out
}
;creation des decos
if ($cl(r,gauche,actif) == 1) var %out = $cl(r,gauche,text) %out
if ($cl(r,droite,actif) == 1) var %out = %out $+ $cl(r,droite,text)
;supprime les couleurs si interdite sur le chan
if ((%type isin amsg ame) && ($me ison $active) && ($right($cl(r,config,nocolor),1) isincs $chan($active).mode)) var %out $strip(%out, co)
;affiche le resultat
if (%type == me) describe $active %out
elseif (%type == notice) notice $2 %out
elseif (%type == amsg) {
var %a = 1
while (%a <= $chan(0)) {
if ($right($cl(r,config,nocolor),1) isincs $chan(%a).mode) msg $chan(%a) $strip(%out)
else msg $chan(%a) %out
inc %a 1
}
}
elseif (%type == ame) {
var %a = 1
while (%a <= $chan(0)) {
if ($right($cl(r,config,nocolor),1) isincs $chan(%a).mode) describe $chan(%a) $strip(%out)
else describe $chan(%a) %out
inc %a 1
}
}
else msg $active %out
;remet ancienne config si mode couleur say
if ($gettok($cl(r,config,manuel),1,32) == say) {
cl w config config $gettok($cl(r,config,manuel),2-3,32)
cl w config manuel $gettok($cl(r,config,manuel),4-,32)
couleur.aloue $cl(r,config,config)
}
;quit l'addon
:fin2
halt
:fin
}
Conclusion
Dans le zip il y a un exemple.
Cette addon couleur n'a aucun équivalent !
Fichier Zip
Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
Télécharger le zip
Historique
- 13 août 2004 01:01:03 :
- V3.4 :
detection des modes chan desormai case sensitive
ajout du systeme de coloration pour le pseudo
- 22 décembre 2004 13:29:33 :
- V4.0 :
correction d'un bug mineur qui metais un espace de trop entre les deco gauche et le text
refonte de la database temporaire, desormai tout en .ini, plus propre dans le remote, reste compatible avec les bases de mes autre addon
ajout de /couleurs pour lancer l'addon depuis un script sans bug
amsg et ame sensible au mode nocolor de chaque chan
V4.1 :
quant on modifie une config et qu'on enregistre, ça recharge desormai automatiquement la config activée
- 11 janvier 2005 17:51:59 :
- V4.2 :
en passant a la V4 j'avais zaper 3 lignes en rapport avec les options "Modes"
- 18 mai 2005 14:35:07 :
- V4.3 :
une erreur de frappe ("b" a la place de "n") fesait ne pas marcher les couleur de fond
j'ai aussi rajouter "identique" pour les couleur du pseudo (identique a la premiere lettre)
le pseudo est desormais coloriser quel que soit sa position dans la phrase
plusieur amélioration du noyau
- 13 mars 2006 23:16:46 :
- V4.4 :
correction de bug mineur d'affichage
coloration des url
supprime le caractère apres le pseudo si il est seul
Sources du même auteur
Sources de la même categorie
Sources en rapport avec celle ci
Commentaires et avis
|