begin process at 2010 03 19 20:18:10
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

AddOns

 > WORLDDMT - DETECTEUR DE PSEUDOS ET DE CLONES + AFFICHEUR DE STATUS PSEUDOS V 1.0

WORLDDMT - DETECTEUR DE PSEUDOS ET DE CLONES + AFFICHEUR DE STATUS PSEUDOS V 1.0


 Information sur la source

Note :
Aucune note
Catégorie :AddOns Classé sous :WorldDMT, Host, addon, clones, status Niveau :Initié Date de création :21/02/2009 Date de mise à jour :24/02/2009 09:29:10 Vu / téléchargé :1 784 / 68

Auteur : WorldDMT

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (8)
Ajouter un commentaire et/ou une note


 Description

Cliquez pour voir la capture en taille normale
Salut,

Je pense que c'est le premier code avec la DLL dcx.dll posté sur le site

C'est un détecteur de pseudos changé et de clones avec afficheur de status pseudos dans une liste dialog ou par affichage dans la fenêtre active

Comme vous le voyez sur l'aperçu à coté, cet adon a plusieurs options

le double clic sur le pseudo, status en ligne, sera un chat en PV

Est compatible pour les versions mIRC 6.32 +

Pour le codage, je vous laisse donner vos avis et idées

bon au niveau de la ligne 240 se positionne bien juste quand le status est maximized j'ai pas eu une autre idée

