Nick/Pass

By rhasttaff on Sep 15, 2008

Image

Hello Hawkee people!!!
I know I'm not a great scripter. I'm Starting. but at least I try create my own things.
and this is one of them a nickname control to separate nicknames and passwords by network
and auto-identify where necessary, have options usermode,group,ghost,selfgreet and ant-Guest

ONLY WORK IN NETWORKS WITH NICKSERV
you can choose btw /ns, /nickserv & /msg nickserv

then if you want to comment that I appreciate!
but please test the code before commenting on

UPDATED: added input nick dialog to change your nick using shortwords.

Jah Bless´´´

;###Nick/Pass # By rhasttaff ###
dialog nickpass {
  title "Nick/Pass"
  size -1 -1 68 119
  option dbu
  list 1, 3 27 62 36, size
  combo 2, 5 8 58 47, size drop
  button "ADD", 8, 2 108 18 10
  button "DEL", 9, 25 108 18 10
  button "EDIT", 10, 48 108 18 10
  box "NetWorks", 11, 2 0 64 106
  box "Nicks", 12, 2 19 64 69
  list 13, 3 62 62 25, size
  text "Last Use:", 14, 4 89 16 14, center hide
  text "", 15, 25 88 39 8, center
  text "", 16, 25 96 39 8, center
  menu "Config", 17
  menu "Addon-Pass", 18, 17
  menu "Ask for pass", 19, 18
  item "ON", 20, 19
  item "OFF", 21, 19
  item "Set new pass", 22, 18
  menu "Language", 23, 17
  item "English", 24, 23
  item "Portuguese", 25, 23
  item "Spanish", 26, 23
  menu "Service", 27, 17
  item "/ns", 28, 27
  item "/nickserv", 29, 27
  item "/msg nickserv", 30, 27
  item "Inputs", 31, 17
}
dialog nickpass2 {
  title "Nick/Pass"
  size -1 -1 195 118
  option dbu
  box "NetWork", 3, 2 4 79 74
  edit "", 4, 4 12 75 10
  box "Nick", 5, 2 22 79 56, disable
  edit "", 6, 4 30 75 10, disable
  box "Password", 7, 2 40 79 38
  edit "", 8, 4 48 75 10, disable
  box "uMode", 9, 80 4 45 74
  edit "", 10, 91 12 31 9, disable
  text "+", 11, 85 13 6 7, center
  box "Options", 12, 80 22 45 56
  check "Auto-Ghost", 14, 83 43 37 8, disable
  check "Ant-Guest", 15, 83 54 35 7, disable
  box "Pass-Generator/Scrambler", 35, 2 58 79 20
  edit "", 25, 4 66 41 10
  button "Gen", 17, 46 66 13 9
  button "Scram", 18, 60 66 19 9, disable
  edit "", 19, 82 63 40 10, disable hide
  combo 20, 127 25 63 50, size disable
  box "Grouped Nicks", 21, 124 4 69 74
  button "ADD", 22, 130 12 21 9, disable
  button "REM", 23, 165 12 21 9, disable
  box "Self-GreeT", 24, 2 78 191 21
  edit "", 16, 4 86 187 11, autohs disable
  box "", 27, 2 95 173 22
  box "", 29, 174 95 19 22
  button "OK", 30, 176 100 15 15, ok
  check "Kill", 13, 83 32 21 8, disable
  text "", 36, 3 99 171 16
}
dialog adnpass {
  title "Nick/Pass"
  size -1 -1 80 33
  option dbu
  edit "", 1, 2 20 56 10, pass
  button "OK", 2, 60 20 17 9, disable
  text "", 3, 2 1 77 16, center
}
dialog ninput {
  title "Nick Input"
  size -1 -1 88 99
  option dbu
  edit "", 1, 3 9 16 9, autohs
  edit "", 11, 22 9 63 9, autohs
  edit "", 2, 3 20 16 9, autohs
  edit "", 12, 22 20 63 9, autohs
  edit "", 3, 3 31 16 9, autohs
  edit "", 13, 22 31 63 9, autohs
  edit "", 4, 3 42 16 9, autohs
  edit "", 14, 22 42 63 9, autohs
  edit "", 5, 3 53 16 9, autohs
  edit "", 15, 22 53 63 9, autovs
  edit "", 6, 3 64 16 9, autohs
  edit "", 16, 22 64 63 9, autovs
  box "short", 130, 1 1 20 96
  box "Full Nick", 140, 20 1 67 96
  edit "", 7, 3 75 16 9, autohs
  edit "", 17, 22 75 63 9, autohs
  edit "", 8, 3 86 16 9, autohs
  edit "", 18, 22 86 63 9, autohs
}
on *:dialog:nickpass:init:0: {
  if ($readini(npass.ini,config,svc) = $did($dname,28).text) { did -c $dname 28 }
  if ($readini(npass.ini,config,svc) = $did($dname,29).text) { did -c $dname 29 }
  if ($readini(npass.ini,config,svc) = $did($dname,30).text) { did -c $dname 30 }
  if ($readini(npass.ini,networks,all)) {
    var %t = $numtok($np.allnet,32)
    while (%t != 0) {
      did -a $dname 2 $gettok($readini(npass.ini,networks,all),%t,32)
      dec %t
    }
  }
  if ($np.lang != 1) {
    var %a = Redes, %b = Ultimo uso:, %c = $iif($np.lang = 2,Addon-Senha,Addon-Contraseña), %d = $iif($np.lang = 2,Pedir Senha?,Pedir Contraseña?), %e = $iif($np.lang = 2,Mudar Senha,Cambiar Contraseña), %f = Idiomas, %g = Ingles, %h = Portugues, %i = $iif($np.lang = 2,Espanhol,Español)
    did -ra $dname 11 %a
    did -ra $dname 14 %b
    did -o $dname 18 %c
    did -o $dname 19 %d
    did -o $dname 22 %e
    did -o $dname 23 %f
    did -o $dname 24 %g
    did -o $dname 25 %h
    did -o $dname 26 %i 
    did -c $dname $iif($np.lang = 2,25,26)
  }
  else { did -c $dname 24 }
  did -c $dname $iif($readini(npass.ini,config,adnpass),20,21)
  did $iif($readini(npass.ini,config,adnpass),-e,-b) $dname 22 
  did -b $dname 9-10
}
on *:dialog:nickpass2:init:0: {
  if ($np.lang != 1) {
    var %a = $iif($np.lang = 2,Rede,Red), %b = $iif($np.lang = 2,Senha,Contraseña), %c = $iif($np.lang = 2,Opções,Opciones), %d = $iif($np.lang = 2,Gerador/Mesclador de Senhas,Generador de Contraseñas), %e = $iif($np.lang = 2,Ger,Gen), %f = $iif($np.lang = 2,Mist,Mesc), %g = Greet-Particular, %h = $iif($np.lang = 2,Nicks-Agrupados,Nicks-Agrupados)
    did -ra $dname 3 %a
    did -ra $dname 7 %b
    did -ra $dname 12 %c
    did -ra $dname 35 %d
    did -ra $dname 17 %e
    did -ra $dname 18 %f
    did -ra $dname 24 %g
    did -ra $dname 21 %h
  }
  did -b $dname 23
}
on *:dialog:adnpass:init:0: {
}
on *:dialog:ninput:init:0: {
  if ($np.lang != 1) { 
    did -ra $dname 130 atalh
    did -ra $dname 140 Nick Completo 
  }
  if ($ini(npass.ini,input,0) != 0) {
    var %a- = $ini(npass.ini,input,0)
    var %b- = 1
    while (%b- <= %a-) {
      did -ra $dname %b- $ini(npass.ini,input,%b-)
      did -ra $dname $calc(%b- + 10) $readini(npass.ini,input,$ini(npass.ini,input,%b-))
      inc %b-
    }
    remini npass.ini input
  }
}
on *:dialog:nickpass:sclick:*: {
  if ($did = 2) {
    var %a = $readini(npass.ini,networks,$did($dname,$did).seltext)
    var %b = $numtok(%a,32)
    did -r $dname 1
    while (%b != 0) {
      did -a $dname 1 $gettok(%a,%b,32)
      dec %b
    }
    did -r $dname 13
  }
  if ($did = 8) {
    if (!$dialog(nickpass2)) { npassadd }
  }
  if ($did = 10) {
    if (!$dialog(nickpass2)) { 
      dialog -m nickpass2 nickpass2
      did -ra nickpass2 4 $did($dname,2).seltext
      did -ra nickpass2 6 $did($dname,1).seltext
      did -ra nickpass2 8 $readini(npass.ini,$did($dname,1).seltext $+ $did($dname,2).seltext,pass)
      if ($readini(npass.ini,$did($dname,1).seltext $+ $did($dname,2).seltext,umode)) { did -ra nickpass2 10 $readini(npass.ini,$did($dname,1).seltext $+ $did($dname,2).seltext,umode) }
      if ($readini(npass.ini,$did($dname,1).seltext $+ $did($dname,2).seltext,sgreet)) { did -ra nickpass2 16 $np.transc2($readini(npass.ini,$did($dname,1).seltext $+ $did($dname,2).seltext,sgreet)) }
      if ($readini(npass.ini,$did($dname,1).seltext $+ $did($dname,2).seltext,guest)) { did -ra nickpass2 19 $readini(npass.ini,$did($dname,1).seltext $+ $did($dname,2).seltext,guest) | did -c nickpass2 15 |  did -v nickpass2 19 }
      if ($readini(npass.ini,$did($dname,1).seltext $+ $did($dname,2).seltext,ghost)) { did -c nickpass2 14 $readini(npass.ini,$did($dname,1).seltext $+ $did($dname,2).seltext,ghost) }   
      if ($readini(npass.ini,$did($dname,1).seltext $+ $did($dname,2).seltext,kill)) { did -c nickpass2 13 }
      var %a = $readini(npass.ini,$did(nickpass2,6).text $+ $did(nickpass2,4).text,gnicks)
      var %b = $numtok(%a,32)
      while (%b != 0) {
        did -a nickpass2 20 $gettok(%a,%b,32)
        dec %b
      }
      did -e nickpass2 4-25 
      did -b nickpass2 18
      did -b nickpass2 23
    }
  }
  if ($did = 9) {
    if (!$dialog(nickpass2)) { 
      var %c = $readini(npass.ini,networks,$did($dname,2).seltext)
      var %d = $numtok(%c,32)
      var %f = $readini(npass.ini,networks,all)
      if (%d > 1) { var %g = $findtok(%c,$did($dname,1).seltext,32) | writeini npass.ini networks $did($dname,2).seltext $deltok(%c,%g,32) |  remini npass.ini $did($dname,1).seltext $+ $did($dname,2).seltext   |     np.relo    }
      if (%d = 1) { remini npass.ini networks $did($dname,2).seltext   |  remini npass.ini $did($dname,1).seltext $+ $did($dname,2).seltext  }
      if ($numtok(%f,32) > 1) {  var %h = $findtok(%f,$did($dname,2).seltext,32) | writeini npass.ini networks all $deltok(%f,%h,32) }
      if ($numtok(%f,32) = 1) {  remini npass.ini networks all }
    }
    np.relo 
  }  
  if ($did = 1) {
    did -e $dname 8-10
    var %a = $readini(npass.ini,$did($dname,1).seltext $+ $did($dname,2).seltext,gnicks)
    if (%a) {
      var %b = $numtok(%a,32)
      did -r $dname 13
      while (%b != 0) {
        did -a $dname 13 $gettok(%a,%b,32)
        dec %b
      }
    }
    else { did -r $dname 13 }
    var %c = $readini(npass.ini,$did($dname,1).seltext $+ $did($dname,2).seltext,lastu)
    if (%c) {  did -v $dname 14 | did -ra $dname 15 $gettok(%c,1,32) | did -ra $dname 16 $gettok(%c,2,32) } 
    else { did -r $dname 15-16 | did -h $dname 14 }
  }
  if ($did = 13) {
    var %d = $readini(npass.ini,$did($dname,13).seltext $+ $did($dname,2).seltext,lastu)
    if (%d) { did -v $dname 14 | did -ra $dname 15 $gettok(%d,1,32) | did -ra $dname 16 $gettok(%d,2,32) }
    else { did -r $dname 15-16 | did -h $dname 14  } 
    did -b $dname 9-10
  }
}
on *:dialog:nickpass2:sclick:*: {
  if ($did = 22) && ($did($dname,20).text) { 
    var %a = $readini(npass.ini,$did($dname,6).text $+ $did($dname,4).text,gnicks)
    var %b = $numtok(%a,32)
    if (%b >= 1) && (!$istok(%a,$did($dname,20).text,32)) { writeini npass.ini $did($dname,6).text $+ $did($dname,4).text gnicks %a $did($dname,20).text |  writeini npass.ini $did($dname,20).text $+ $did($dname,4).text pass $did($dname,8).text }
    if (%b < 1) { writeini npass.ini $did($dname,6).text $+ $did($dname,4).text gnicks $did($dname,20).text |  writeini npass.ini $did($dname,20).text $+ $did($dname,4).text pass $did($dname,8).text  }
    var %c = $readini(npass.ini,$did($dname,6).text $+ $did($dname,4).text,gnicks)
    var %d = $numtok(%c,32)
    did -r $dname 20
    while (%d != 0) {
      did -a $dname 20 $gettok(%c,%d,32)
      dec %d
    }
    did -e $dname 23
  }
  if ($did = 23) && ($did($dname,20).seltext) {
    var %e = $readini(npass.ini,$did($dname,6).text $+ $did($dname,4).text,gnicks)
    if ($numtok(%e,32) > 1) { 
      var %f = $findtok(%e,$did($dname,20).seltext,32) 
      writeini npass.ini $did($dname,6).text $+ $did($dname,4).text gnicks $deltok(%e,%f,32)
      remini npass.ini $did($dname,20).seltext $+ $did($dname,4).text
      var %h = $readini(npass.ini,$did($dname,6).text $+ $did($dname,4).text,gnicks)
      var %i = $numtok(%h,32)
      did -r $dname 20
      while (%i != 0) {
        did -a $dname 20 $gettok(%h,%i,32)
        dec %i
      }
    }
    if ($numtok(%e,32) = 1) {  did -r $dname 20 | remini npass.ini $did($dname,6).text $+ $did($dname,4).text gnicks | remini npass.ini $did($dname,20).seltext $+ $did($dname,4).text }
  }
  if ($did = 20) { did -e $dname 23 }
  if ($did != 20) { did -b $dname 23  }
  if ($did = 18) && ($len($did($dname,25).text) > 3) { did -ra $dname 25 $misturecs($did($dname,25).text) }
  if ($did = 17)  { np.genpass | did -e $dname 18 }
  if ($did = 14)  { 
    if ($did($dname,14).state = 1) { writeini npass.ini $did($dname,6).text $+ $did($dname,4).text ghost ok }
    else { remini npass.ini $did($dname,6).text $+ $did($dname,4).text ghost  }
  }
  if ($did = 15) { 
    if ($did($dname,15).state = 0) { remini npass.ini $did($dname,6).text $+ $did($dname,4).text guest  }    
    did -ev $dname 19 
  }
}
on *:dialog:adnpass:sclick:2: {
  if ($np.lang = 1) {
    if (%np.adnps1)  { writeini npass.ini config adnpass $did($dname,1).text | dialog -x $dname $dname | unset %np.adnps1 | halt }
    if (%np.adnps2)  {
      if ($did($dname,1).text == $readini(npass.ini,config,adnpass)) { did -ra $dname 3 Well Come $me $+ !!!!! | .timer 1 1 dialog -x $dname $dname | unset %np.adnps2  | .timer 1 2 npass | halt }
      else { did -ra $dname 3 wrong password | .timer 1 2 did -ra $dname 3  Enter your pass }
    }
    halt
  }
  if ($np.lang = 2) {
    if (%np.adnps1)  { writeini npass.ini config adnpass $did($dname,1).text | dialog -x $dname $dname | unset %np.adnps1 | halt }
    if (%np.adnps2)  {
      if ($did($dname,1).text == $readini(npass.ini,config,adnpass)) { did -ra $dname 3 Bem Vindo $me $+ !!!!! | .timer 1 1 /dialog -x $dname $dname | unset %np.adnps2 |  .timer 1 2 npass | halt }
      else { did -ra $dname 3 Senha incorreta | .timer 1 2 did -ra $dname 3  Digite sua senha }
    }
    halt
  }
  if ($np.lang = 3) {
    if (%np.adnps1)  { writeini npass.ini config adnpass $did($dname,1).text | dialog -x $dname $dname | unset %np.adnps1 | halt }
    if (%np.adnps2)  {
      if ($did($dname,1).text == $readini(npass.ini,config,adnpass)) { did -ra $dname 3 Bien Venido $me $+ !!!!! | .timer 1 1 dialog -x $dname $dname | unset %np.adnps2 | .timer 1 2 /npass | halt }
      else { did -ra $dname 3 Contraseña incorrecta | .timer 1 2 did -ra $dname 3  Entra con tu Contraseña  }
    }
  }
}
on *:dialog:nickpass:menu:*: {
  if ($did = 24) && ($np.lang != 1) { writeini npass.ini config lang 1 | np.relo }
  if ($did = 25) && ($np.lang != 2) { writeini npass.ini config lang 2 | np.relo }
  if ($did = 26) && ($np.lang != 3) { writeini npass.ini config lang 3 | np.relo }
  if ($did = 20) { np.adnpass1 | did -u $dname 21 | did -c $dname 20 | did -e $dname 22 }
  if ($did = 21) { remini npass.ini config adnpass | did -u $dname 20 | did -c $dname 21 | did -b $dname 22  }
  if ($did = 22) && ($readini(npass.ini,config,adnpass)) { np.adnpass1 }
  if ($did = 28) { writeini npass.ini config svc $did($dname,28).text | did -c $dname $did | did -u $dname 29-30 } 
  if ($did = 29) { writeini npass.ini config svc $did($dname,29).text | did -c $dname $did | did -u $dname 28,30 } 
  if ($did = 30) { writeini npass.ini config svc $did($dname,30).text | did -c $dname $did | did -u $dname 28-29 }
  if ($did = 31) { 
    if ($dialog(ninput)) { dialog -x ninput | dialog -m ninput ninput }
    if (!$dialog(ninput)) {  dialog -m ninput ninput }
  }
}
on *:dialog:nickpass2:edit:*: {
  if ($did = 4) && ($did($dname,$did).text = MindForge) { did -ra $dname 19 MindUser | did -e $dname 6 }
  if ($did = 4) && ($did($dname,$did).text != MindForge) { did -ra $dname 19 Guest | did -e $dname 6 }
  if ($did = 6) { did -e $dname 8 }
  if ($did = 8) { did -e $dname 9-22 }
  if ($did = 20) && ($len($did($dname,20).text) >= 1) { did -e $dname 22 }
  if ($did = 25) && ($len($did($dname,25).text) >= 4) { did -e $dname 18 }
  else { did -b $dname 18 }
}
on *:dialog:adnpass:edit:1: {
  if ($len($did($dname,1).text) > 3) { did -e $dname 2 }
  else { did -b $dname 2 }
} 
on *:dialog:nickpass2:mouse:*: {
  if ($np.lang != 1) {
    if ($mouse.x isnum 166-220) {
      var %a = $iif($np.lang = 2,Aqui vc Ativa/Desativa a opçao KILL ao conectar. algumas redes nao dao suporte a esta opção. para saber procure por KILL em /ns help set,Aqui Activa/Desactiva la opcion KILL ao conectar. algumas redes no dan apoyo a esta opcion. busca por KILL en /ns help set)
      var %b = $iif($np.lang = 2,Ativando esta opção quando vc conecta e seu nick ainda esta na rede ira ser recuperado pelo comando /ns ghost nick pass,esta opción pondrá fin a una sesión "fantasma" si es que existe)   
      var %c = $iif($np.lang = 2,Esta Opção permite recuperar seu nick quando mudado para um nick padrao do sistema em algumas este nick começa com "Guest",Aqui activa la opcíon para recuperar automaticamente tu nick quando es cambiado por el sistema)
      var %d  = $iif($np.lang = 2,Aqui Você adiciona os Modos de usuario(uMode). qual sera setado quando vc conectar com o nick associado.,Aquí pones modos de usuario(uMode). que se establecerá cuando usted se conecta con el nick asociado)
      var %e = $iif($np.lang = 2,Em algumas redes o Nick do sistema pode ser diferente de outras assim como na MindForge é igual MindUser na Dalnet é Guest,En algunas redes el Nick del sistema pueden ser diferentes de otros así como en MindForge es  MindUser en Dalnet es Guest)
      if ($mouse.y isnum 65-79) { did -ra $dname 36 %a }
      if ($mouse.y isnum 89-98) { did -ra $dname 36 %b }
      if ($mouse.y isnum 110-120) { did -ra $dname 36 %c  }
      if ($mouse.y isnum 30-40) { did -ra $dname 36  %d }
      if ($mouse.y isnum 125-140) { did -ra $dname 36 %e }
    }
    if ($mouse.x isnum 7-150) {
      var %f = $iif($np.lang = 2,Aqui Você adiciona o Nome da Rede (so Uma) ex: MindForge Dalnet Quakenet SwiftIRC,Aquí entra con UNA red ej:  MindForge Dalnet SwiftIRC), %g = $iif($np.lang = 2,Aqui Você entra com o nick,Aquí entra con el nick), %h = $iif($np.lang = 2,Adicione Aqui a Senha do Nick $did($dname,6).text na rede $did($dname,4).text $+ .,Aqui entra con la Contraseña)
      var %i = $iif($np.lang = 2,Aqui Voce Pode Gerar uma senha clikcando em [Ger] ou misturar uma palavra para dificultar sua senha escreva algo e click em [mist],Aquí usted puede crear/generar una contraseña [Gen] o introduzca una palabra e click [mesc])
      if ($mouse.y isnum 21-45) { did -ra $dname 36  %f  }
      if ($mouse.y isnum 59-80) { did -ra $dname 36  %g }
      if ($mouse.y isnum 95-116) { did -ra $dname 36  %h }
      if ($mouse.y isnum 125-152) { did -ra $dname 36  %i }
    }
    var %j  = $iif($np.lang = 2,Aqui você adiciona os seus nick agrupados ou com a mesma senha. algumas redes nao oferecem esta opção. procure GROUP em /ns help,Aquí entra con nicks agrupados. o nicks com la mesma contraseña. algunas redes no dan apoyo a esta opcion. busca GROUP en /ns help), %k = $iif($np.lang = 2,Aqui Voce Pode adicionar uma mensagem de entrada que sera enviada nos canais quando vc entrar,Aquí Usted puede agregar un mensaje de entrada que se enviará a los canales) 
    if ($did = 21) { did -ra $dname 36 %j }
    if ($did = 24) { did -ra $dname 36 %k }
  }
  else {
    if ($mouse.x isnum 166-220) {
      if ($mouse.y isnum 65-79) { did -ra $dname 36 This will activate de KILL  when you connect. same network have no support to this option. to know type /ns help set and look for KILL }
      if ($mouse.y isnum 89-98) { did -ra $dname 36 This will activate de Ghost  option, this will disconnetc your ghost and recover the nick by /ns ghost nick pass  }
      if ($mouse.y isnum 110-120) { did -ra $dname 36 This option allows recover your nick when changed to network-defalt nick "Guest"  }
      if ($mouse.y isnum 30-40) { did -ra $dname 36  Here you Add The UserModes That will be seted on you when connect in the network. like +[RT ] }
      if ($mouse.y isnum 125-140) { did -ra $dname 36 In Some Networks The Defalt network name is not -GUEST- like in MindForge that is: MindUser }
    }
    if ($mouse.x isnum 7-150) {
      if ($mouse.y isnum 21-45) { did -ra $dname 36  Here you Add ONE Network. eg: Dalnet MindForge SwiftIRC  }
      if ($mouse.y isnum 59-80) { did -ra $dname 36  Here you Add The Nick. }
      if ($mouse.y isnum 95-116) { did -ra $dname 36  Here you Add The Password. }
      if ($mouse.y isnum 125-152) { did -ra $dname 36  Here you can generate a password or Scramble your pass. but its will not change your nick Password on the network! }
    }
    if ($did = 21) { did -ra $dname 36 here you will add Grouped nicks or nicks with same pass that the nick $did($dname,6).text $+ . to know if there is the option GROUP type /ns help  }
    if ($did = 24) { did -ra $dname 36 Here You Can Add a msg that will be send to channel that you join when you join  }
  }
} 
on *:dialog:nickpass2:close:*: {
  if ($did($dname,4).text) && ($did($dname,6).text) && ($did($dname,8).text) {
    var %a = $readini(npass.ini,networks,all)
    if (%a) && (!$istok(%a,$did($dname,4).text,32)) {  writeini npass.ini networks all %a $did($dname,4).text }
    if (!%a) { writeini npass.ini networks all $did($dname,4).text }   
    var %b = $readini(npass.ini,networks,$did($dname,4).text)
    if (%b) && (!$istok(%b,$did($dname,6).text,32)) {  writeini npass.ini networks $did($dname,4).text  %b $did($dname,6).text }
    if (!%b) {  writeini npass.ini networks  $did($dname,4).text $did($dname,6).text }    
    writeini npass.ini $did($dname,6).text $+ $did($dname,4).text pass $did($dname,8).text 
    if ($did($dname,10).text) { writeini npass.ini $did($dname,6).text $+ $did($dname,4).text  umode $did($dname,10).text }
    else { if ($readini(npass.ini,$did($dname,6).text $+ $did($dname,4).text,umode)) { remini npass.ini $did($dname,6).text $+ $did($dname,4).text umode } }
    if ($did($dname,16).text) { writeini npass.ini $did($dname,6).text $+ $did($dname,4).text sgreet $ $+ eval( $np.transc1($did($dname,16).text) $+ , $+ 0) }
    else { if ($readini(npass.ini,$did($dname,6).text $+ $did($dname,4).text,sgreet)) { remini npass.ini $did($dname,6).text $+ $did($dname,4).text sgreet } }
    if ($did($dname,13).state = 1) { writeini npass.ini $did($dname,6).text $+ $did($dname,4).text kill ok }
    else { if ($readini(npass.ini,$did($dname,6).text $+ $did($dname,4).text,kill)) { remini npass.ini $did($dname,6).text $+ $did($dname,4).text kill } }
    if ($did($dname,14).state = 1) { writeini npass.ini $did($dname,6).text $+ $did($dname,4).text ghost ok }
    else { if ($readini(npass.ini,$did($dname,6).text $+ $did($dname,4).text,ghost)) { remini npass.ini $did($dname,6).text $+ $did($dname,4).text ghost } }
    if ($did($dname,15).state = 1) && ($did($dname,19).text) { writeini npass.ini $did($dname,6).text $+ $did($dname,4).text guest $did($dname,19).text }
    if ($did($dname,15).state = 0) && ($readini(npass.ini,$did($dname,6).text $+ $did($dname,4).text,guest)) { remini npass.ini $did($dname,6).text $+ $did($dname,4).text guest }
  }  
  np.relo
}
on *:dialog:ninput:close:*: {
  if ($len($did($dname,1).text) >= 1) && ($len($did($dname,11).text) >= 1) { writeini npass.ini input $did($dname,1).text $did($dname,11).text }
  if ($len($did($dname,2).text) >= 1) && ($len($did($dname,12).text) >= 1) { writeini npass.ini input $did($dname,2).text $did($dname,12).text }
  if ($len($did($dname,3).text) >= 1) && ($len($did($dname,13).text) >= 1) { writeini npass.ini input $did($dname,3).text $did($dname,13).text }
  if ($len($did($dname,4).text) >= 1) && ($len($did($dname,14).text) >= 1) { writeini npass.ini input $did($dname,4).text $did($dname,14).text }
  if ($len($did($dname,5).text) >= 1) && ($len($did($dname,15).text) >= 1) { writeini npass.ini input $did($dname,5).text $did($dname,15).text }
  if ($len($did($dname,6).text) >= 1) && ($len($did($dname,16).text) >= 1) { writeini npass.ini input $did($dname,6).text $did($dname,16).text }
  if ($len($did($dname,7).text) >= 1) && ($len($did($dname,17).text) >= 1) { writeini npass.ini input $did($dname,7).text $did($dname,17).text }
  if ($len($did($dname,8).text) >= 1) && ($len($did($dname,18).text) >= 1) { writeini npass.ini input $did($dname,8).text $did($dname,18).text }
}
on *:load: {
  writeini npass.ini config lang 1
  writeini npass.ini config svc /nickserv
  writeini npass.ini input . $+ $left($me,1) $me
}
on *:connect: {
  if ($readini(npass.ini,$me $+ $network,pass)) { 
    if ($readini(npass.ini,$me $+ $network,umode)) && ($readini(npass.ini,$me $+ $network,kill)) { $readini(npass.ini,config,svc) identify $readini(npass.ini,$me $+ $network,pass) | .timer 1 7 /mode $me $readini(npass.ini,$me $+ $network,umode) | .timer 1 8 ns set kill on | halt }
    if ($readini(npass.ini,$me $+ $network,umode)) && (!$readini(npass.ini,$me $+ $network,kill)) { $readini(npass.ini,config,svc) identify $readini(npass.ini,$me $+ $network,pass) | .timer 1 7 /mode $me $readini(npass.ini,$me $+ $network,umode)  | halt }
    if (!$readini(npass.ini,$me $+ $network,umode)) && ($readini(npass.ini,$me $+ $network,kill)) { $readini(npass.ini,config,svc) identify $readini(npass.ini,$me $+ $network,pass) | .timer 1 8 ns set kill on | halt }
    if (!$readini(npass.ini,$me $+ $network,umode)) && (!$readini(npass.ini,$me $+ $network,kill)) { $readini(npass.ini,config,svc) identify $readini(npass.ini,$me $+ $network,pass)  }
  }
}
on *:nick: {
  if ($nick == $me) {
    if ($scon(0) = 1) { 
      if ($readini(npass.ini,$nick $+ $network,guest) !isincs $newnick) && ($readini(npass.ini,$newnick $+ $network,pass)) {  set -u5 %np.read ok  }
      if ($readini(npass.ini,$nick $+ $network,guest) isincs $newnick) && ($readini(npass.ini,$nick $+ $network,pass)) { .timer 1 2 nick $nick |  set -u6 %np.read ok  }
      if ($ini(npass.ini,$nick $+ $network)) { writeini npass.ini $nick $+ $network lastu $date $time(HH:nn:ss) }
    }
    if ($scon(0) > 1) { 
      if ($readini(npass.ini,$nick $+ $scid($cid).$network,guest) !isincs $newnick) && ($readini(npass.ini,$newnick $+ $scid($cid).$network,pass)) {  set -u5 %np.read ok   }
      if ($readini(npass.ini,$nick $+ $scid($cid).$network,guest) isincs $newnick) && ($readini(npass.ini,$nick $+ $scid($cid).$network,pass)) { .timer 1 2 /nick $nick |  set -u5 %np.read ok  }
      if ($ini(npass.ini,$nick $+ $scid($cid).$network)) { writeini npass.ini $nick $+ $scid($cid).$network lastu $date $time(HH:nn:ss) }
    }
  }
}
raw 433:*: {
  if ($readini(npass.ini,$2 $+ $scid($cid).$network,ghost)) { $readini(npass.ini,config,svc) ghost $2 $readini(npass.ini,$2 $+ $scid($cid).$network,pass) | .timer 1 4 nick $2  }
}
raw 438:*: { 
  if ($readini(npass.ini,$2 $+ $scid($cid).$network,pass)) { .timer 1 $calc($np.fnum($1-) + 2) nick $2 | .timer 1 $calc($np.fnum($1-) + 8)  set -u6 %np.read ok }
}
on *:notice:*:*: {
  if ($nick = NickServ) {     
    if (*msg*nickserv*identify* iswm $1-) { $readini(npass.ini,config,svc) identify $readini(npass.ini,$me $+ $scid($cid).$network,pass) }
  }
}
on *:join:#: {
  if ($nick = $me) && ($readini(npass.ini,$me $+ $network,sgreet)) { .timer 1 2 describe $chan $np.transc2($eval($readini(npass.ini,$me $+ $network,sgreet),3)) }
}
on *:input:*: {
  if ($readini(npass.ini,input,$1)) && (!$2) { /nick $readini(npass.ini,input,$1)  }
}
alias -l npassadd { dialog -m nickpass2 nickpass2 }
alias -l np.relo {  if ($dialog(nickpass)) { dialog -x nickpass |  dialog -m nickpass nickpass } }
alias -l npass { dialog -m nickpass nickpass }
alias -l np.identify {  if ($readini(npass.ini,$me $+ $network,pass)) { $readini(npass.ini,config,svc) identify $v1 } }
alias -l np.lang { return $readini(npass.ini,config,lang) }
alias -l np.transc1 { return $replace($1-,,¢¬,,¢b¬,,¢u¬,,¢r¬) }
alias -l np.transc2 { return $replace($1-,¢¬,,¢b¬,,¢u¬,,¢r¬,) }
alias -l np.allnet { return $readini(npass.ini,networks,all) }
alias -l np.fnum {
  var %a =  $1-, %b = $len($1-), %c = 1
  while (%c <= %b) {
    if ($mid(%a,%c,1) isnum) { var %d = %d $+ $ifmatch } 
    inc %c
  }
  return %d
}
alias -l  np.adnpass1 {
  /dialog -m adnpass adnpass
  if ($np.lang = 1) { did -ra adnpass 3 Enter a password to Addon }
  if ($np.lang = 2) { did -ra adnpass 3 didgite uma senha p/ o addon }
  if ($np.lang = 3) { did -ra adnpass 3 agrega una contraseña para el addon }
  set %np.adnps1 ok
}
alias -l  np.adnpass2 {
  /dialog -m adnpass adnpass
  if ($np.lang = 1) { did -ra adnpass 3 Enter your pass }
  if ($np.lang = 2) { did -ra adnpass 3 didgite sua senha }
  if ($np.lang = 3) { did -ra adnpass 3 entra con tu contraseña }
  set %np.adnps2 ok
}
alias -l  np.adnpass3 {
  if ($readini(npass.ini,config,adnpass)) { np.adnpass2 }
  else { npass }
}
alias -l  np.genpass {
  var %a = 8
  while (%a != 0) {
    var %b = $rand(a,z)
    var %c = $rand(1,9)
    var %d = $rand(1,2)
    var %e = $iif(%d = 1,%b,%c) $+ %e
    dec %a
  }
  did -ra nickpass2 25 %e
}
alias -l misturecs {
  var %trrr = $lower($1)
  var %trr = $len($1)
  var %trr1 = 1
  while (%trr1 <= %trr) {
    var %trr2 = %trr2 $+ $mid(%trrr,%trr1,1) $+ .
    inc %trr1
  } 
  var %tra = %trr2
  var %tr = $numtok(%trr2,46)
  var %tr1 = 1
  var %tr2 = %tr
  while (%tr1 <= %tr) {
    var %tr3 = $rand(1,%tr2)
    var %trr12 = $remove(%tra,.)
    var %tr4 = %tr4 $+ $mid(%trr12,%tr3,1) 
    var %tra = $deltok(%tra,%tr3,46)
    dec %tr2
    inc %tr1
  }
  return %tr4
}
menu menubar,status,channel {  
  Nick-Pass :np.adnpass3 
}
;#### The End :)~ #####(520).lines

