Auto phrase reponse ( pour bot )

Soyez le premier à donner votre avis sur cette source.

Snippet vu 5 961 fois - Téléchargée 25 fois

Contenu du snippet

Ben voila un auto phrase reponse :
ben c un dialog ou tu peux ajouter par exemple tu met ta phrase : "salut" la phrase du bot "salut !!" et quand kelk'1 dit salut ben le bot di salut !!
Le prob ki est chiant c'est kil apcept pas $nick donc j'pense pas kil apcept les $read , .. etc

Bon voila ossi vous devez avoir mdx et le mettre dans le repertoire du bot c dans systeme ex: c:/mon bot/systeme/mdx.dll

avec view.dll ki est avec :]

Source / Exemple :


on *:text:*:#:{
  var %textrecu = $correction($1-)
}

alias correction {
  var %textrecu = $1-
  var %i = 1
  while %i <= $numtok(%textrecu,44) {
    var %text.temp = $gettok(%textrecu,%i,44)
    var %ii = 1
    while %ii <= $numtok($readini systeme/correct.ini Correction token1,44) {
      var %temp1 = $gettok($readini systeme/correct.ini Correction token1,%ii,44)
      var %temp2 = $gettok($readini systeme/correct.ini Correction token2,%ii,44)
      if %temp1 == %text.temp { var %textrecu = $replace(%textrecu,%text.temp,%temp2) }
      inc %ii
      if ( %temp2 == %textrecu ) {
        //msg $chan %temp1
      }
    }
    inc %i
  }
  return %textrecu
}

alias autof { $opens(autof) }
alias mdx_fullpath { return $+(",$mircdir $+ \systeme\mdx.dll,") }

alias mdx { dll $mdx_fullpath $1- }

alias mdxinit {
  dll $mdx_fullpath SetMircVersion $version
  dll $mdx_fullpath MarkDialog $dname
}

dialog autof {
  size -1 -1 300 204
  title "Auto-Phrase Bot"
  button "Ajouter",1,5 134 93 30, flat 
  button "Supprimmer",2,200 135 94 30, flat 
  button "Oki",3,120 135 60 30,ok cancel flat
  list 4,8 7 289 120,extsel size
  button "",1000,0 0 0 0,ok hide
}

on *:dialog:autof:init:0:{
  mdxinit
  mdx SetControlMDX $dname 4 listview nosortheader rowselect showsel single flatsb headerdrag labeltip report > $mircdir $+ \systeme\views.mdx
  did -i $dname 4 1 headerdims 150 133
  did -i $dname 4 1 headertext Sa phrase $chr(9) Votre phrase
  autofinit
}

on *:dialog:autof:sclick:*:{
  if ( $did == 1 ) { dialog -m ajout ajout }
  elseif ( $did == 3 ) { dialog -x autof autof }
  elseif ( $did == 2 ) {
    if $did(4).sel {
      var %licor = $calc($did(4).sel - 1)
      set %texte1 $gettok($readini systeme/correct.ini Correction token1,%licor,44)
      set %texte2 $gettok($readini systeme/correct.ini Correction token2,%licor,44)
      var %tempe1 = $remtok($readini systeme/correct.ini Correction token1,%texte1,1,44) 
      var %tempe2 = $remtok($readini systeme/correct.ini Correction token2,%texte2,1,44) 
      writeini systeme/correct.ini Correction token1 %tempe1 $+ ,
      writeini systeme/correct.ini Correction token2 %tempe2 $+ ,
      autofinit
    } 
    Else { var %erreurr = $input(Selectionne une ligne !,300,Avertissement) }
  }
}

alias autofinit {
  var %lollol = 1
  did -r autof 4
  while %lollol <= $numtok($readini systeme/correct.ini Correction token1,44) {
    var %temp1 = $gettok($readini systeme/correct.ini Correction token1,%lollol,44)
    var %temp2 = $gettok($readini systeme/correct.ini Correction token2,%lollol,44)
    did -a autof 4 $tab(%temp1,%temp2)
    inc %lollol
  }
}