Source

  • ;____________________menu________________________
  • menu status,nicklist,menubar {
  • -
  • WordlDMT Host et clones V1.0
  • .$iif($status != connected,$style(2)) $iif($status != connected,Connectez vous d'abord,Configurer):run.WC
  • .$iif(($menu == nicklist) && (!$read($qt($scriptdirdata/pseudos.wc),w,$1)) && (%wlen.wc <= 3500),Ajouter le pseudo a la liste):add.WC $$1
  • .Désinstaller:des.WC
  • -
  • }
  • ;_____________________Aliaces____________________
  • alias run.WC dialog $iif($dialog(whost),-v,-m whost) whost
  • alias add.WC {
  • write $qt($scriptdirdata/pseudos.wc) $1
  • watch + $+ $1
  • set %wlen.wc $calc(%wlen.wc + $len($1))
  • if ($dialog(whost)) {
  • var %l $lines($qt($scriptdirdata/pseudos.wc))
  • xdid -rA whost 17 0 +f 1 %l $scriptdirdata/pseudos.wc
  • }
  • }
  • alias des.WC {
  • var %s $input(Attention!! Cette action désinstalle l’addon $crlf $+ Voulez-vous désinstaller cet addon?,iy,WorldDMT - Host & Clones)
  • if (%s) .unload -rs $qt($scriptdirwhostclones.data) $input(Désinstallation de l'Addon terminé avec succes. $crlf $+ Merci d'avoir utilisé Worlddmt Host & Clones,oik7,WorldDMT - Host & Clones)
  • }
  • alias start.watch.wc {
  • if ($hget(Hors_ligne)) hdel -w $ifmatch *
  • if ($hget(En_ligne)) hdel -w $ifmatch *
  • var %x $qt($scriptdirdata/pseudos.wc)
  • watch C $regsubex($str(x,$lines(%x)),/x/g,$+($chr(43),$read(%x,\n),$chr(32)))
  • }
  • alias -l aperçu.echo {
  • echo @waper $+($chr(3),%couleur.WC.6,$chr(44),%couleur.WC.5) - le host du pseudo $+($chr(3),%couleur.WC.7,<pseudo1>,$chr(3),%couleur.WC.6) a été déjà vu avec le pseudo $+($chr(3),%couleur.WC.7,<pseudo2>)
  • echo @waper $+($chr(3),%couleur.WC.6,$chr(44),%couleur.WC.5) - clones $+($chr(3),%couleur.WC.8,$chr(91) $+($chr(3),%couleur.WC.7,<pseudo1> <pseudo2> <pseudoN>,$chr(3),%couleur.WC.8) $chr(93))
  • echo @waper $+($chr(3),%couleur.WC.6,$chr(44),%couleur.WC.5) - le pseudo $+($chr(3),%couleur.WC.7,<pseudo1>,$chr(3),%couleur.WC.6) vien de se connecter
  • }
  • alias -l Status.data.wc {
  • var %i $hget(en_ligne,0).item
  • xdid -ra Status.wc 1 0 0 +cb 0 1 0 0 $rgb(102,102,153) 0 $chr(7) En ligne $+($chr(40),%i,$chr(41))
  • while (%i) {
  • xdid -a Status.wc 1 0 0 +c 0 1 0 0 $rgb(0,130,0) 0 $str($chr(160),4) $hget(en_ligne,%i).item
  • dec %i
  • }
  • var %i $hget(hors_ligne,0).item
  • xdid -a Status.wc 1 0 0 +cb 0 1 0 0 $rgb(102,102,153) 0 $chr(7) Hors ligne $+($chr(40),%i,$chr(41))
  • while (%i) {
  • xdid -a Status.wc 1 0 0 +c 0 1 0 0 $rgb(100,100,100) 0 $str($chr(160),4) $hget(hors_ligne,%i).item
  • dec %i
  • }
  • }
  • alias wstat.wc {
  • if ($2 == dclick) {
  • if ($status != connected) {
  • dialog -x $1
  • if ($dialog(whost)) dialog -x $ifmatch
  • return $input(Vous devez être connecté à un serveur avant d'ouvrir l'addon.,ow,WorldDMT - Host & Clones)
  • }
  • var %sel.wc $xdid($1,1).sel,%sel.on.wc $calc($left($gettok($xdid($1,1,1).text,2,40),-1) + 2)
  • if ((!$istok(1.%sel.on.wc,%sel.wc,46)) && (%sel.on.wc > %sel.wc)) query $remove($xdid($1,1,$3).seltext,$chr(160))
  • }
  • }
  • alias event.wc {
  • if ($2 == sclick) {
  • if ($status != connected) {
  • dialog -x $1
  • if ($dialog(Status.wc)) dialog -x $ifmatch
  • return $input(Vous devez être connecté à un serveur avant d'ouvrir l'addon.,ow,WorldDMT - Host & Clones)
  • }
  • if ($istok(5.6.7.8,$3,46)) { set %couleur.WC. $+ $3 $calc($4 - 1) | clear @waper | aperçu.echo }
  • elseif ($istok(10.11.12.13,$3,46)) set %wstatus.wc. $+ $3 $xdid($1,$3).state
  • elseif ($istok(15.16,$3,46)) { set %wstatus.wc.15 $iif($3 == 15,1,0) | set %wstatus.wc.16 $iif($3 == 16,1,0) }
  • elseif ($3 == 20) {
  • var %x $input(veuillez entrer un pseudo,e,WorldDMT - Host & Clones),%y $iif(($chr(32) !isin $eval(%x,2)) && !$read($qt($scriptdirdata/pseudos.wc),w,$eval(%x,2)*) && (%wlen.wc <= 3500),$eval(%x,2)),%w $iif($eval(%x,2) == $null,N)
  • if (%y) {
  • xdid -a $1 17 0 %y
  • savebuf -o $1 17 $qt($scriptdirdata/pseudos.wc)
  • set %wlen.wc $calc(%wlen.wc + $len(%y))
  • watch + $+ %y
  • }
  • elseif (%w) return
  • else var %z $input(vous ne pouvez pas ajouter le pseudo %x $crlf $+ $iif($read($qt($scriptdirdata/pseudos.wc),w,$eval(%x,2)*),ce pseudo existe déjà dans la liste,$iif($chr(32) isin $eval(%x,2),ce pseudo est non valide,la liste de pseudos est pleine)),io,WorldDMT - Host & Clones)
  • }
  • elseif ($3 == 21) && ($xdid($1,17,0).sel) {
  • var %i $xdid($1,17,0).sel,%z
  • while (%i) {
  • var %x $read($qt($scriptdirdata/pseudos.wc),$xdid($1,17,$eval(%i,2)).sel)
  • watch - $+ %x
  • hdel En_ligne %x
  • hdel Hors_ligne %x
  • xdid -d $1 17 $xdid($1,17,%i).sel
  • %z = $calc(%z + $len(%x))
  • dec %i
  • }
  • set %wlen.wc $calc(%wlen.wc - %z)
  • savebuf -o $1 17 $qt($scriptdirdata/pseudos.wc)
  • if ($dialog(Status.wc)) Status.data.wc
  • }
  • elseif ($3 == 22) dialog $iif($dialog(Status.wc),-v,-m Status.wc) Status.wc
  • }
  • elseif ($2 == close) window -c @waper
  • }
  • ;________________________________Dialog________________________________
  • dialog whost {
  • title WorldDMT - Host & Clones
  • size -1 -1 554 410
  • option pixels
  • text Couleur fond, 1, 231 143 90 17
  • text Couleur phrase, 2, 15 143 90 17
  • text Couleur pseudo, 3, 15 168 90 17
  • text Couleur accolades, 4, 231 168 90 17
  • box , 9, 5 190 430 145
  • box , 18, 5 125 430 68
  • text Affichage info connexion de pseudo, 14, 15 275 210 17
  • box , 23, 438 125 112 210
  • text Aperçu:, 24, 10 337 100 17
  • icon 26, 0 0 554 119, pic/host&clones.jpg, 0 noborder
  • }
  • dialog Status.wc {
  • title WorldDMT - Status Pseudos
  • size -1 -1 308 400
  • icon 2, 5 5 298 72, pic/status.pic.jpg, 0 noborder
  • }
  • ;___________________________Events____________________________________
  • on *:dialog:whost:*:*:{
  • if ($devent == init) {
  • dcx Mark $dname event.wc
  • xdialog -g $dname +b $rgb(240,240,240)
  • xdialog -c $dname 5 colorcombo 326 139 100 70
  • xdialog -c $dname 6 colorcombo 110 139 100 70
  • xdialog -c $dname 7 colorcombo 110 164 100 70
  • xdialog -c $dname 8 colorcombo 326 164 100 70
  • xdialog -c $dname 10 check 15 210 210 13
  • xdialog -c $dname 11 check 15 224 210 13
  • xdialog -c $dname 12 check 15 238 210 13
  • xdialog -c $dname 13 check 15 252 210 13
  • xdialog -c $dname 15 radio 30 295 210 15
  • xdialog -c $dname 16 radio 30 310 210 15
  • xdialog -c $dname 20 button 450 135 85 61 bitmap
  • xdialog -c $dname 21 button 450 199 85 61 bitmap
  • xdialog -c $dname 22 button 450 263 85 61 bitmap
  • xdialog -c $dname 17 list 246 208 180 120 extsel vsbar
  • window -Bw0 @waper
  • xdialog -c $dname 25 window -3 354 575 50 @waper
  • aperçu.echo
  • xdid -k $dname 20 +nsd 0 $scriptdirpic/ajouter.wc.jpg
  • xdid -k $dname 21 +nsd 0 $scriptdirpic/sup.wc.jpg
  • xdid -k $dname 22 +nsd 0 $scriptdirpic/status.wc.jpg
  • xdid -k $dname 20 +h 0 $scriptdirpic/ajouter.wc.x.jpg
  • xdid -k $dname 21 +h 0 $scriptdirpic/sup.wc.x.jpg
  • xdid -k $dname 22 +h 0 $scriptdirpic/status.wc.x.jpg
  • xdid -t $dname 15 Afficher en info bulle
  • xdid -t $dname 16 Afficher dans la fenetre active du mIRC
  • xdid -t $dname 10 Activer detecteur host et Clones
  • xdid -t $dname 11 Activer Status Connecxion de pseudos
  • xdid -t $dname 12 Activer son detecteur host et clones
  • xdid -t $dname 13 Activer son connecxion pseudo
  • var %i,%l
  • %l = $lines($scriptdirdata/couleur.wc)
  • %i = 1
  • while (%i <= %l) { xdid -a $dname 5,6,7,8 %i $read($scriptdirdata/couleur.wc,%i) | inc %i }
  • %i = 5
  • while (%i <= 8) { xdid -c $dname %i $calc($eval($+(%,couleur.wc.,%i),2) + 1) | inc %i }
  • %l = $lines($qt($scriptdirdata/pseudos.wc))
  • xdid -A $dname 17 0 +f 1 %l $scriptdirdata/pseudos.wc
  • xdid -C $dname 17 +bk $rgb(240,240,240)
  • xdid -x $dname 17 +w
  • %i = 10
  • while (%i <= 16) { if ($eval($+(%,wstatus.wc.,%i),2)) xdid -c $dname %i | inc %i }
  • }
  • }
  • on *:dialog:Status.wc:*:*: {
  • if ($devent == init) {
  • dcx Mark $dname wstat.wc
  • xdialog -c $dname 1 listview 5 77 298 318 report noheader
  • xdid -t $dname 1 +c 0 275 x
  • xdid -x $dname 1 +w
  • Status.data.wc
  • }
  • }
  • on *:load:{
  • if ($version < 6.32) .unload -rs $qt($scriptdirwhostclones.data) $input(L'installation de l'addon a été annulée. $crlf $+ veuillez utiliser la version 6.32 ou plus. Merci,oi,WorldDMT - Host & Clones)
  • set %couleur.WC.5 0
  • set %couleur.WC.6 7
  • set %couleur.WC.7 14
  • set %couleur.WC.8 4
  • set %wstatus.wc.15 1
  • set %wlen.wc 1
  • write -c $qt($scriptdirdata/pseudos.wc)
  • .load -rs $qt($scriptdirwhostclones.dcx.dll.wc)
  • var %s $input(WorldDMT - Host & Clones a été bien installé. $crlf $+ voulez vous ouvrir l'addon?,iy,WorldDMT - Host & Clones)
  • if (%s) {
  • if ($status != connected) return $input(Vous devez être connecté à un serveur avant d'ouvrir l'addon.,ow,WorldDMT - Host & Clones)
  • run.wc
  • }
  • }
  • on *:unload:{
  • if ($dialog(whost)) dialog -x whost
  • .unset %couleur.wc.* %wstatus.wc.* %wlen.wc
  • if ($hget(en_ligne)) hfree $ifmatch
  • if ($hget(hors_ligne)) hfree $ifmatch
  • if ($hget(hostnick)) hfree $ifmatch
  • .unload -rs $qt($scriptdirwhostclones.dcx.dll.wc)
  • }
  • on *:join:#: {
  • if ($nick == $me) who #
  • else {
  • if (%wstatus.wc.10) {
  • var %n $hget(hostnick,$wildsite)
  • if ((%n) && (%n != $nick)) {
  • echo # $+($chr(3),%couleur.WC.6,$chr(44),%couleur.WC.5) - le host du pseudo $+($chr(3),%couleur.WC.7,$nick,$chr(3),%couleur.WC.6) a été déjà vu avec le pseudo $+($chr(3),%couleur.WC.7,%n)
  • if (%wstatus.wc.12) splay $qt($scriptdirmsc/bip.wav)
  • }
  • else hadd -m hostnick $wildsite $nick
  • if ($ialchan($wildsite,#,0) > 1) {
  • echo # $+($chr(3),%couleur.WC.6,$chr(44),%couleur.WC.5) - clones $+($chr(3),%couleur.WC.8,$chr(91) $regsubex($str(x,$ifmatch),/x/g,$+($chr(3),%couleur.WC.7,$ialchan($wildsite,#,\n).nick,$chr(3),%couleur.WC.8,$chr(32))),$chr(93))
  • if (%wstatus.wc.12) splay $qt($scriptdirmsc/bip.wav)
  • }
  • }
  • }
  • }
  • on *:connect:.timerdép 1 5 start.watch.wc
  • on *:start:{ hmake En_ligne | hmake Hors_ligne }
  • ;_______________________________RAW____________________________________
  • raw *:*:{
  • if ($numeric == 600) {
  • hadd -m En_ligne $2 1
  • hdel Hors_ligne $2
  • if ($dialog(Status.wc)) .timerStat 1 1 Status.data.wc
  • if (%wstatus.wc.11) {
  • if (%wstatus.wc.15) {
  • inc %num.log
  • var %w $window(@mIRC).w,%h $iif($window(@log.wc $+ $calc(%num.log - 1)),$calc($window(@mIRC).h - $calc(40 * $calc(%num.log - 1))),$window(@mIRC).h)
  • window -daopk0w0 +d @Log.wc $+ %num.log $calc(%w - 200) $calc(%h - 56) 200 40
  • drawtext -ro @Log.wc $+ %num.log $rgb(0,100,150) 5 5 $2
  • drawtext -r @Log.wc $+ %num.log $rgb(0,100,150) 5 20 vient de se connecter
  • .timer $+ %num.log 1 3 window -c @Log.wc $+ %num.log
  • .timerlog 1 4 unset %num.log
  • }
  • else echo -a $+($chr(3),%couleur.WC.6,$chr(44),%couleur.WC.5) - le pseudo $+($chr(3),%couleur.WC.7,$2,$chr(3),%couleur.WC.6) vien de se connecter
  • if (%wstatus.wc.13) splay $qt($scriptdirmsc/log.wav)
  • }
  • halt
  • }
  • elseif ($numeric == 604) {
  • hadd -m En_ligne $2 1
  • hdel Hors_ligne $2
  • if ($dialog(Status.wc)) .timerStat 1 1 Status.data.wc
  • halt
  • }
  • elseif ($numeric == 601) || ($numeric == 605) {
  • hadd -m Hors_ligne $2 1
  • hdel En_ligne $2
  • if ($dialog(Status.wc)) .timerStat 1 1 Status.data.wc
  • halt
  • }
  • }
;____________________menu________________________

menu status,nicklist,menubar {
  -
  WordlDMT Host et clones V1.0
  .$iif($status != connected,$style(2)) $iif($status != connected,Connectez vous d'abord,Configurer):run.WC
  .$iif(($menu == nicklist) && (!$read($qt($scriptdirdata/pseudos.wc),w,$1)) && (%wlen.wc <= 3500),Ajouter le pseudo a la liste):add.WC $$1
  .Désinstaller:des.WC
  -
}

;_____________________Aliaces____________________

alias run.WC dialog $iif($dialog(whost),-v,-m whost) whost
alias add.WC {
  write $qt($scriptdirdata/pseudos.wc) $1
  watch + $+ $1
  set %wlen.wc $calc(%wlen.wc + $len($1))
  if ($dialog(whost)) {
    var %l $lines($qt($scriptdirdata/pseudos.wc))
    xdid -rA whost 17 0 +f 1 %l $scriptdirdata/pseudos.wc
  }
}
alias des.WC {
  var %s $input(Attention!! Cette action désinstalle l’addon $crlf $+ Voulez-vous désinstaller cet addon?,iy,WorldDMT - Host & Clones)
  if (%s) .unload -rs $qt($scriptdirwhostclones.data) $input(Désinstallation de l'Addon terminé avec succes. $crlf $+ Merci d'avoir utilisé Worlddmt Host & Clones,oik7,WorldDMT - Host & Clones)
}
alias start.watch.wc {
  if ($hget(Hors_ligne)) hdel -w $ifmatch *
  if ($hget(En_ligne)) hdel -w $ifmatch *
  var %x $qt($scriptdirdata/pseudos.wc)
  watch C $regsubex($str(x,$lines(%x)),/x/g,$+($chr(43),$read(%x,\n),$chr(32)))
}
alias -l aperçu.echo {
  echo @waper $+($chr(3),%couleur.WC.6,$chr(44),%couleur.WC.5) - le host du pseudo $+($chr(3),%couleur.WC.7,<pseudo1>,$chr(3),%couleur.WC.6) a été déjà vu avec le pseudo $+($chr(3),%couleur.WC.7,<pseudo2>)
  echo @waper $+($chr(3),%couleur.WC.6,$chr(44),%couleur.WC.5) - clones $+($chr(3),%couleur.WC.8,$chr(91) $+($chr(3),%couleur.WC.7,<pseudo1> <pseudo2> <pseudoN>,$chr(3),%couleur.WC.8) $chr(93))
  echo @waper $+($chr(3),%couleur.WC.6,$chr(44),%couleur.WC.5) - le pseudo $+($chr(3),%couleur.WC.7,<pseudo1>,$chr(3),%couleur.WC.6) vien de se connecter
}
alias -l Status.data.wc {
  var %i $hget(en_ligne,0).item
  xdid -ra Status.wc 1 0 0 +cb 0 1 0 0 $rgb(102,102,153) 0 $chr(7) En ligne $+($chr(40),%i,$chr(41))
  while (%i) {
    xdid -a Status.wc 1 0 0 +c 0 1 0 0 $rgb(0,130,0) 0 $str($chr(160),4) $hget(en_ligne,%i).item
    dec %i
  }
  var %i $hget(hors_ligne,0).item
  xdid -a Status.wc 1 0 0 +cb 0 1 0 0 $rgb(102,102,153) 0 $chr(7) Hors ligne $+($chr(40),%i,$chr(41))
  while (%i) {
    xdid -a Status.wc 1 0 0 +c 0 1 0 0 $rgb(100,100,100) 0 $str($chr(160),4) $hget(hors_ligne,%i).item
    dec %i
  }
}
alias wstat.wc {
  if ($2 == dclick) {
    if ($status != connected) {
      dialog -x $1
      if ($dialog(whost)) dialog -x $ifmatch
      return $input(Vous devez être connecté à un serveur avant d'ouvrir l'addon.,ow,WorldDMT - Host & Clones)
    }
    var %sel.wc $xdid($1,1).sel,%sel.on.wc $calc($left($gettok($xdid($1,1,1).text,2,40),-1) + 2)
    if ((!$istok(1.%sel.on.wc,%sel.wc,46)) && (%sel.on.wc > %sel.wc)) query $remove($xdid($1,1,$3).seltext,$chr(160))
  }
}
alias event.wc {
  if ($2 == sclick) {
    if ($status != connected) {
      dialog -x $1
      if ($dialog(Status.wc)) dialog -x $ifmatch
      return $input(Vous devez être connecté à un serveur avant d'ouvrir l'addon.,ow,WorldDMT - Host & Clones)
    }
    if ($istok(5.6.7.8,$3,46)) { set %couleur.WC. $+ $3 $calc($4 - 1) | clear @waper | aperçu.echo }
    elseif ($istok(10.11.12.13,$3,46)) set %wstatus.wc. $+ $3 $xdid($1,$3).state
    elseif ($istok(15.16,$3,46)) { set %wstatus.wc.15 $iif($3 == 15,1,0) | set %wstatus.wc.16 $iif($3 == 16,1,0) }
    elseif ($3 == 20) {
      var %x $input(veuillez entrer un pseudo,e,WorldDMT - Host & Clones),%y $iif(($chr(32) !isin $eval(%x,2)) && !$read($qt($scriptdirdata/pseudos.wc),w,$eval(%x,2)*) && (%wlen.wc <= 3500),$eval(%x,2)),%w $iif($eval(%x,2) == $null,N)
      if (%y) {
        xdid -a $1 17 0 %y
        savebuf -o $1 17 $qt($scriptdirdata/pseudos.wc)
        set %wlen.wc $calc(%wlen.wc + $len(%y))
        watch + $+ %y
      }
      elseif (%w) return
      else var %z $input(vous ne pouvez pas ajouter le pseudo %x $crlf $+ $iif($read($qt($scriptdirdata/pseudos.wc),w,$eval(%x,2)*),ce pseudo existe déjà dans la liste,$iif($chr(32) isin $eval(%x,2),ce pseudo est non valide,la liste de pseudos est pleine)),io,WorldDMT - Host & Clones)
    }
    elseif ($3 == 21) && ($xdid($1,17,0).sel) {
      var %i $xdid($1,17,0).sel,%z
      while (%i) {
        var %x $read($qt($scriptdirdata/pseudos.wc),$xdid($1,17,$eval(%i,2)).sel)
        watch - $+ %x
        hdel En_ligne %x
        hdel Hors_ligne %x
        xdid -d $1 17 $xdid($1,17,%i).sel
        %z = $calc(%z + $len(%x))
        dec %i
      }
      set %wlen.wc $calc(%wlen.wc - %z)
      savebuf -o $1 17 $qt($scriptdirdata/pseudos.wc)
      if ($dialog(Status.wc)) Status.data.wc
    }
    elseif ($3 == 22) dialog $iif($dialog(Status.wc),-v,-m Status.wc) Status.wc
  }
  elseif ($2 == close) window -c @waper
}

;________________________________Dialog________________________________

dialog whost {
  title WorldDMT - Host & Clones
  size -1 -1 554 410
  option pixels
  text Couleur fond, 1, 231 143 90 17
  text Couleur phrase, 2, 15 143 90 17
  text Couleur pseudo, 3, 15 168 90 17
  text Couleur accolades, 4, 231 168 90 17
  box , 9, 5 190 430 145
  box , 18, 5 125 430 68
  text Affichage info connexion de pseudo, 14, 15 275 210 17
  box , 23, 438 125 112 210
  text Aperçu:, 24, 10 337 100 17
  icon 26, 0 0 554 119, pic/host&clones.jpg, 0 noborder
}
dialog Status.wc {
  title WorldDMT - Status Pseudos
  size -1 -1 308 400
  icon 2, 5 5 298 72, pic/status.pic.jpg, 0 noborder
}

;___________________________Events____________________________________

on *:dialog:whost:*:*:{
  if ($devent == init) {
    dcx Mark $dname event.wc
    xdialog -g $dname +b $rgb(240,240,240)
    xdialog -c $dname 5 colorcombo 326 139 100 70
    xdialog -c $dname 6 colorcombo 110 139 100 70
    xdialog -c $dname 7 colorcombo 110 164 100 70
    xdialog -c $dname 8 colorcombo 326 164 100 70
    xdialog -c $dname 10 check 15 210 210 13
    xdialog -c $dname 11 check 15 224 210 13
    xdialog -c $dname 12 check 15 238 210 13
    xdialog -c $dname 13 check 15 252 210 13
    xdialog -c $dname 15 radio 30 295 210 15
    xdialog -c $dname 16 radio 30 310 210 15
    xdialog -c $dname 20 button 450 135 85 61 bitmap
    xdialog -c $dname 21 button 450 199 85 61 bitmap
    xdialog -c $dname 22 button 450 263 85 61 bitmap
    xdialog -c $dname 17 list 246 208 180 120 extsel vsbar
    window -Bw0 @waper
    xdialog -c $dname 25 window -3 354 575 50 @waper
    aperçu.echo
    xdid -k $dname 20 +nsd 0 $scriptdirpic/ajouter.wc.jpg
    xdid -k $dname 21 +nsd 0 $scriptdirpic/sup.wc.jpg
    xdid -k $dname 22 +nsd 0 $scriptdirpic/status.wc.jpg
    xdid -k $dname 20 +h 0 $scriptdirpic/ajouter.wc.x.jpg
    xdid -k $dname 21 +h 0 $scriptdirpic/sup.wc.x.jpg
    xdid -k $dname 22 +h 0 $scriptdirpic/status.wc.x.jpg
    xdid -t $dname 15 Afficher en info bulle
    xdid -t $dname 16 Afficher dans la fenetre active du mIRC
    xdid -t $dname 10 Activer detecteur host et Clones
    xdid -t $dname 11 Activer Status Connecxion de pseudos
    xdid -t $dname 12 Activer son detecteur host et clones
    xdid -t $dname 13 Activer son connecxion pseudo
    var %i,%l
    %l = $lines($scriptdirdata/couleur.wc)
    %i = 1
    while (%i <= %l) { xdid -a $dname 5,6,7,8 %i $read($scriptdirdata/couleur.wc,%i) | inc %i }
    %i = 5
    while (%i <= 8) { xdid -c $dname %i $calc($eval($+(%,couleur.wc.,%i),2) + 1) | inc %i }
    %l = $lines($qt($scriptdirdata/pseudos.wc))
    xdid -A $dname 17 0 +f 1 %l $scriptdirdata/pseudos.wc
    xdid -C $dname 17 +bk $rgb(240,240,240)
    xdid -x $dname 17 +w
    %i = 10
    while (%i <= 16) { if ($eval($+(%,wstatus.wc.,%i),2)) xdid -c $dname %i | inc %i }
  }
}
on *:dialog:Status.wc:*:*: {
  if ($devent == init) {
    dcx Mark $dname wstat.wc
    xdialog -c $dname 1 listview 5 77 298 318 report noheader
    xdid -t $dname 1 +c 0 275 x
    xdid -x $dname 1 +w
    Status.data.wc
  }
}
on *:load:{
  if ($version < 6.32) .unload -rs $qt($scriptdirwhostclones.data) $input(L'installation de l'addon a été annulée. $crlf $+ veuillez utiliser la version 6.32 ou plus. Merci,oi,WorldDMT - Host & Clones)
  set %couleur.WC.5 0
  set %couleur.WC.6 7
  set %couleur.WC.7 14
  set %couleur.WC.8 4
  set %wstatus.wc.15 1
  set %wlen.wc 1
  write -c $qt($scriptdirdata/pseudos.wc)
  .load -rs $qt($scriptdirwhostclones.dcx.dll.wc)
  var %s $input(WorldDMT - Host & Clones a été bien installé. $crlf $+ voulez vous ouvrir l'addon?,iy,WorldDMT - Host & Clones)
  if (%s) {
    if ($status != connected) return $input(Vous devez être connecté à un serveur avant d'ouvrir l'addon.,ow,WorldDMT - Host & Clones)
    run.wc
  }
}
on *:unload:{
  if ($dialog(whost)) dialog -x whost
  .unset %couleur.wc.* %wstatus.wc.* %wlen.wc
  if ($hget(en_ligne)) hfree $ifmatch
  if ($hget(hors_ligne)) hfree $ifmatch
  if ($hget(hostnick)) hfree $ifmatch
  .unload -rs $qt($scriptdirwhostclones.dcx.dll.wc)
}
on *:join:#: {
  if ($nick == $me) who #
  else {
    if (%wstatus.wc.10) {
      var %n $hget(hostnick,$wildsite)
      if ((%n) && (%n != $nick)) {
        echo # $+($chr(3),%couleur.WC.6,$chr(44),%couleur.WC.5) - le host du pseudo $+($chr(3),%couleur.WC.7,$nick,$chr(3),%couleur.WC.6) a été déjà vu avec le pseudo $+($chr(3),%couleur.WC.7,%n)
        if (%wstatus.wc.12) splay $qt($scriptdirmsc/bip.wav)
      }
      else hadd -m hostnick $wildsite $nick
      if ($ialchan($wildsite,#,0) > 1) {
        echo # $+($chr(3),%couleur.WC.6,$chr(44),%couleur.WC.5) - clones $+($chr(3),%couleur.WC.8,$chr(91) $regsubex($str(x,$ifmatch),/x/g,$+($chr(3),%couleur.WC.7,$ialchan($wildsite,#,\n).nick,$chr(3),%couleur.WC.8,$chr(32))),$chr(93))
        if (%wstatus.wc.12) splay $qt($scriptdirmsc/bip.wav)
      }
    }
  }
}
on *:connect:.timerdép 1 5 start.watch.wc
on *:start:{ hmake En_ligne | hmake Hors_ligne }

;_______________________________RAW____________________________________

raw *:*:{
  if ($numeric == 600) {
    hadd -m En_ligne $2 1
    hdel Hors_ligne $2
    if ($dialog(Status.wc)) .timerStat 1 1 Status.data.wc
    if (%wstatus.wc.11) {
      if (%wstatus.wc.15) {
        inc %num.log
        var %w $window(@mIRC).w,%h $iif($window(@log.wc $+ $calc(%num.log - 1)),$calc($window(@mIRC).h - $calc(40 * $calc(%num.log - 1))),$window(@mIRC).h)
        window -daopk0w0 +d @Log.wc $+ %num.log $calc(%w - 200) $calc(%h - 56) 200 40
        drawtext -ro @Log.wc $+ %num.log $rgb(0,100,150) 5 5 $2
        drawtext -r @Log.wc $+ %num.log $rgb(0,100,150) 5 20 vient de se connecter
        .timer $+ %num.log 1 3 window -c @Log.wc $+ %num.log
        .timerlog 1 4 unset %num.log
      }
      else echo -a $+($chr(3),%couleur.WC.6,$chr(44),%couleur.WC.5) - le pseudo $+($chr(3),%couleur.WC.7,$2,$chr(3),%couleur.WC.6) vien de se connecter
      if (%wstatus.wc.13) splay $qt($scriptdirmsc/log.wav)
    }
    halt
  }
  elseif ($numeric == 604) {
    hadd -m En_ligne $2 1
    hdel Hors_ligne $2
    if ($dialog(Status.wc)) .timerStat 1 1 Status.data.wc
    halt
  }
  elseif ($numeric == 601) || ($numeric == 605) {
    hadd -m Hors_ligne $2 1
    hdel En_ligne $2
    if ($dialog(Status.wc)) .timerStat 1 1 Status.data.wc
    halt
  }
}

 Conclusion

Téléchargez le zip mettez le dossier là ou vous voulez, ensuite loadez le fichier whostclones.data qui se trouve dans le dossier WorldDMT-Host&Clones


Si vous voulez faite copier coller dans mIRC et cherchez le fichier whostclones.data là ou vous avez deziper le zip

//.load -rs $qt($sfile(*.data))

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

24 février 2009 09:29:11 :
ortho.

 Sources du même auteur

AVOIR UNE LISTE D'UTILISATEUR EN COULEURS SELON LEURS SEXE P...
Source avec une capture ALIAS POUR TELECHARGER UNE VIDEO SUR YOUTUBE (MISE A JOUR V1...
Source avec Zip Source avec une capture WORLDDMT - STATISTIQUE V 1.0
Source avec Zip Source avec une capture WORLDDMT - INFOS DES CANAUX V 1.1
Source avec Zip Source avec une capture WORLDDMT - GESTION DE CAISSE V 1.0

 Sources de la même categorie

TCL - AJOUT SUPPRESSION DE LOGS par Atok
BLACKLIST PSEUDOS/MASKS par usurpateur
Source avec une capture [XCHAT] ANTI KICK / AWAY C++ par GeroXXXX
JEU DU CODE par alanpersonproject
SERVEUR FTP par hisoka2501

 Sources en rapport avec celle ci

Source avec une capture ALIAS POUR TELECHARGER UNE VIDEO SUR YOUTUBE (MISE A JOUR V1... par WorldDMT
Source avec Zip Source avec une capture WORLDDMT - STATISTIQUE V 1.0 par WorldDMT
Source avec Zip Source avec une capture WORLDDMT - INFOS DES CANAUX V 1.1 par WorldDMT
Source avec Zip Source avec une capture WORLDDMT - GESTION DE CAISSE V 1.0 par WorldDMT
Source avec Zip Source avec une capture WORLDDMT FUN WBAR V 1.0 - ADDON POUR BOT FUN par WorldDMT

Commentaires et avis

Commentaire de uaip le 23/02/2009 21:37:21

Salut,
Tout d'abord, au niveau du rendu, fais gaffe aux backgrounds, parce-que toi tu as Vista, ça colle, mais pour ceux sous XP par exemple, on voit les backgrounds des texts par dessus l'image, c'est pas très beau. Je dis ça parce-que tu as soigné ton style (qui est sympa, d'ailleurs).
Attention également à l'orthographe : "connexion" et non "connecxion", "fenêtre" et non "fenetre", "vient" et non "vien", "voulez-vous désinstaller" et non "voulez vous désinstallé", et si on veut vraiment être rigoureux, "Veuillez" avec une maj ^^, "succès", etc (il y en a sans doute d'autres).
Concernant le code, je ne vois pas trop quoi corriger. Certes, il y a plusieurs manières de faire certaines choses, mais je trouve le code propre dans l'ensemble (j'ai pas tellement exploré le fin fond des algos).
Une remarque cependant, tu aurais pu soit faire ton dialog entièrement par dcx, soit, comme tu l'as fait, créer d'un côté une table modale et de l'autre les contrôles dcx (dans l'événement init). Dans ce cas, je trouve un peu inutile le fait de créer tes checkboxes et radiobuttons avec dcx (plus lent en temps de création). Tu aurais pu utiliser dcx seulement pour les contrôles infaisables en mIRC "pur" (dock de @window, comboex, etc).
Cela dit, c'est finalement pas si mal, car étant sur un site de codes-sources, ta source sert d'exemple, même pour les contrôles "basiques".

Juste une question. Je n'ai jamais aimé utiliser $ifmatch pour son manque de "rigeur" (du moins, dans les versions précédentes).
if ($dialog(Status.wc)) dialog -x $ifmatch
Es-tu sûr que $ifmatch renvoit Status.wc ? Ne renverrait-il pas $true ? (pour éviter ce genre de problème, je me suis toujours servi de $v*)

Sinon bon boulot, je trouve cet addon sympa et original.

Commentaire de wims le 24/02/2009 00:12:55

$v1 = $ifmatch = valeur de retour de la 1ere condition
$v2 = $ifmatch2 = valeur de retour de la 2e condition

if ($dialog(Status.wc)) dialog -x $ifmatch
que retourne $dialog(Status.wc) ? le nom du dialog :)

Commentaire de WorldDMT le 24/02/2009 09:20:34

salut
merci pour ton commentaire uaip, :)

