![]() |
|
Faire reagir le bot sur plusieur mot - Version imprimable +- Communauté Eggdrop (https://forum.eggdrop.fr) +-- Forum : Eggdrop et scripts (https://forum.eggdrop.fr/forumdisplay.php?fid=8) +--- Forum : Scripts (https://forum.eggdrop.fr/forumdisplay.php?fid=4) +--- Sujet : Faire reagir le bot sur plusieur mot (/showthread.php?tid=894) |
Faire reagir le bot sur plusieur mot - NesCrex - 28/02/2011 Hep Voici un script et a partir de celui la je voudrai le faire réagir sur plusieurs; par que sur le mot "f**k" Merci :) Code : # Le channel sur le quel le script va réagir:
set pschan "#Chat"
# Le bot réagit t'il sur tout les chan ou juste sur
# celui mentionné ci-dessus? 1=Oui 2=Tous
set psinchan "1"
# Le mot auquel le bot va réagir:
set pstrigger "fuck"
# Ce que le bot va répondre
# (vous pouvez y mettre de la couleur)
set psanswer "Non mais tu parle d'un langage toi!"
# La façon que le bot va répondre:
# ( notice privmsg ou chan )
set psmaniere "chan"
###############################################
################### Script ####################
###############################################
### À ne pas modifier, c'est à vos risques! ###
###############################################
bind pub - $pstrigger call_talk
proc pretalk { target channel } {
global pschan psinchan pstrigger
if { $psinchan == "1" && $pschan == $channel } {
talk $target $channel
}
if { $psinchan == "2" } {
talk $target $channel
}
if { $psinchan == "1" && $pschan != $channel } {
putlog "J'ai détecté un $pstrigger dans $channel mais je ne suis pas
configuré pour y envoyer un message." }
}
proc talk { nick chan } {
global pschan pstrigger psanswer psmaniere
if { $psmaniere == "notice" } { putserv "notice $nick :$psanswer" }
if { $psmaniere == "privmsg" } { putserv "privmsg $nick :$psanswer"}
if { $psmaniere == "chan" } { putserv "privmsg $chan :$nick : $psanswer" }
if { $psmaniere != "notice" && $psmaniere != "privmsg" && $psmaniere
!= "chan" } { putlog "Erreur: Aucune bonne manière d'envoi n'est configuré."
} else { putlog "Parle script: Envoyé à $nick" }
}
proc call_talk { nick uhost hand chan arg } { pretalk $nick $chan }RE: Faire reagir le bot sur plusieur mot - atis91620 - 28/02/2011 Bonjour, essaye comme ceci : Code : set pstrigger "mot,mot1,mot2,etc"ensuite a la place de Code : bind pub - $pstrigger call_talkmet ceci : Code : bind pub - "*" verif:call
proc verif:call { nick uhost handle channel arg } {
forach t [split $pstrigger ,] { if {[string match *[lrange $arg 0 end]* $t]} { call_talk } }RE: Faire reagir le bot sur plusieur mot - NesCrex - 28/02/2011 Salut thx de ta rep mec mais pour le mot 2 etc je veux pas qui répète "Non mais tu parle d'un langage toi!" je veux qui repete un autre truc Merci :) RE: Faire reagir le bot sur plusieur mot - NesCrex - 01/03/2011 Up [Image: http://www.playthedownload.com/images/smilies/hap.gif] RE: Faire reagir le bot sur plusieur mot - NesCrex - 03/03/2011 Pourquoi "octo" ? :v RE: Faire reagir le bot sur plusieur mot - NesCrex - 03/03/2011 okep faut que je change Code : bind pub - $pstrigger call_talk
proc pretalk { target channel } {
global pschan psinchan pstrigger
if { $psinchan == "1" && $pschan == $channel } {
talk $target $channel
}
if { $psinchan == "2" } {
talk $target $channel
}
if { $psinchan == "1" && $pschan != $channel } {
putlog "J'ai détecté un $pstrigger dans $channel mais je ne suis pas
configuré pour y envoyer un message." }
}
proc talk { nick chan } {
global pschan pstrigger psanswer psmaniere
if { $psmaniere == "notice" } { putserv "notice $nick :$psanswer" }
if { $psmaniere == "privmsg" } { putserv "privmsg $nick :$psanswer"}
if { $psmaniere == "chan" } { putserv "privmsg $chan :$nick : $psanswer" }
if { $psmaniere != "notice" && $psmaniere != "privmsg" && $psmaniere
!= "chan" } { putlog "Erreur: Aucune bonne manière d'envoi n'est configuré."
} else { putlog "Parle script: Envoyé à $nick" }
}
proc call_talk { nick uhost hand chan arg } { pretalk $nick $chan }Non ? RE: Faire reagir le bot sur plusieur mot - NesCrex - 04/03/2011 Marche pas ton script :l RE: Faire reagir le bot sur plusieur mot - CrazyCat - 04/03/2011 Vous cherchez un peu à réinventer la roue. En gros, ce que tu veux, c'est plusieurs mots qui fassent réagir l'eggdrop, et qu'à chaque mot il y ait une réponse particulière ? C'est exactement ce que fait Jokes.tcl, il suffit donc de l'adapter. Sinon, je suis à peu près certain qu'il existe des tcls du genre "badwords". RE: Faire reagir le bot sur plusieur mot - djkenny - 04/03/2011 salut, voila un petit code que j avais fait pour apprendre à coder à quelqu'un tcl RE: Faire reagir le bot sur plusieur mot - NesCrex - 04/03/2011 Merci :D RE: Faire reagir le bot sur plusieur mot - djdu32 - 20/03/2011 Un petit up, tu peux utiliser une liste.. Code : set mots {
"fuck"
"merde"
"encul"
}
bind pubm * msg:pub
proc msg:pub {nick uhost handle chan}{
set text [lindex $arg 0]
if {[string match *$mots* $text]=""} {
putserv "NOTICE $nick :Ce mot à été blacklisté."
} else { return 0 }
}RE: Faire reagir le bot sur plusieur mot - djkenny - 20/03/2011 djdu32 a écrit :Un petit up, tu peux utiliser une liste..7 erreurs sur 12 linges :x c'est pas mal RE: Faire reagir le bot sur plusieur mot - NesCrex - 20/03/2011 C'est en reconnaissant ses erreurs que l'on progresse djkenny :p RE: Faire reagir le bot sur plusieur mot - djkenny - 20/03/2011 j vois pas trop l intérêt de poster du code remplis de bugs comme ca ni celui de poster pour coller bêtement ma signature ;) RE: Faire reagir le bot sur plusieur mot - djdu32 - 01/04/2011 Depuis le temps que je ne code plus, L'aide est un besoin, pas obligé d'être sans fautes. Donc tes commentaire je m'en passerai :) |