Communauté Eggdrop
Afficher les résultats sur une seule ligne - Version imprimable

+- Communauté Eggdrop (https://forum.eggdrop.fr)
+-- Forum : Eggdrop et TCL (https://forum.eggdrop.fr/forumdisplay.php?fid=8)
+--- Forum : Scripts TCL (https://forum.eggdrop.fr/forumdisplay.php?fid=4)
+--- Sujet : Afficher les résultats sur une seule ligne (/showthread.php?tid=972)



Afficher les résultats sur une seule ligne - ArKeNiS - 12/06/2011

Bonsoir,

Je suis en train de développer une TCL.
Sauf que je rencontre un soucis, lors de l'affichage des résultats obtenus.
En effet, dès que je tape !staff, le bot doit afficher les résultats de la manière suivante :
#salon : ChanMaster: Pseudo Master: Pseudo CoMaster: Pseudo Op: Pseudo Anim: Pseudo

Or, là, il affiche :

#salon : ChanMaster: Pseudo
#salon : Master: Pseudo
...

Savez-vous commencer afficher ces résultats sur une seule ligne ? (Ces résultats sont affichés via des whiles).

P.S : J'ai vu qu'il y avait la fonction -nonewline mais, je ne sais pas l'utiliser avec les putfasts ... (Du moins, où la placer).


RE: Afficher les résultats sur une seule ligne - aliasangelius - 13/06/2011

Bonjour,

c'est possible d'avoir ton code voir ce que tu as fait déjà ?


RE: Afficher les résultats sur une seule ligne - fedora - 13/06/2011

bonjour,

sans voir ton code ça va être un peut difficile de t'aidez mais bon.A tu penser à utiliser
tcl
lappend


?

voici un exemple de code de Dj_Kenny ce trouvant sur le site:
tcl
bind dcc - cliste get_cliste
 
proc get_cliste {hand idx arg} {
   putdcc $idx [channellist [lindex $arg 0]]
}
 
proc channellist chan {
   if ![validchan $chan] return
   foreach nick [chanlist $chan] {
      if [isop $nick $chan] {
         lappend nicks @$nick
         continue
      }
      if [ishop $nick $chan] {
         lappend nicks %$nick
         continue
      }
      if [isvoice $nick $chan] {
         lappend nicks +$nick
         continue
      }
      lappend nicks $nick
   }
   return $nicks
}



ce qui te donnera

tcl
@pseudo1 +pseudo2 +pseudo3 %pseudo4 ...etc...



je pense que cette exemple pourrais t'aidez pour réaliser ton code..

Cordialement


RE: Afficher les résultats sur une seule ligne - ArKeNiS - 25/09/2011

Salut,

Ayant recommencé ce système il y a quelques jours, j'ai enfin réussi à faire ce que je voulais.
Il m'aura fallut que de deux procs, 5 lappend & foreach ainsi qu'une while Wink.

Je verrai plus tard pour mettre à disposition ma TCL en ligne. (Dès que je serai sûr que l'optimisation soit à son maximum et qu'aucune faille ne soit existante).

Cordialement,

P.S : Merci quand même à fedora pour sa réponse.