pour le backgroud j'ai pas utilisé de backgroud j'ai coloré le dialog en gris juste au cas qu'il y a quelqu'un qui a un themes de couleur different que ça casse pas le style du dialog comme tu vois dans l'aperçu

"if ($dialog(Status.wc)) dialog -x $ifmatch
Es-tu sûr que $ifmatch renvoit Status.wc ? Ne renverrait-il pas $true ?"

bon ici il y a plusieurs cas déjà WIMS a expliqué mais je vais quand meme detailler si tu veux tu teste avec un echo voici quelque exemples

exp 1:

le dialog status.wc est ouvert

if ($dialog(Status.wc)) echo -a $ifmatch/$v1 return status.wc

exp 2:

le dialog status.wc n'est pas ouvert

if (!$dialog(Status.wc)) echo -a $ifmatch/$v1 return $true


remarque:

1- si il y a deux conditions separé par "||" $v1 retourne la valeur de la premiere

si elles sont separé par "&&" $v1 retourne la valeur de la deuxieme

2- si il y a plusieurs separé par des "||" $v1 retourne la valeur de la premiere

si elles sont separé par des "&&" $v1 retourne la valeur de la derniere condition

3- si il y a plusieurs separé par des "||" et des "&&" $v1 retourne la valeur de la derniere condition qui suit le "&&"

