Communauté Eggdrop
transformation du script mirc en script tcl - 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 : transformation du script mirc en script tcl (/showthread.php?tid=223)

Pages : 1 2


RE: transformation du script mirc en script tcl - fedora - 03/12/2009

bonjour,

Question: Pour détecter l'age de l'user qui joins le salon faudrait'il pas utiliser un bind raw ? l'age n'était il pas dans l'ident ou le realname ?

peut tu nous monter un whois pour nous indiquer ou ce trouve l'age à détecter ?

cordialement


RE: transformation du script mirc en script tcl - heretoc - 03/12/2009

Dans un applet l'age est le realname.
Hors un script utilise la plus part du temps le realname pour sa propre pub "Exemple : BSMax"
Et pour detecter l'age de l'user il faut qu'a sont join il y est un whois sur sont realname donc avec une raw

Je regarderais ce soir si j'ai toujours ce tcl car je l'avais corriger et modifier comme je le santé


RE: transformation du script mirc en script tcl - fedora - 03/12/2009

Oky merci pour ton info donc oui pour résoudre sont souci le mieux c'est qu'il utilise le bind raw et le whois code trouvable dans le forum Smile


cordialement


RE: transformation du script mirc en script tcl - Marc - 03/12/2009

Non moi la réponse de l'âge serais donner en privé !
L'user dirais "J'ai 17 ans" exemple et le script entrerais en fonction Wink


RE: transformation du script mirc en script tcl - fedora - 03/12/2009

heu j'ai du louper un truc .

dans ce cas tu fait un bind pub et si une personne tape 14 ans bah sa lui envoie une notice mais bon sa servira a rien ! le mieux c'est qu'il detect dans le realname l'age et ton bot fait la modération


RE: transformation du script mirc en script tcl - heretoc - 03/12/2009

Alors voila le tcl que tu souhaite ...
Il faut lui dire ton age en priver pour qu'il te sajoin sur le bon salon qui devrais (théoriquement) etre en mode +is
tcl
bind join - #sexe proc:join
bind msg - * msg:all
 
proc proc:join {nick host hand chan} {
 global botnick
   puthelp "PRIVMSG $nick Bonjour $nick,pour pouvoir rentrer sur le salon il faut que tu me donne ton age"
   puthelp "PRIVMSG $nick Pour cela tape la commande </msg $botnick age ton_age> exemple </msg $botnick age 45>"
   puthelp "PRIVMSG $nick Si vous ettes mineurs et que vous passer cette securiter le tchat ne sera pas tenue responsable de sa."
   return 0
}
 
proc msg:all {nick host hand text} {
 
   set arg [split $arg]
   set age [lindex $arg 0]
 
   if {[isnum $age]} {
      if {$age < 18} {
         puthelp "PRIVMSG $nick :Tu n'as pas l'âge requis pour rejoindre le salon"
         puthelp "mode #sexe +b $nick"
		 puthelp "mode #sexe +b $host"
		 puthelp "mode #sexe-bon +b $nick"
		 puthelp "mode #sexe-bon +b $host"
         puthelp "SAPART $nick #sexe"
         return 0
      } else {
         puthelp "PRIVMSG $nick :Votre âge est correcte"
		 puthelp "SAPART $nick #sexe"
		 puthelp "SAJOIN $nick #sexe-bon"
         return 0
      }
   }
}
 
proc isnum {string} {
  if {([string compare $string ""]) && (![regexp "\[0-1\]\[0-7\]\$" $string])} then {return 1}
  return 0
}



PS : J'espere que je met le bon code car j'en est des dixaines


RE: transformation du script mirc en script tcl - Marc - 03/12/2009

Il a l'aire bien coder mais il ne réagi toujours pas ! :/


RE: transformation du script mirc en script tcl - fedora - 03/12/2009

essaye
tcl
bind join - "#sexe *" proc:join





RE: transformation du script mirc en script tcl - Marc - 04/12/2009

Soit je suis aveugle, soit ...
Quelqu'un pourrais me dire se qui ne marche pas la dessus dans ce code :/

tcl
bind join - {#ircb_eggs*} join:ageWarning
bind msgm - * msg:ageWarning
 
proc join:ageWarning {nick uhost hand chan text} {
global botnick
# Si c'est le bot, on ignore
if {$nick eq $botnick} {
putquick [concat PRIVMSG $chan :\[$chan\] Salut..]
 
}
 
proc msg:ageWarning {nick uhost hand text} {
 
# On verifie l'entré
 
if {![regexp -nocase {ai .+?([0-9+]).+? ans} -> age]} {
 
# On vérifie l'age
 
if {$age >= 18} {
 
# Invite de l,user sur #-18ans
 
putquick [concat INVITE $nick #-18ans]

# Envoie de notice au Op
 
putquick [concat NOTICE @#ircb_eggs :$nick déclare avoir - de 18 ans.]
 
}
}
}





RE: transformation du script mirc en script tcl - fedora - 04/12/2009

il manquerais pas la proc
tcl
contact


?

essaye de voir avec le code de Heretoc. si possible donne nous plus d'info si tu à des erreur en pl ou autre stp .


RE: transformation du script mirc en script tcl - heretoc - 04/12/2009

Le code que j''ai mis fonctionne, je l'est essayer en local...

Quand j'arrive sur sexe (qui est un salon en +m) le robot vient me voir en priver et me demande mon age.
Je lui repond avec un age de plus de 18ans et il me sajoin sur #sexe-bon (qui est un salon +is) puis me sapart de #sexe
Quand je lui donne un age inferieur à 18 il me sapart de #sexe et me bannis de #sexe et #sexe-bon


RE: transformation du script mirc en script tcl - Marc - 04/12/2009

heretoc a écrit :Le code que j''ai mis fonctionne, je l'est essayer en local...

Quand j'arrive sur sexe (qui est un salon en +m) le robot vient me voir en priver et me demande mon age.
Je lui repond avec un age de plus de 18ans et il me sajoin sur #sexe-bon (qui est un salon +is) puis me sapart de #sexe
Quand je lui donne un age inferieur à 18 il me sapart de #sexe et me bannis de #sexe et #sexe-bon

Celui que je vien de mettre ?


RE: transformation du script mirc en script tcl - Marc - 04/12/2009

fedora a écrit :il manquerais pas la proc
tcl
contact


?

essaye de voir avec le code de Heretoc. si possible donne nous plus d'info si tu à des erreur en pl ou autre stp .

[concat] n'est pas une proc, je ne sais pas comment vous l'expliquer mais si un pro du tcl pourrais l'expliquer qu'est-ce qu'est concat sa serrais sympa !


RE: transformation du script mirc en script tcl - heretoc - 04/12/2009

Lis bien mon precedent post ^^

Sinon pour le concat => http://www.eggdrop.fr/Concat