Mise en forme de code: pensez à utiliser les balises [ tcl ] et [ /tcl ] (sans les espaces bien sûr) autour de vos codes tcl afin d'avoir un meilleur rendu et une coloration syntaxique. x


Saut de ligne
#1
yep je voudrai savoir c'est quoi le code pour que le bot fasse 2 ligne je m'exprime mal je sais :p donc voici ce que mon bot affiche :

<testmdrlol>!cekoibonjour
<bottrorfqs>Bonjour est bonjour.Bonjour est un mot

moi ce que je veux :

<testmdrlol>!cekoibonjour
<bottrorfqs>Bonjour est bonjour.
<bottrorfqs>Bonjour est un mot

Voila donc si vous avez un petit code en stock je suis preneur :p
#2
salut,

tu mets 2 putserv tout simplement
C'est en reconnaissant ses erreurs que l'on progresse ;)
Away
#3
Enfin, pour expliquer un peu plus, il faut que tu mettes un séparateur dans ta chaine réponse. Imaginons que tu utilises le #:

tcl
set resp "Bonjour est bonjour.#Bonjour est un mot"
 
bind pub - "!cekoibonjour" proc cekoi:bonjour
proc cekoi:bonjour {nick uhost handle chan args} {
   foreach line [split $::resp "#"] {
      putserv "PRIVMSG $chan :$line"
   }
}

irc.zeolia.net - Offrez-moi un café
Merci de ne pas demander d'aide en MP
Away
#4
pourquoi ajouter un "#" alors qu'il y a déjà un "." ?
autant spliter sur le "."
C'est en reconnaissant ses erreurs que l'on progresse ;)
Away
#5
Parce que j'aime bien que le séparateur de ligne soit un caractère bien précis.
Tu fais comment si tu as une phrase du genre:
"Il y a les contents... Les mécontents... Et les autres."
Et que tu veux obtenir:
"Il y a les contents... Les mécontents..."
"Et les autres."
irc.zeolia.net - Offrez-moi un café
Merci de ne pas demander d'aide en MP
Away
#6
Lol thx pour vos rep :p
#7
CrazyCat Wrote:Parce que j'aime bien que le séparateur de ligne soit un caractère bien précis.
Tu fais comment si tu as une phrase du genre:
"Il y a les contents... Les mécontents... Et les autres."
Et que tu veux obtenir:
"Il y a les contents... Les mécontents..."
"Et les autres."

et si ta phrase contient un nom de salon? autant utiliser le caractère prévu pour ca "\n"
C'est en reconnaissant ses erreurs que l'on progresse ;)
Away
#8
Tout à fait. Je n'ai donné le # que comme exemple, j'ai bien parlé de séparateur (au sens global) au départ.
Le souci du \n existe lorsque tu enregistres tes phrases dans un fichier, donc je le considère comme le moins pire, mais pas comme la solution miracle.
irc.zeolia.net - Offrez-moi un café
Merci de ne pas demander d'aide en MP
Away
#9
Rebonjour,
le code de Crazycat marche t'il sur ce code que ma donner DJkenny ?


Code:
namespace eval speak {
   # variable contenant les mots à reconnaitre
   # on pourras utiliser des wildchar * ?
   variable bonjour {!test1 !test2}
   # variable contenant les réponses
   # on utilise %n pour pouvoir réécrire le pseudo plus tard
   variable reponse {"Ceci est le test 1" "Ceci est le test 2"}
}

bind pubm - * speak::bonjour

proc speak::bonjour {nick host hand chan text} {

   # on déclare les variable bonjour et réponse
   variable bonjour
   variable reponse

   # on debug le texte et on met tout en minuscules
   set text [stripcodes abcru $text]
   set text [string tolower $text]

   # on test si on trouve le texte dans la variable bonjour
   if {[lsearch $bonjour $text] != -1} {

      # on remplace %n par le pseudo
      set rep [string map [list %n $nick] $reponse]

      # on choisi une réponse aléatoire
      set index [rand [llength $rep]]
      set rep [lindex $rep $index]

      # on envoi la réponse choisie
      putserv "PRIVMSG $chan :$rep"

   # on ferme les \} qu on a ouvert plus haut
   }
}
#10
CrazyCat Wrote:Tout à fait. Je n'ai donné le # que comme exemple, j'ai bien parlé de séparateur (au sens global) au départ.
Le souci du \n existe lorsque tu enregistres tes phrases dans un fichier, donc je le considère comme le moins pire, mais pas comme la solution miracle.

tu peux parfaitement spliter tes lignes avec \n
genre set ligne "1ere ligne\n2eme ligne\n3eme ligne...."
edit: ou encore
set ligne "1ere ligne
2eme ligne
3eme ligne"

@NesCrex: tu peux préciser ce que tu veux faire ?
C'est en reconnaissant ses erreurs que l'on progresse ;)
Away
#11
Je fais faire genre =

<moi>!infoa
<bot> a est la 1er lettre de l’alphabet
<bot> b est la lettre suivante

<moi>!infob
<bot> b est la 2eme lettre de l'alphabet
<bot> c est la lettre suivante
#12
c est pas un peux compliqué ?
pourquoi ne pas faire
!info a ou !info b
??
C'est en reconnaissant ses erreurs que l'on progresse ;)
Away
#13
bah wai si tu veux lol mais ca donne pas la solution a mon probleme xD
#14
et si tu nous disais ce que tu veux exactement au lieu de tourner autour du pot

edit: j doute que tu veuille une commande qui te donne les lettres de l alphabet
C'est en reconnaissant ses erreurs que l'on progresse ;)
Away
#15
mais quesqu'y faut pas lire des fois :/
C'est en reconnaissant ses erreurs que l'on progresse ;)
Away


Possibly Related Threads…
Thread Author Replies Views Last Post
  Récuperation de chaque ligne dans un .txt Epsilon 7 4,595 19/03/2017, 11:46
Last Post: CrazyCat
  [Demande] Modification d'une ligne précise d'un fichier loulou7593 4 4,802 30/10/2013, 17:01
Last Post: loulou7593
  Afficher les résultats sur une seule ligne ArKeNiS 3 4,735 25/09/2011, 14:24
Last Post: ArKeNiS
  Lire une ligne précise sur une page html BdS 7 7,788 03/10/2006, 21:58
Last Post: BdS

Forum Jump:


Users browsing this thread: 1 Guest(s)