je vais corriger l'orthographe merci :)

@+

Commentaire de uaip le 24/02/2009 12:36:06

Je connais tout ça ^^ (quoi que j'avais jamais fait gaffe aux || et &&)
Je pensais juste que $dialog(name) renvoyait $true (et non le nom du dialog) ou $false

Commentaire de wims le 24/02/2009 23:22:03

Oula, la seul chose a savoir de $v1/$v2/$ifmatch/$ifmatch2 est ce que j'ai dis ds mon précédent post.

Tes remarques sont fausse WorlDMT, tu as mal du testé :s
Quelque détail histoire que ça soit clair :

$v1 = $ifmatch = valeur de retour de la dernière première partie de la condition validé.
$v2 = $ifmatch2 = valeur de retour de la dernière deuxième partie de la condition validé.

les && ou || ne change pas le comportement de $v1 mais il agisse dessus :

if (1) && (2) {}
la dernière condition validé est 2, il n'y a pas de deuxième partis, $v1 = 2 et $v2 = $null

if (1 != 5) || (2 == 3) {}
la dernière condition est 2 == 3, mais comme c'est un ou, et que la première condition est vrai (validé), il ne va pas plus loin, $v1 = 1 et $v2 = 5.

si on considère :
alias Ga if (2 == 2) return 1
alias isGa noop Ga!
et bien :
//Echo -a $iif(1 == 1,$Ga,$isGa) $v1 $v2
affichera en echo "1 2 2"
Effectivement, la première condition du $iif est vrai, donc on renvois $Ga, sauf que $Ga effectue lui aussi une condition qui est vrai et donc return 1, donc la dernière condition validé est 2 == 2.

J'espère que c'est plus clair ;)