Comments

Sign in to comment.
Automotive   -  Jul 08, 2009

Dunno why but i hate your scripts :\ too much complicated

You make me laugh ScorpionRAP

 Respond  
ScorpionRAP   -  Jul 07, 2009

Dunno why but i hate your scripts :\ too much complicated

 Respond  
rhasttaff   -  Oct 14, 2008

Thanks ppl by the incentive ;)
i was working a little more in this and added others features. enjoy!

Jah Bless´´´

 Respond  
sowpan   -  Oct 11, 2008

I like this its really excelent for me...

:)

A.F.M.Shamsuddin

 Respond  
Viper01   -  Oct 11, 2008

/me /ghosts rhasttaff

:P

Nicely done man

 Respond  
rhasttaff   -  Sep 19, 2008

DiGiTaL Thanks by the incentive man!! ;)

Jah Bless´´´

 Respond  
DiGiTaL   -  Sep 18, 2008

:-) Great script though. Im recommending it.

 Respond  
rhasttaff   -  Sep 16, 2008

hey ppl!! i have done a few updates rightnow!
if you have Already copyed this code. please Take it again.
and Thanks DiGiTaL for comment and suggest. i was thinking to do this but i dontknow others models of services (only nickserv and authserv).
im usin /ns is same as /msg nickserv or /nickserv.
if anyone want help with this please post here your model. :)

