Nick system v2

Contenu du snippet

cette addon permet de programmer les changement de nick
-vous configurer la commande voulu
ex : /defaut
-vous choisisser si c'est un nick ou une option de nick qui sera placer derriere
ex : aerith
-vous pouvez configurer les couleur d'ecriture, gras, souligner qui seron programmable si vous avez mon couleur system (anciennement output system)
-voux pouvez configurer une phrase d'intro en msg ou msg
ex : kikou me revoila
-et configurer l'away pour l'activer sur certain pseudo via eco en pv, avertir, phrase
-y a aussi la commandes pour retirer l'option de nick personalisable

Source / Exemple :

;Nick System V3.0 par aerith "aeris_vallee@hotmail.com"
;des bug peuvent se produire si vous avez deja un addon pour les couleur car Nick System a son propre system de couleur
;pour une utilisation partiel ou complette dans un script me prevenir svp

menu channel,menubar,nicklist { 
  -
  Nick System
  ./nkc Configuration: /nkc
  ./nkh Afficher l'aide: /nkh
  ./nkn Prendre un nick: set %nick.nick $$?="nick a prendre :" | /nkn %nick.nick
  ./nka Ajouter au nick: set %temp $$?="option a ajouter :" | /nka %temp
}

dialog nick.system {
  title "Nick system -=Configuration=-"
  size %nick.system.x %nick.system.y 186 150
  option dbu
  box "cree", 100, 1 0 184 118
  text "Commande", 110, 5 7 30 10
  edit "", 111, 35 7 40 10, autohs
  text "Nick/Option", 112, 5 17 30 10
  edit "", 113, 35 16 40 10, autohs
  box "couleur", 120, 3 27 76 40
  text "ecriture", 121, 5 35 25 10
  combo 122, 35 44 40 150, result drop
  text "Fond", 123, 5 45 25 10
  combo 124, 35 34 40 150, result drop
  check "gras", 125, 5 55 25 10
  check "souligne", 126, 37 55 30 10
  box "introduction", 130, 3 68 180 19
  check "Phrase", 131, 5 75 30 10
  edit "", 132, 35 75 120 10, autohs
  check "amsg", 133, 157 75 25 10
  list 140, 80 7 75 60, size vsbar hsbar
  button "Ajouter", 141, 157 7 25 10
  button "Suprimer", 142, 157 18 25 10
  button "Modifier", 143, 157 29 25 10
  button "Nick", 144, 157 46 25 10
  button "Option", 145, 157 57 25 10
  box "away", 400, 3 87 180 29
  check "Activer away", 401, 5 94 42 10
  check "prevenir away", 402, 134 94 46 10
  check "message en pv", 403, 5 104 50 10
  edit "", 404, 60 104 120 10, autohs
  box "retirer option", 200, 1 118 184 19
  edit "", 201, 5 125 25 10, autohs
  edit "", 202, 35 125 120 10, autohs
  check "amsg", 203, 157 126 25 10
  button "OK", 300, 1 139 30 10, ok
  button "cancel", 301, 33 139 30 10, cancel
  button "Help", 302, 65 139 30 10
}
on *:dialog:nick.system:init:*:{
  did -a nick.system 122,124 Blanc
  did -a nick.system 122,124 Noir
  did -a nick.system 122,124 Bleu foncé
  did -a nick.system 122,124 Vert foncé
  did -a nick.system 122,124 Rouge
  did -a nick.system 122,124 Brun
  did -a nick.system 122,124 Violet
  did -a nick.system 122,124 Orange
  did -a nick.system 122,124 Jaune
  did -a nick.system 122,124 Vert clair
  did -a nick.system 122,124 Vert anglais
  did -a nick.system 122,124 Bleu clair
  did -a nick.system 122,124 Bleu Ciel
  did -a nick.system 122,124 Rose
  did -a nick.system 122,124 Gris foncé
  did -a nick.system 122,124 Gris clair
  did -a nick.system 111 $readini nick.ini nk0 com
  did -a nick.system 113 $readini nick.ini nk0 base
  set %temp $readini nick.ini nk0 couleur1
  did -c nick.system 122 $calc(%temp + 1)
  set %temp $readini nick.ini nk0 couleur2
  did -c nick.system 124 $calc(%temp + 1)
  if ( $readini nick.ini nk0 gras == 1 ) { did -c nick.system 125 }
  if ( $readini nick.ini nk0 soul == 1 ) { did -c nick.system 126 }
  if ( $readini nick.ini nk0 intro == 1 ) { did -c nick.system 131 }
  did -a nick.system 132 $creplace($readini nick.ini nk0 text)
  if ( $readini nick.ini nk0 amsg == 1 ) { did -c nick.system 133 }
  if ( $readini nick.ini nk0 away == 1 ) { did -c nick.system 401 }
  if ( $readini nick.ini nk0 prev == 1 ) { did -c nick.system 402 }
  if ( $readini nick.ini nk0 pvon == 1 ) { did -c nick.system 403 }
  did -a nick.system 404 $creplace($readini nick.ini nk0 pv)
  did -a nick.system 201 $readini nick.ini defaut com
  did -a nick.system 202 $creplace($readini nick.ini defaut text)
  if ($readini nick.ini defaut amsg == 1 ) { did -c nick.system 203 }
  set %nick.system.quoi nick
  listnick
}
on *:dialog:nick.system:sclick:140:{
  set %temp $did(nick.system,140).sel
  if (%nick.system.quoi == nick) { set %nk nk $+ $calc(%temp - 1 ) }
  if (%nick.system.quoi == option) { set %nk nko $+ $calc(%temp - 1 ) }
  did -ra nick.system 111 $readini nick.ini %nk com
  did -ra nick.system 113 $readini nick.ini %nk base
  set %temp $readini nick.ini %nk couleur1
  did -c nick.system 122 $calc(%temp + 1)
  set %temp $readini nick.ini %nk couleur2
  did -c nick.system 124 $calc(%temp + 1)
  if ( $readini nick.ini %nk gras == 1 ) { did -c nick.system 125 }
  else { did -u nick.system 125 }
  if ( $readini nick.ini %nk soul == 1 ) { did -c nick.system 126 }
  else { did -u nick.system 126 }
  if ( $readini nick.ini %nk intro == 1 ) { did -c nick.system 131 }
  else { did -u nick.system 131 }
  did -ra nick.system 132 $creplace($readini nick.ini %nk text)
  if ( $readini nick.ini %nk amsg == 1 ) { did -c nick.system 133 }
  else { did -u nick.system 133 }
  if ( $readini nick.ini %nk away == 1 ) { did -c nick.system 401 }
  else { did -u nick.system 401 }
  if ( $readini nick.ini %nk prev == 1 ) { did -c nick.system 402 }
  else { did -u nick.system 402 }
  if ( $readini nick.ini %nk pvon == 1 ) { did -c nick.system 403 }
  else { did -u nick.system 403 }
  did -ra nick.system 404 $creplace($readini nick.ini %nk pv)
}
on *:dialog:nick.system:sclick:141:{
  if ($readini nick.ini max nk == $null) { writeini -n nick.ini max nk -1 }
  if ($readini nick.ini max nko == $null) { writeini -n nick.ini max nko -1 }
  if (%nick.system.quoi == nick) { set %temp $readini nick.ini max nk }
  if (%nick.system.quoi == option) { set %temp $readini nick.ini max nko }
  inc %temp
  if (%nick.system.quoi == nick) { set %nk nk $+ %temp }
  if (%nick.system.quoi == option) { set %nk nko $+ %temp }
  writeini -n nick.ini %nk com $did(111)
  writeini -n nick.ini %nk base $did(113)
  writeini -n nick.ini %nk couleur1 $calc($did(nick.system,122).sel - 1)
  writeini -n nick.ini %nk couleur2 $calc($did(nick.system,124).sel - 1)
  writeini -n nick.ini %nk gras $did(125).state
  writeini -n nick.ini %nk soul $did(126).state
  writeini -n nick.ini %nk intro $did(131).state
  if ($did(132) != $null) { writeini -n nick.ini %nk text $cplace($did(132)) }
  writeini -n nick.ini %nk amsg $did(133).state
  writeini -n nick.ini %nk away $did(401).state
  writeini -n nick.ini %nk prev $did(402).state
  writeini -n nick.ini %nk pvon $did(403).state
  if ($did(404) != $null) { writeini -n nick.ini %nk pv $cplace($did(404)) }
  if (%nick.system.quoi == nick) { writeini -n nick.ini max nk %temp }
  if (%nick.system.quoi == option) { writeini -n nick.ini max nko %temp }
  listnick
}
on *:dialog:nick.system:sclick:142:{
  unset %ok
  set %error voulez vous suprimer ?
  $dialog(nick.system.error,nick.system.error)
  if (($did(nick.system,140).sel > 0) && (%ok == ok)) {
    var %a $did(nick.system,140).sel
    if ((%a > $readini nick.ini max nk) && (%nick.system.quoi == nick)) { set %temp nk $+ $calc(%a - 1 ) | goto fin }
    if ((%a > $readini nick.ini max nko) && (%nick.system.quoi == option)) { set %temp nko $+ $calc(%a - 1 ) | goto fin }
    :loop
    if (%nick.system.quoi == nick) { set %nk nk $+ $calc(%a - 1) }
    if (%nick.system.quoi == option) { set %nk nko $+ $calc(%a - 1) }
    if (%nick.system.quoi == nick) { set %temp nk $+ %a }
    if (%nick.system.quoi == option) { set %temp nko $+ %a }
    var %b $readini nick.ini %temp com | writeini -n nick.ini %nk com %b
    var %b $readini nick.ini %temp base | writeini -n nick.ini %nk base %b
    var %b $readini nick.ini %temp couleur1 | writeini -n nick.ini %nk couleur1 %b
    var %b $readini nick.ini %temp couleur2 | writeini -n nick.ini %nk couleur2 %b
    var %b $readini nick.ini %temp gras | writeini -n nick.ini %nk gras %b
    var %b $readini nick.ini %temp soul | writeini -n nick.ini %nk soul %b
    var %b $readini nick.ini %temp intro | writeini -n nick.ini %nk intro %b
    var %b $readini nick.ini %temp text | if (%b != $null) { writeini -n nick.ini %nk text %b }
    var %b $readini nick.ini %temp amsg | writeini -n nick.ini %nk amsg %b
    var %b $readini nick.ini %temp away | writeini -n nick.ini %nk away %b
    var %b $readini nick.ini %temp prev | writeini -n nick.ini %nk prev %b
    var %b $readini nick.ini %temp pvon | writeini -n nick.ini %nk pvon %b
    var %b $readini nick.ini %temp pv | if (%b != $null) { writeini -n nick.ini %nk pv %b }
    inc %a
    if ((%a <= $readini nick.ini max nk) && (%nick.system.quoi == nick)) { goto loop }
    if ((%a <= $readini nick.ini max nko) && (%nick.system.quoi == option)) { goto loop }
    :fin
    remini nick.ini %temp
    dec %a 2
    if (%nick.system.quoi == nick) { writeini -n nick.ini max nk %a }
    if (%nick.system.quoi == option) { writeini -n nick.ini max nko %a }
  }
  listnick
}
on *:dialog:nick.system:sclick:143:{
  unset %ok
  set %error voulez vous remplacer ?
  $dialog(nick.system.error,nick.system.error)
  if (($did(nick.system,140).sel > 0) && (%ok == ok)) {
    set %temp $did(nick.system,140).sel
    if (%nick.system.quoi == nick) { set %nk nk $+ $calc(%temp - 1 ) }
    if (%nick.system.quoi == option) { set %nk nko $+ $calc(%temp - 1 ) }
    writeini -n nick.ini %nk com $did(111)
    writeini -n nick.ini %nk base $did(113)
    writeini -n nick.ini %nk couleur1 $calc($did(nick.system,122).sel - 1)
    writeini -n nick.ini %nk couleur2 $calc($did(nick.system,124).sel - 1)
    writeini -n nick.ini %nk gras $did(125).state
    writeini -n nick.ini %nk soul $did(126).state
    writeini -n nick.ini %nk intro $did(131).state
    if ($did(132) != $null) { writeini -n nick.ini %nk text $cplace($did(132)) }
    writeini -n nick.ini %nk amsg $did(133).state
    writeini -n nick.ini %nk away $did(401).state
    writeini -n nick.ini %nk prev $did(402).state
    writeini -n nick.ini %nk pvon $did(403).state
    if ($did(404) != $null) { writeini -n nick.ini %nk pv $cplace($did(404)) }

  }
  listnick
}
on *:dialog:nick.system:sclick:144:{
  set %nick.system.quoi nick
  listnick
}
on *:dialog:nick.system:sclick:145:{
  set %nick.system.quoi option
  listnick
}
on *:dialog:nick.system:sclick:300:{
  if ($did(201) == $null) {
    set %error vous devez donner une commande pour "retirer option"
    $dialog(nick.system.error,nick.system.error)
    halt
  }
  if ($did(202) != $null) { writeini -n nick.ini defaut text $cplace($did(202)) }
  writeini -n nick.ini defaut com $did(201)
  writeini -n nick.ini defaut amsg $did(203).state
  set %nick.system.x $dialog(nick.system).x
  set %nick.system.y $dialog(nick.system).y
}
on *:dialog:nick.system:sclick:302:{
  nkh
}