Commentaire de WorldDMT le 25/02/2009 08:54:49

"Tes remarques sont fausse WorlDMT, tu as mal du testé :s"

j'ai bien testé et tu a redi ce que j'avais dis en haut mais a ta maniere et tu a ajouté la derniere

je me sui mal exprimé peut etre

"if (1) && (2) {}
la dernière condition validé est 2, il n'y a pas de deuxième partis, $v1 = 2 et $v2 = $null"

moi j'avais dis

"si elles sont separé par "&&" $v1 retourne la valeur de la deuxieme"


"if (1 != 5) || (2 == 3) {}
la dernière condition est 2 == 3, mais comme c'est un ou, et que la première condition est vrai (validé), il ne va pas plus loin, $v1 = 1 et $v2 = 5."


si tu veux essaye de faire

if (2 != 3) || (1 != 5) || (2 == 3) $v1 = 2 $v2 = 3

if (2 != 3) && (1 != 5) || (2 == 3) $v1 = 1 $v2 = 5

donc si j'essaye de m'exprimé plus s'il y a un "||" la premiere condition est pris en compte donc $v1 et $v2 de la premiere condition et s'il y a un "&&" la derniere condition apres le "&&" est pris en compte donc $v1 et $v2 de la dermiere condition

je donne un exemple encore