Thanks Again!!

Jah Bless´´´

 Respond  
DiGiTaL   -  Sep 16, 2008

It should have a text field where users can enter how to identify ie a little text box that has /msg nickserv identify %pass so people can customize to fit their server needs.

 Respond  
Eugenio   -  Sep 16, 2008

ROFL crist, its a bloody good code and it probably works too, but like EL I cant use it on 99% of the newtworks I go on.
/me cries
Jah Bless´´

 Respond  
EL   -  Sep 16, 2008

Why use yours if i can make my own?.I cannot use yours its not that i dont want to its cause i cant and i have no need for a code such as this one ATM so i wont code what i dont need 99% of the time.Just the way i am.But i am sure lost of ppl will like this on your style networks.`-.-´

 Respond  
rhasttaff   -  Sep 16, 2008

np brother. I hate networks without nickserv if this is your case.
and also why use my if you can make your own"`-.-´ ".
but still I thank the comment and I tried to put the abbreviated words and that [Scramb] was not good.

Thanks again!!

edit: EL Please dont take this Bad. just kidding man ;)

Jah Bless´´´

 Respond  
EL   -  Sep 16, 2008

I cant test this but it looks ok;p.Mite need to fix that ''scramb'' button tho its a bit to small for the words.`-.-´

 Respond  
rhasttaff   -  Sep 16, 2008

ok brothers its not hard! ;)

Jah Bless´´´

 Respond  
Hawkee   -  Sep 15, 2008

Without a screenshot it won't be noticed by as many people. They definitely help snippets stand out.

 Respond  
rhasttaff   -  Sep 15, 2008

UPSS sorry i've missed on load event is not much important but is added now!

 Respond  
rhasttaff   -  Sep 15, 2008

hey man !! i think this is very simple and ugly to do a screenshot dont need eat this space in Hawkee.
and if you try it you dont need a screenshot.
and it also helps people to not judge before testing

anyway Thanks!

Jah Bless´´´

 Respond  
EL   -  Sep 15, 2008

Screen shot?.`-.-´

 Respond  
Are you sure you want to unfollow this person?
Are you sure you want to delete this?
Click "Unsubscribe" to stop receiving notices pertaining to this post.
Click "Subscribe" to resume notices pertaining to this post.