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 !

LAGBAR PICWIN


Information sur la source

Catégorie :Astuces Classé sous : lag, lagbar, picwin Niveau : Débutant Date de création : 14/11/2005 Vu : 4 456

Note :
9,6 / 10 - par 5 personnes
9,60 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (9)
Ajouter un commentaire et/ou une note

Description

Cliquez pour voir la capture en taille normale
En voila une source originale !
Bon, blague a part, j'ai eu envie de faire une petite lagbar personnelle et je me suis dit qu'elle pourrait etre utile à d'autres, qui sait ?
Il peut servir de tuto(sans comment') pour l'utilisation de dégradés, dégradés tres simples a effectuer:
on creée le dégradé au lancement de l'alias dans une @win caché qui nous servira de buffer, puis on drawcopy la portion qui nous interresse, donc pas de resources inutiles perdues :-)
Bref, c'est une lagbar, que l'on peut déplacer, et qui se présente sous la forme d'un alias /lag comportant plusieurs parametres
je les indique
/lag x y w h lag_maximum periode_refresh couleur* couleur_font couleur_texte +c*

x,y,w et h sont la position de la lagbar (x et y) et ses dimensions (w et h)
lag_maximum indique quelle sera la valeur maximum de lag a afficher sur la lagbar (ex 200ms , 500, etc...)
periode_refresh indique la duree separant 2 verification du lag (ex 2 secs)
couleur* et la couleur: plusieurs options
  db = degradé 'froid'
  df = degradé 'feu'
  dv = degrade vert->rouge
  dr = degradé 'chaud'
  dnb = degradé niveau de gris
  c = couleur unie mais qui varie en fonction du lag, de jaune à rouge
  nb = de même mais varie en niveau de gris
  $rgb(R,G,B) = vous pouvez definir une couleur perso pour la lagbar

couleur_font est la couleur du fond de la lagbar
couleur_texte est devinez... la couleur du text affiché, bravo ! si vous ne mettez rien une couleur du clair au foncé sera choisie, en fonction du lag
Enfin le parametre +c est optionnel, et permet de mettre un cadre noir autour de la lagbar

Dernière chose, le lag donnée est propre a chaque serveur (encore heureux :o)
 

Source

  • on *:appactive:if ($window(@lag)) window $iif($appactive,-o,-u) @lag
  • on *:ctcpreply:lb*: {
  • if ($nick == $me && $2 isnum) {
  • var %l $2 | tokenize 32 $hget(lag,opt)
  • var %d $calc(($ticks -%l)/1000),%b $calc(%d * $3 /$5),%c $calc(255-(%d *255/$5)),%t $calc(255-%c)
  • dr $($8,2) 1 0 0 $3-4
  • if ($regex($7,dr|dnb|db|df|dv)) deg %b $4
  • elseif ($7 == c) dr $rgb(255,%c,0) 1 0 0 %b $4
  • elseif ($7 == nb) dr $rgb(%c,%c,%c) 1 0 0 %b $4
  • else dr $($7,2) 1 0 0 %b $4
  • drawtext -nor @lag $iif($9 != +c && $9,$($v1,2),$rgb(%t,%t,%t)) arial 10 $center(%d) sec
  • drawdot @lag
  • }
  • haltdef
  • }
  • menu @lag {
  • sclick { if ($hget(lag,lock)) movewin $active $calc($mouse.dx - $window($active).x) $calc($mouse.dy - $window($active).y) }
  • $iif($hget(lag,lock),Ancrer,Détacher) la lagbar:hadd -m lag lock $iif($hget(lag,lock),0,1)
  • Relancer:/lag_reload
  • -
  • Couleur barre
  • .Degradé Feu:$lag_rep(df).barre
  • .Degradé Glace:$lag_rep(db).barre
  • .Degradé Chaud:$lag_rep(dr).barre
  • .Degradé Vert-rouge:$lag_rep(dv).barre
  • .Dégradé de gris:$lag_rep(dnb).barre
  • .-
  • .Blanc -> noir:$lag_rep(nb).barre
  • .Jaune -> rouge:$lag_rep(c).barre
  • .-
  • .Couleur unie:$lag_rep($q).barre
  • Couleur fond:$lag_rep($q).font
  • Couleur texte:$lag_rep($q).texte
  • -
  • Options
  • .Période de rafraichissement:$lag_rep($$input(Période de rafraichissement ? (sec),ieoc,Rafraichissement)).re
  • .Lag maximum:$lag_rep($calc($$input(Indiquez le lag maximum à afficher ? (msec),ieoc,Lag Maximum) /1000)).max
  • -
  • Info code:.echo -q $input(Code de la lagbarre active :,ioe,Aide,/lag $+ $chr(32) $hget(lag,opt))
  • -
  • Fermer:{ .timerlag off | hfree lag | close -@ @lag* }
  • }
  • alias lag {
  • if (!$8) { echo -a  $+ $color(info) $+ * /lag: paramètres insuffisants | halt }
  • elseif ($remove($1-6,$chr(32)) !isnum) { echo -a  $+ $color(info) $+ * /lag: erreur de paramètre | halt }
  • close -@ @lag*
  • window -poBdh +bL $+ $iif(+c !isin $9-,d) @lag $1-4
  • hadd -m lag opt $1-
  • if ($regex($7,dr|dnb|db|df|dv)) bdeg
  • .timerlag -oi 0 $6 lm
  • }
  • alias lagtest {
  • if $1 == 1 lag 526 42 200 20 0.08 2 db $rgb(212,208,200) $rgb(0,0,0)
  • elseif $1 == 2 lag 526 42 200 20 0.08 2 df $rgb(212,208,200) +c
  • elseif $1 == 3 lag 526 44 100 15 0.08 2 dv $rgb(255,255,255) +c
  • elseif $1 == 4 lag 526 42 120 30 0.08 2 c $rgb(255,255,255) $rgb(1,0,0) +c
  • }
  • alias -l bdeg {
  • var %i 0,%p $1 | tokenize 32 $hget(lag,opt)
  • window -ph @lagb
  • while (%i <= $3) {
  • if ($7 == df) {
  • var %v $calc(510 -(510 * %i / $3)),%vv $iif(%v > 255,$calc(%v -255),0)
  • drawrect -nrf @lagb $rgb($iif(%v > 255,255,%v),%vv,0) 1 %i 0 1 $4
  • }
  • elseif ($7 == dv) {
  • var %v $calc(510 * %i / $3),%vv $iif(%v > 255,$calc(255-(%v -255)),255)
  • drawrect -nrf @lagb $rgb($iif(%v > 255,255,%v),%vv,0) 1 %i 0 1 $4
  • }
  • elseif ($7 == dr) {
  • var %c $calc(255-(%i *255/$3))
  • drawrect -nrf @lagb $rgb(255,%c,0) 1 %i 0 1 $4
  • }
  • elseif ($7 == dnb) {
  • var %c $calc(255-(%i *255/$3))
  • drawrect -nrf @lagb $rgb(%c,%c,%c) 1 %i 0 1 $4
  • }
  • elseif ($7 == db) {
  • var %b $calc(510 * %i / $3),%bb $iif(%b > 255,$calc(255 + (255 - %b)),255)
  • drawrect -nrf @lagb $rgb($iif(%b > 255,0,$calc(255 - %b)),%bb,255) 1 %i 0 1 $4
  • }
  • inc %i
  • }
  • drawdot @lagb
  • }
  • alias -l lag_rep {
  • if ($prop == barre) { $rep($1,7) | bdeg }
  • elseif ($prop == font) $rep($1,8)
  • elseif ($prop == texte) {
  • var %p $1 | tokenize 32 $hget(lag,opt)
  • if ($9 && $9 != +c) $rep(%p,9)
  • elseif ((!$9) || ($9 == +c)) hadd lag opt $instok($1-,%p,9,32)
  • }
  • elseif ($prop == re) $rep($1,6)
  • elseif ($prop == max) $rep($1,5)
  • }
  • alias -l center { var %d $1 | tokenize 32 $hget(lag,opt) | return $calc(($3 /2)-($width(%d,arial,10)/2)-10) $calc(($4 /2)-7) %d }
  • alias -l dr drawrect -rnf @lag $1-
  • alias -l lm { if ($server) { .ctcpreply $me lb $ticks } | else { clear @lag | drawtext -o @lag 4 arial 11 $center(Déconnecté) } }
  • alias -l lag_reload { if ($hget(lag,opt)) { tokenize 32 $ifmatch | lag $window(@lag).x $window(@lag).y $window(@lag).w $window(@lag).h $5- } }
  • alias -l movewin { window $1 $calc($mouse.dx - $2) $calc($mouse.dy - $3) | if ($mouse.key & 1) { .timer 1 0 movewin $1- } }
  • alias -l deg { drawcopy @lagb 0 0 $1-2 @lag 0 0 }
  • alias -l rep { hadd lag opt $puttok($hget(lag,opt),$1,$2,32) }
  • alias -l q return $$input(Indiquez la couleur ? $crlf Format $ $+ rgb(R,G,B),ieoc,Changement de couleur)
on *:appactive:if ($window(@lag)) window $iif($appactive,-o,-u) @lag
on *:ctcpreply:lb*: {
  if ($nick == $me && $2 isnum) {
    var %l $2 | tokenize 32 $hget(lag,opt)
    var %d $calc(($ticks -%l)/1000),%b $calc(%d * $3 /$5),%c $calc(255-(%d *255/$5)),%t $calc(255-%c)
    dr $($8,2) 1 0 0 $3-4
    if ($regex($7,dr|dnb|db|df|dv)) deg %b $4
    elseif ($7 == c) dr $rgb(255,%c,0) 1 0 0 %b $4
    elseif ($7 == nb) dr $rgb(%c,%c,%c) 1 0 0 %b $4
    else dr $($7,2) 1 0 0 %b $4
    drawtext -nor @lag $iif($9 != +c && $9,$($v1,2),$rgb(%t,%t,%t)) arial 10 $center(%d) sec
    drawdot @lag
  }
  haltdef
}

menu @lag {
  sclick { if ($hget(lag,lock)) movewin $active $calc($mouse.dx - $window($active).x) $calc($mouse.dy - $window($active).y) }
  $iif($hget(lag,lock),Ancrer,Détacher) la lagbar:hadd -m lag lock $iif($hget(lag,lock),0,1)
  Relancer:/lag_reload
  -
  Couleur barre
  .Degradé Feu:$lag_rep(df).barre
  .Degradé Glace:$lag_rep(db).barre
  .Degradé Chaud:$lag_rep(dr).barre
  .Degradé Vert-rouge:$lag_rep(dv).barre
  .Dégradé de gris:$lag_rep(dnb).barre
  .-
  .Blanc -> noir:$lag_rep(nb).barre
  .Jaune -> rouge:$lag_rep(c).barre
  .-
  .Couleur unie:$lag_rep($q).barre
  Couleur fond:$lag_rep($q).font
  Couleur texte:$lag_rep($q).texte
  -
  Options
  .Période de rafraichissement:$lag_rep($$input(Période de rafraichissement ? (sec),ieoc,Rafraichissement)).re
  .Lag maximum:$lag_rep($calc($$input(Indiquez le lag maximum à afficher ? (msec),ieoc,Lag Maximum) /1000)).max
  -
  Info code:.echo -q $input(Code de la lagbarre active :,ioe,Aide,/lag $+ $chr(32) $hget(lag,opt))
  -
  Fermer:{ .timerlag off | hfree lag | close -@ @lag* }
}

alias lag {
  if (!$8) { echo -a  $+ $color(info) $+ * /lag: paramètres insuffisants | halt }
  elseif ($remove($1-6,$chr(32)) !isnum) { echo -a  $+ $color(info) $+ * /lag: erreur de paramètre | halt }
  close -@ @lag*
  window -poBdh +bL $+ $iif(+c !isin $9-,d) @lag $1-4
  hadd -m lag opt $1-
  if ($regex($7,dr|dnb|db|df|dv)) bdeg
  .timerlag -oi 0 $6 lm
}

alias lagtest {
  if $1 == 1 lag 526 42 200 20 0.08 2 db $rgb(212,208,200) $rgb(0,0,0)
  elseif $1 == 2 lag 526 42 200 20 0.08 2 df $rgb(212,208,200) +c
  elseif $1 == 3 lag 526 44 100 15 0.08 2 dv $rgb(255,255,255) +c
  elseif $1 == 4 lag 526 42 120 30 0.08 2 c $rgb(255,255,255) $rgb(1,0,0) +c
}

alias -l bdeg {
  var %i 0,%p $1 | tokenize 32 $hget(lag,opt)
  window -ph @lagb
  while (%i <= $3) {
    if ($7 == df) {
      var %v $calc(510 -(510 * %i / $3)),%vv $iif(%v > 255,$calc(%v -255),0)
      drawrect -nrf @lagb $rgb($iif(%v > 255,255,%v),%vv,0) 1 %i 0 1 $4
    }
    elseif ($7 == dv) {
      var %v $calc(510 * %i / $3),%vv $iif(%v > 255,$calc(255-(%v -255)),255)
      drawrect -nrf @lagb $rgb($iif(%v > 255,255,%v),%vv,0) 1 %i 0 1 $4
    }
    elseif ($7 == dr) {
      var %c $calc(255-(%i *255/$3))
      drawrect -nrf @lagb $rgb(255,%c,0) 1 %i 0 1 $4
    }
    elseif ($7 == dnb) {
      var %c $calc(255-(%i *255/$3))
      drawrect -nrf @lagb $rgb(%c,%c,%c) 1 %i 0 1 $4
    }
    elseif ($7 == db) {
      var %b $calc(510 * %i / $3),%bb $iif(%b > 255,$calc(255 + (255 - %b)),255)
      drawrect -nrf @lagb $rgb($iif(%b > 255,0,$calc(255 - %b)),%bb,255) 1 %i 0 1 $4
    }
    inc %i
  }
  drawdot @lagb
}

alias -l lag_rep {
  if ($prop == barre) { $rep($1,7) | bdeg }
  elseif ($prop == font) $rep($1,8)
  elseif ($prop == texte) {
    var %p $1 | tokenize 32 $hget(lag,opt)
    if ($9 && $9 != +c) $rep(%p,9)
    elseif ((!$9) || ($9 == +c)) hadd lag opt $instok($1-,%p,9,32)
  }
  elseif ($prop == re) $rep($1,6)
  elseif ($prop == max) $rep($1,5)
}

alias -l center { var %d $1 | tokenize 32 $hget(lag,opt) | return $calc(($3 /2)-($width(%d,arial,10)/2)-10) $calc(($4 /2)-7) %d }
alias -l dr drawrect -rnf @lag $1-
alias -l lm { if ($server) { .ctcpreply $me lb $ticks } | else { clear @lag | drawtext -o @lag 4 arial 11 $center(Déconnecté) } }
alias -l lag_reload { if ($hget(lag,opt)) { tokenize 32 $ifmatch | lag $window(@lag).x $window(@lag).y $window(@lag).w $window(@lag).h $5- } }
alias -l movewin { window $1 $calc($mouse.dx - $2) $calc($mouse.dy - $3) | if ($mouse.key & 1) { .timer 1 0 movewin $1- } }
alias -l deg { drawcopy @lagb 0 0 $1-2 @lag 0 0 }
alias -l rep { hadd lag opt $puttok($hget(lag,opt),$1,$2,32) }
alias -l q return $$input(Indiquez la couleur ? $crlf Format $ $+ rgb(R,G,B),ieoc,Changement de couleur)

Conclusion

j'ai mis 4 exemples a votre disposition, étudiez l'alias /lagtest pour bien voir la syntaxe a utiliser
pour tester:
/lagtest 1
/lagtest 2
jusqu'a 4 ;-)

Attention, si vous voulez du noir à 100% , mettez comme couleur rgb du $rgb(1,0,0) (pour eviter d'avoir un zero)
 

Commentaires et avis

signaler à un administrateur
Commentaire de HySteriK le 15/11/2005 00:13:17

elle pete ta lagbar on peu bien personnaliser
niveau code c'est pas moi qui vais critiquer
( je suis mal placé ) sinon c'est original quand le mirc est déco
j'ai jamais vu ça ailleur
thx

signaler à un administrateur
Commentaire de wims le 15/11/2005 19:40:28

Niquel les degradés  
C'est normal que deux alias soient pas en local ?
C'est pas mieux d'utiliser la raw 421 ?

signaler à un administrateur
Commentaire de fjxokt le 15/11/2005 19:55:28

euh oui c'est normal en fait ce code se présente sous la forme d'un alias /lag qui crée la lagbar :-)
et pour le 2eme (/lagtest) , c'est un exemple d'utilisation mais il ne sert strictement à rien pour le bon fonctionnement du code

Pour la raw, es-tu sur qu'il s'agit de la raw 421, car il me semble qu'elle signifie "cette commande n'existe pas"

signaler à un administrateur
Commentaire de wims le 15/11/2005 20:20:33

le code etais de max_62 mais j'ai adapté pour moi

on *:connect:{
  wa
}
alias wa {
  window -BhCfkp +deL @lag 3 4 50 15
  dll Dll\mDock61.dll DockToolbar $window(@lag).hwnd
  .timerlag 0 2 refresh_lagbar
  window -a @lag 695 8 105 15
}

alias -l refresh_lagbar { $iif($scid($activecid).status == connected && $window(@lag),.raw $+($ticks,/lag),.timerlag off) }

raw 421:*:{ if ($1 == $me && $gettok($2,1,47) isnum && $gettok($2,2-,47) == lag) { haltdef | var %x $calc(($ticks - $gettok($2,1,47)) / 1000) | if ($window(@lag)) { drawrect -f @lag 1 1 0 0 105 15 | drawtext @lag 4 verdana 12 1 0 Lag ª %x sec } } }

Apres je sais pas si c'est mieux

signaler à un administrateur
Commentaire de Erwanou le 20/11/2005 19:09:36

pas mal

signaler à un administrateur
Commentaire de aurel212 le 17/05/2006 17:38:50

c'est certainement super mais... =
* /lag: paramètres insuffisants
alors jsuis sur ke sa vien de moi, ke jlai pa chargé comme y fau etc... sa march pa pour moi koi

signaler à un administrateur
Commentaire de GenerationNoNNoN le 19/06/2006 03:48:44

joli ;)