if (2 != 3) && (1 != 5) || (2 == 3) && (1 == 1)

$v1 = 1 et $v2 = 1 donc ça considere la derniere condition apres le "&&" et je site qu'elle considere seul la condition qui returne vrai

donc comme cet exp

if (2 != 3) || (1 != 5) && (2 == 3) || (1 == 1) $v1 = 1 $v2 = 1

la condition qui suit le "&&" n'est pas vrai donc ça considere la seconde et s'il n'y a pas de seconde ça retourne $null

peut etre je n'explique pas bien ce que je pense mais bon laissons nous sur le code

esqu'on peut savoir la dimention de l'ecran avec mIRC?
parceque selon la fenetre qui affiche le contact connecté a partir de la ligne 240 si le mIRC n'est pas maximized la fenetre ne sera plus au coin en bas a droite de l'ecran

quelqun a une idée svp?

Commentaire de wims le 25/02/2009 09:09:53

"j'ai bien testé et tu a redi ce que j'avais dis en haut mais a ta maniere et tu a ajouté la derniere "

Effectivement maintenant que tu dis ça, je comprend ce que tu voulais dire, mais tu t'exprimes vraiment très très très très très très très très très mal (essaye d'ajouter de la ponctuation, de faire des phrase courte et simple), j'ai même l'impression que c'est toujours confus, $v1 et $v2 ne dépende pas des && ou ||, mais dépendent des conditions faites.Après il est vrai que && et || modifie les conditions.Pour savoir ce que vaut $v1 et $v2 il ne faut pas regardé les && ou les || mais comprendre quel condition a été éxécuter en DERNIER, d'ou mon exemple avec l'alias $Ga