dialog nick.system.help {
  title "Nick system -=Help=-"
  size %nick.system.help.x %nick.system.help.y 100 60
  option dbu
  list 1, 0 0 75 60, size vsbar hsbar
  button "Prendre", 2, 75 30 25 10
  button "Nick", 3, 75 0 25 10
  button "Option", 4, 75 10 25 10
  button "OK", 5, 75 50 25 10, ok
}
on *:dialog:nick.system.help:sclick:2:{
  set %temp $did(nick.system.help,1).sel
  if (%nick.system.quoi == nick) { set %temp nk $+ $calc(%temp - 1 ) }
  if (%nick.system.quoi == option) { set %temp nko $+ $calc(%temp - 1 ) }
  if (%nick.system.quoi == nick) { set %nick.nick $readini nick.ini %temp base }
  if (%nick.system.quoi == option) { set %nick.option $readini nick.ini %temp base }
  set $cl(couleur1 $readini nick.ini %temp couleur1
  set $cl(couleur2 $readini nick.ini %temp couleur2
  if ($readini nick.ini %temp gras == 1) { set $cl(gras  } | else { set $cl(gras  }
  if ($readini nick.ini %temp soul == 1) { set $cl(souligne  } | else { set $cl(souligne  }
  set %nick.system.text $creplace($readini nick.ini %temp text)
  awayon
  if ($readini nick.ini %temp intro == 1) {
    if (($readini nick.ini %temp amsg == 1) && (%nick.system.text != $null)) { amsg %nick.system.text %c }
    if (($readini nick.ini %temp amsg == 0) && (%nick.system.text != $null)) { msg $active %nick.system.text %c }
  }
  nickchange
}
on *:dialog:nick.system.help:sclick:3:{
  var %a 0
  did -r nick.system.help 1
  :loop
  set %temp nk $+ %a
  did -za nick.system.help 1 $readini nick.ini %temp com ; $readini nick.ini %temp base
  inc %a
  if (%a <= $readini nick.ini max nk) { goto loop }
  set %nick.system.quoi nick
}
on *:dialog:nick.system.help:sclick:4:{
  var %a 0
  did -r nick.system.help 1
  :loop
  set %temp nko $+ %a
  did -za nick.system.help 1 $readini nick.ini %temp com ; $readini nick.ini %temp base
  inc %a
  if (%a <= $readini nick.ini max nko) { goto loop }
  set %nick.system.quoi option
}
on *:dialog:nick.system.help:sclick:5:{
  set %nick.system.help.x $dialog(nick.system.help).x
  set %nick.system.help.y $dialog(nick.system.help).y
}

dialog nick.system.error {
  title "Nick system -=Error=-"
  size -1 -1 100 50
  option dbu
  text %error, 1, 0 0 100 40, center
  button "OK", 2, 0 40 30 10, ok
  button "Cancel", 3, 70 40 30 10, cancel
}
on *:dialog:nick.system.error:sclick:2:{
  set %ok ok
}

on *:input:*: {
  if ($readini nick.ini defaut com == $1) { nkd | goto fin }
  var %a 0
  :loop1
  set %temp nk $+ %a
  if ($readini nick.ini %temp com == $1) { goto fin }
  inc %a
  if (%a <= $readini nick.ini max nk) { goto loop1 }
  var %a 0
  :loop2
  set %temp nko $+ %a
  if ($readini nick.ini %temp com == $1) { goto fin }
  inc %a
  if (%a <= $readini nick.ini max nko) { goto loop2 }
  :fin
  if ($readini nick.ini %temp com == $1) {
    if ($left(%temp,3) != nko) { set %nick.nick $readini nick.ini %temp base }
    if ($left(%temp,3) == nko) { set %nick.option $readini nick.ini %temp base }
    ;set $cl(couleur1 $readini nick.ini %temp couleur2
    ;set $cl(couleur2 $readini nick.ini %temp couleur1
    ;if ($readini nick.ini %temp gras == 1) { set $cl(gras  } | else { set $cl(gras  }
    ;if ($readini nick.ini %temp soul == 1) { set $cl(souligne  } | else { set $cl(souligne  }
    set %nick.system.text $creplace($readini nick.ini %temp text)
    awayon
    if ($readini nick.ini %temp intro == 1) {
      if (($readini nick.ini %temp amsg == 1) && (%nick.system.text != $null)) { amsg %nick.system.text %c }
      if (($readini nick.ini %temp amsg == 0) && (%nick.system.text != $null)) { msg $active %nick.system.text %c }
    }
    nickchange
    halt
  }
}

alias listnick {
  var %a 0
  did -r nick.system 140
  :loop
  if (%nick.system.quoi == nick) { set %temp nk $+ %a }
  if (%nick.system.quoi == option) { set %temp nko $+ %a }
  did -za nick.system 140 $readini nick.ini %temp com ; $readini nick.ini %temp base
  inc %a
  if ((%a <= $readini nick.ini max nk) && (%nick.system.quoi == nick)) { goto loop }
  if ((%a <= $readini nick.ini max nko) && (%nick.system.quoi == option)) { goto loop }
}
alias nka  {
  set %nick.option %nick.option $+ $1
  nickchange
}
alias nkn {
  set %nick.nick $1
  nickchange
}
alias nkc {
  if (%nick.system.x == $null) { set %nick.system.x -1 }
  if (%nick.system.y == $null) { set %nick.system.y -1 }
  dialog -m nick.system nick.system
}
alias nkh {
  if (%nick.system.help.x == $null) { set %nick.system.help.x -1 }
  if (%nick.system.help.y == $null) { set %nick.system.help.y -1 }
  dialog -m nick.system.help nick.system.help
}
alias nkd {
  var %a 0
  :loop
  set %temp nk $+ %a
  if ($readini nick.ini %temp base == %nick.nick) { goto fin }
  inc %a
  if (%a <= $readini nick.ini max nk) { goto loop }
  :fin
  if ($readini nick.ini %temp base == %nick.nick) {
    set %nick.option
    set %couleur.couleur1 $readini nick.ini %temp couleur2
    set %couleur.couleur2 $readini nick.ini %temp couleur1
    if ($readini nick.ini %temp gras == 1) { set %couleur.gras  } | else { set %couleur.gras  }
    if ($readini nick.ini %temp soul == 1) { set %couleur.souligne  } | else { set %couleur.souligne  }
    set %nick.system.text $creplace($readini nick.ini defaut text)
    awayon
    if ($readini nick.ini %temp intro == 1) {
      if (($readini nick.ini defaut amsg == 1) && (%nick.system.text != $null)) { amsg %nick.system.text %c }
      if (($readini nick.ini defaut amsg == 0) && (%nick.system.text != $null)) { msg $active %nick.system.text %c }
    }
  }
  nickchange
  halt
}
alias nickchange {
  nick %nick.nick $+ %nick.option
}
alias awayon {
  unset %c
  if ($away) {
    if ($awaytime != $null) {
      set %c (de retour d'Away ( $+ $duration($awaytime) $+ ))
      if ($file(nickaw.ini).size != $null) { remove nickaw.ini }
    }
    away
  }
  if ($readini nick.ini %temp away == 1) {
    set %nick.system.away.text $creplace($readini nick.ini %temp pv)
    if ($readini nick.ini %temp prev == 1) { set %c (Away ON) }
    away %nick.system.away.text
  }
  elseif ($readini nick.ini %temp away == 0) {
    if ($readini nick.ini %temp prev == 1) { set %c (Away OFF) }
  }
}
alias cplace {
  return $replace($replace($replace($replace($replace($1-,,&o),,&b),,&u),,&c),,&r)
}
alias creplace {
  return $replace($replace($replace($replace($replace($1-,&o,),&b,),&u,),&c,),&r,)
}

on *:text:*:?: {
  if (($away) && ($readini nickaw.ini $address($nick,0) nick == $null)) {
    msg $nick %nick.system.away.text
    if ($awaytime != $null) {
      msg $nick Away activer depuis $duration($awaytime)
    }
    writeini -n nickaw.ini $address($nick,0) nick $nick
  }
}

raw 433:*: timer 1 10 nick %nick.nick $+ %nick.option
raw 432:*: nick %nick.nick $+ %nick.option

Conclusion :

cette addon est assez vieux je ne suis pas motiver pour la V3
il mache bien et est assez sympatique quant bien config

le cplace et creplace son des alias crée par mybox

voila @++

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.