signaler à un administrateur
Commentaire de Foufoune_Palace le 30/09/2006 15:56:43

Elle est belle , je te met un 8/10 !
Parce'que tu dis que si on veut du noir à 100% qu'on mette $rgb[...] met tu n'explique pas ou et tout ...

signaler à un administrateur
Commentaire de SoldierZ le 04/05/2009 15:33:36

hummm jlaime ben ta lag barre mais a fais laguer x( loll xD

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Help Lag Barre [ par PsyShooter ] Salut je cherche comment mettre 1 lagbarre dans mon script mirc perso mais jaimerai 1 langage simple pour mexpliker car je suis encore newbie merci a Lag Barre [ par MatteoAngeNoir ] Je sui à la recherche dune barre de lag ke je pourré rajouter à mon script.Si elle pouvais se trouver en haut à droite avec les icones ça serais sympa Dégradé [ par Bloock ] Bon voila, je vais faire un lecteur mp3 en picwin, et j'aimerai savoir comment on fait [/b]un dégradé dans une fenêtre Picwin[/b]! Merci d'avance <img Aide Socket & picwin [ par _VeSpArO_ ] Salut tout le monde je voulai savoir comment stocker un fichier txt d'un site dans un fichier .txt ou autre dans mon mirc.CAD: telecharger par exemple Lag [ par DarKiNg virus ] Comment récupérons notre lag ? Picwin je pense lol jsuis meme pas sur du nom :s [ par Panther007 ] Salut :) Bon je vous dit en quoi j'aimerais me faire aider , j'aimerais me fabriquer un jeu de Ping pong mais avant il faut que je sache comment utili Dialog + Picwin [ par DiGhan ] Bonjour,Voilà , j'ai plusieurs dialog, dans lequel je voudrais inclure des picwin.J'aimerais savoir comment faire pour bouger le dialog quand la title quelques question [ par KiNdErMaXi ] voila, j'ai quelques questions a vous poser:*1) est-il possible de faire apparaitre un petit truc. Je m'explique, pointez de la souris la croix en hau tutorial picwin [ par KiNdErMaXi ] alors voila j'ai fais un petit tutorial sur les picwin, mais comme on ne peut pas laisser de commentaire et puis qu'il est enfouis dans le fond du sit Lag barre [ par Damien520 ] Bonjour ! je cherche une barre de lag alors si vous pouvez me donnez un site svp! Merci


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version


HTC G1

Entre 449€ et 449€


Photothèque Nouveau !



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
Temps d'éxécution de la page : 0,967 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.