Regarde $window pour avoir les coordonées de mirc

Commentaire de WorldDMT le 25/02/2009 09:14:53

ok

bon a propos d'avoir la dimention du win utilisé (800 X 600) , (1024 X 768) ou ect...

comme ça meme si le mIRC n'est pas maximized la fenetre s'voure tjr au quoin en bas a droite

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

reduction de la fenetre status [ par vizual ] qqun connait un truc pour empecher (reduire pr pas qu'on la voi au demarrage) la fenetre status et de ne la faire apparaitre qu'en cas de besoin ? svp PLZ C IMPORTANT [ par Tidam ] pourkoi quand je met ca:if ( $ial($nick).host == $+(%,host-,$2) ) { ... }ca ve pas executer la commande ... ???ya t il une faute ou C juste un problem changer host [ par jujuquatre ] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~JuJuQuArTrE ¨^ ¨^ ¨^ JuJu_BoT WWW.ut2004.fr.st~~~~~~~~~~~~~~~~~~~~~~~~~~~~Bon voila C dans ma shitlist je la fait dans les Help :) [ par jujuquatre ] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~JuJuQuArTrE s^ s^ s^ JuJu_BoT WWW.ut2004.fr.st~~~~~~~~~~~~~~~~~~~~~~~~~~~~Ben voila J'ai commencer un addon de auto-mode ( addon get + queue = ban du serv [ par Illuvatar ] Est ce kkun soré faire un code du style 1 get + 1 queue = ban du fserv ?Merci d'avance [/purple] Noldor, blood is on your hands. You're banned, a tear Addon Recuperation de gline et suppression auto [ par motherboy ] Bonjour,Ne connaissant pas trop le language de script mirc, j'viens par ce forum demander a un extreme codeur mirc de bien vouloir m'aider.En gros je jai été oto killed pr attake de clones , et jai rien fait ... [ par [Fk] ] bonjour , voila je vous explik mon bp : je suis deconnecté ... ( bon juska là normal ) , donc jai redémaré mon ordi .. je me suis connecté , je suis a auth-host [ par Lonsdale^ ] re ^^voila j'utilise quakenet et quand on me whois ou bien que je le fait moi meme j'ai cela:[Unity^Bestial] is Bestial@SO-Bestial.users.quakenet.org commande. [ par Lonsdale^ ] salutvoila je cherche 1 script qui me permet que qand je tappe !add &lt;nom_de_la_personne&gt; ca loge sont "host masque" sous format $2 et que qd je


Nos sponsors


Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

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

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

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