alias tab {
  if (!$1) return $chr(9) | var %t,%w = 1
  while ($($+($,%w),4)) { %t = $instok(%t,$($+($,%w),4),0,9) | inc %w }
  return %t
}

dialog Ajout {
  size -1 -1 129 131
  title "Ajouter phrase"
  text "Phrase du bot",1,23 8 82 17
  text "Votre phrase",2,21 56 78 17
  button "Valider",3,32 106 60 19, cancel  ok  flat 
  edit "",4,10 30 104 22
  edit "",5,11 75 104 22
}
on *:dialog:Ajout:init:*:{
  mdxinit
}
on *:dialog:ajout:sclick:3:{
  if $did(4) == $null || $did(5) == $null { var %erreurr = $input(Tu doit remplir les champs de texte !,300,Avertissement) | halt }
  if $chr(44) isin $did(4) || $chr(44) isin $did(5) { var %erreurr = $input(Ne m'est pas de virgule !,300,Avertissement) | halt } 
  Else {
    var %textcorec1 = $did(4)
    var %textcorec2 = $did(5)
    var %lollol = 1
    while %lollol <= $numtok($readini systeme/correct.ini Correction token1,44) {
      var %temp1 = $gettok($readini systeme/correct.ini Correction token1,%lollol,44)
      var %temp2 = $gettok($readini systeme/correct.ini Correction token2,%lollol,44)
      if %temp1 == %textcorec1 { var %erreurr = $input(phrase déja entrer !,300,Avertissement) | halt }
      if %temp2 == %textcorec2 { var %erreurr = $input(phrase déja entrer !,300,Avertissement) | halt }
      inc %lollol
    }
    if $readini systeme/correct.ini Correction token1 != $null { writeini systeme/correct.ini Correction token1 $readini systeme/correct.ini Correction token1 $+ %textcorec1 $+ , | writeini systeme/correct.ini Correction token2 $readini systeme/correct.ini Correction token2 $+ %textcorec2 $+ , }
    Else { writeini systeme/correct.ini Correction token1 %textcorec1 $+ , | writeini systeme/correct.ini Correction token2 %textcorec2 $+ , }
  }
  autofinit
}

Conclusion :


Voila pour le ouvrir faite /dialog -m autof autof

Merci de vos commentaire :]

A voir également

Ajouter un commentaire

Commentaires

minerbe
Messages postés
217
Date d'inscription
dimanche 17 juin 2007
Statut
Membre
Dernière intervention
13 février 2012

claire tu te complique trop la vie ^^. Sinon tu peut juste faire
ON *:TEXT:*:#:{
if (TON-MOT isin $1-) { .msg $chan $nick et la réponce ? }

et après enchainer que avec if (TON-MOT isin $1-) { .msg $chan $nick ...... }

voila voila tu pass de 121 ligne a 2,3 ^^
cs_maaars
Messages postés
111
Date d'inscription
dimanche 31 août 2003
Statut
Membre
Dernière intervention
14 août 2005

en plus pour faire chier si je met un timer avec un salut toutes les 2 secondes il fait quoi ton bot ? :p
NaNo45
Messages postés
81
Date d'inscription
mercredi 2 juillet 2003
Statut
Membre
Dernière intervention
29 juin 2004

mdr surfman a raison ;)
Arkh4N
Messages postés
2
Date d'inscription
mercredi 10 septembre 2003
Statut
Membre
Dernière intervention
11 septembre 2003

lol
cs_surfman
Messages postés
46
Date d'inscription
samedi 1 mars 2003
Statut
Membre
Dernière intervention
16 septembre 2008

bah non.... ca facilite pas... bon certe ya des choses que l'on connait pas et que on decouvre ( comme moi g decouvert kelke truc ) mais sinon c bien plus simple de faire comme je fait ... meme remplacer TONMOT par une variable modifier par une petite interface ki ajoute les mots etc...
bon bref
gg quand meme pour tps deffort

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.