Script pour faire apprendre des definition a un bot

Soyez le premier à donner votre avis sur cette source.

Snippet vu 3 898 fois - Téléchargée 26 fois

Contenu du snippet

Bon on va me dire ke c un peu lamouze comme code mais bon c ma premiere source donc soyez indulgent svp

le script sert a faire apprendre des definition au bot
!apprends (ou !apprend pck on ma harcelé ac ca) mot definition
!def mot
!nb-def (mot optionel)
!oubli mot

pour config y sufit de faire /ap et le dialog s'ouvre

voila je pense que je n'ai rien oublié amusez vous bien :)

Source / Exemple :


on 1:LOAD:{
  echo -a Chargement du script !Apprends
  echo -a ===========================================
  if (%DossierDef == $null) { set %DossierDef $findfile($mircdir,!apprends.ini,1) }
  if (%DossierDef != $null) { 
    echo -a 4Definition trouvées dans 9 $+ %DossierDef
    var %lignes $ini(%DossierDef,0,0)
    echo -a 09 $+ %lignes 4definition trouvées dans9 %DossierDef
  }
  if (%networkapprends == $null) { set %networkapprends $network }
  echo -a ===========================================

}
on 1:UNLOAD:{
  echo -a ===========================================
  echo -a Dechargement des variables......
  if (%DossierDef != $null) { unset %DossierDef }
  if (%networkapprends != $null) { unset %networkapprends }
  if (%generalapvar != $null) { unset %generalapvar }
  if (%apprendsvar != $null) { unset %apprendsvar }
  if (%modeapscript != $null) { unset %modeapscript }
  if (%lastnickdef != $null) { unset %lastnickdef }
  if (%defvar != $null) { unset %defvar }
  if (%autooublisvar != $null) { unset %autooublisvar }
  if (%oublisvar != $null) { unset %oublisvar }
  if (%nbdefvar != $null) { unset %nbdefvar }
  echo -a variables du script !apprends effacées avec succes
  echo -a ===========================================

}

on 1:START:{ 
  echo -a 12 $+ $decode(U2NyaXB0ICFBcHByZW5kcyBwYXIgQWRhbWFydSBjaGFyZ+k=,m)
  hmake Script_apprends 150
}

on *:input:#:{
  if ($chan isin %chanduscriptapprends) && ($network isin %networkapprends) {
    if ($1 == !def) { .timer 1 0.1 script_de_def $2 $chan $nick } 
    if ($1 == $chr(63) && ($2 != $null) && (|rakka| !ison $chan)) { .timer 1 0.1 script_de_def $2 $chan $nick } 
    if ($1 == !apprends) { .timer 1 0.1 apprendre $2- }
    if ($1 == !apprend) { .timer 1 0.1 apprendre $2- }
    if ($1 == !oubli) { .timer 1 0.1 oubliagejation $2 $me $chan }
    if ($1 == !nb-def) { .timer 1 0.1 number_def $2 }
    if ($1 == !def-ver) { .timer 1 0.1 Apinfover }
  }
}
alias  Apinfover {
  if (%modeapscript == user) { var %Msg msg $chan } 
  if (%modeapscript == bot) { var %Msg .msg botserv say $chan }
  %msg Script apprends Version 1.2c Par Adamaru
}

on *:Text:*:#:{
  if (%generalapvar  == on) && ($chan isin %chanduscriptapprends) && ($network isin %networkapprends) {
    if ($1 == !apprends) { apprendre $2- }
    if ($1 == !apprend) { apprendre $2- }
    if ($1 == !def) { script_de_def $2 $chan $nick }
    if ($1 == $chr(63) && ($2 != $null) && (|rakka| !ison $chan)) { script_de_def $2 $chan $nick }
    if ($1 == !nb-def) { number_def $2 } 
    if ($1 == !oubli) { oubliagejation $2 $nick $chan }
    if ($1 == !def-ver) { Apinfover }

  }
}

alias apprendre {
  if (%apprendsvar == on) && (%generalapvar == on) {
    if (%modeapscript == user) { var %Msg msg $chan } 
    if (%modeapscript == bot) { var %Msg .msg botserv say $chan }
    if ($1 isnum) { %msg Désolé mais je ne suporte pas les nombres :p | halt }
    if (%Maxdef == $null) { var %Maxdef 5 }
    var %Lignes $ini(%DossierDef $+ ,$1,0)
    if ($2- == $null) { notice $nick commande erronée : syntaxe : !apprends mot definiton | halt }
    if ($1 != $null || $2- != $nul) {
      var %Lignes $calc(%Lignes + 1)
      if (%Lignes <= %maxdef) { 
        var %i 1
        while (%i < %Lignes) {
          if ($readini(%DossierDef $+ ,$1, $+ %i) == $2-) { %Msg Je connait deja cette definition | halt }
          inc %i
        }
        writeini -n %DossierDef $1 %Lignes $2- 
        %msg C'est bon $nick je retiendrais ca !!!
        unset %lastnickdef*
      }
      if (%Lignes > %maxdef) { %msg Nan désolé mais le nombre max de def pour " $+ $1 $+ " ( $+ %maxdef $+ ) a été atteind :p }
    }
  }
}

alias script_de_def {
  ;$1 c'est La def demandé
  ;$2 c'est le chan
  ;$3 c'est le pseudo
  if (%defvar == on) && (%generalapvar == on) {
    if (%modeapscript == user) { var %Msg msg $chan }
    if (%modeapscript == bot) { var %Msg .msg botserv say $chan } 
    if ($1 isnum) { %msg Désolé mais je ne suporte pas les nombres :p | halt }
    if ($1 == 0) { %msg Désolé mais je ne suporte pas les nombres :p | halt }
    if ($hget(Script_apprends,NoFlooD$051_ [ $+ [ $3 ] ]) == $3 $2) { 
      .notice $3 Tu doi attendre 10 secondes entre chaque !Def chaque abus te rajoute du temp d'attente
      hadd -mu10 Script_apprends NoFlooD$051_ [ $+ [ $3 ] ] $3 $2 
      halt 
    }
    hadd -mu10 Script_apprends NoFlooD$051_ [ $+ [ $3 ] ] $3 $2
    var %lignes $ini( $+ %DossierDef $+ , $1,0)
    if ($hget(Script_apprends,$1) == $2 $3) { %msg Tu ma deja demandé cette definition $3 | hadd -mu60 Script_apprends $1 $2 $3 | halt }
    hadd -mu60 Script_apprends $1 $2 $3
    if (%Lignes > 0) {  
      var %i 1
      while (%i <= %lignes) {
        %msg La definition de " $+ $1 $+ " est : $readini(%DossierDef $+ ,n,$1, $+ %i)
        inc %i
      }
    }
    if (%Lignes == 0) { %msg je ne connait pas la definition de " $+ $1 $+ " }
  }
}

alias oubliagejation {
  if (%generalapvar == on) {
    if (%modeapscript == user) { var %Msg msg $chan }
    if (%modeapscript == bot) { var %Msg .msg botserv say $chan }
    else { echo -a Erreur '%modeapscript non initialisé' dans la fonction oubli ! | halt }
    if ($0 == 1) { notice $1 commande erronée : syntaxe :  !oubli mot | halt }
    if ($0 < 2) { %msg Erreur 'Nombre de parametres incorrects' dans la fonction oubli ! | halt }
    if ($1 isnum) { %msg Désolé mais je ne suporte pas les nombres :p | halt }
    var %lignes $ini(%DossierDef $+ ,$1,0)
    if (%lignes == 0) { %msg je ne connaisait pas la definition de " $+ $1 $+" | halt }
    if ($2 == %propriodubot || $2 == $me) {
      .remini %DossierDef $1
      %msg j'ai oublié la definition de " $+ $1 $+ " !
    }
    else {
      if ($1 == $2) && ((%autooublisvar == on) || (%oublisvar == on)) {
        .remini %DossierDef $1
        %msg j'ai oubliée ta definition $1 !
      } 
      elseif (%oublisvar == on) {
        .remini %DossierDef $1
        %msg j'ai oubliée la definition de $1 !
      }
    }
  }
}

alias number_def {
  if (%nbdefvar == on) && (%generalapvar == on) {
    if (%modeapscript == user) { var %Msg msg $chan }
    if (%modeapscript == bot) { var %Msg .msg botserv say $chan }
    if ($1- isnum) { %msg Désolé mais je ne suporte pas les nombres :p | halt }
    if ($1 == $null) {
      var %lignes $ini(%DossierDef,0,0)
      if (%lignes != 0) {
        %msg Je connait deja %lignes definition $+ $iif(%lignes > 1 , s) pour le moment, le fichier ou sonts stoquées les definition pese $size($calc($file(%DossierDef).size /1024))
        halt  
      }
    }
    var %lignes $ini(%DossierDef,$1,0)
    if (%lignes == $null) {
      %msg Je ne connait pas de definition pour le moment !!! 
      halt
    }
    if (%lignes == 0 || %lignes == $null) && ($1 != $null) {
      %msg Je ne connait pas la definition de " $+ $1 $+ " 
      halt
    }
    %msg La definition de " $+ $1 $+ " contient %lignes ligne $+ $iif(%lignes > 1,s) et le fichier ou sonts stoquées les definition pese $size($calc($file(%DossierDef).size /1024))
    else { %msg Error }
    halt
  }
}

dialog script_apprends {
  title "Configuration"
  size -1 -1 101 234
  option dbu
  check "!Apprends", 1, 4 49 60 10
  check "!Def", 2, 4 59 50 10
  check "!Oubli", 3, 4 69 50 10
  edit "", 4, 3 164 95 10
  button "Ok", 5, 31 220 37 12
  text "Chan ou le script sera actif", 6, 3 156 93 8
  radio "User", 7, 4 143 26 10
  radio "Botserv", 8, 40 143 33 10
  text "Mode des messages", 9, 3 132 58 8
  box "Modes actifs", 11, 1 39 80 76
  edit "", 12, 73 25 14 10
  text "Nombre max de def par mot", 13, 1 27 70 8
  check "!Nb-def", 14, 4 89 50 10
  check "!Autooubli", 15, 4 79 50 10
  edit "", 16, 1 11 94 10
  text "Pseudo de l'admin du script", 17, 2 2 93 8
  check "General", 18, 4 99 50 10
  edit "", 10, 3 185 94 10
  text "Emplacement des definition", 19, 4 176 92 8
  edit "", 20, 3 207 94 10
  text "Serveurs ($network)", 21, 5 197 91 8
  ;button "Spécial", 22, 2 117 79 11
}

alias ap { opendialog script_apprends }

on *:dialog:script_apprends:init:*:{
  didtok script_apprends 4 C %chanduscriptapprends
  didtok script_apprends 12 C %maxdef
  didtok script_apprends 16 C %propriodubot
  if (%networkapprends != $null) { didtok script_apprends 20 C %networkapprends }
  if (%DossierDef != $null) { didtok script_apprends 10 C %DossierDef }
  if (%modeapscript == user) { did -c script_apprends 7 }
  if (%modeapscript == bot) { did -c script_apprends 8 }
  if (%apprendsvar == on) { did -c script_apprends 1 }
  if (%defvar == on) { did -c script_apprends 2 }
  if (%oublivar == on) { did -c script_apprends 3 }
  if (%autooublisvar == on) { did -c script_apprends 15 }
  if (%nbdefvar == on) { did -c script_apprends 14 }
  if (%generalapvar == on) { did -c script_apprends 18 }
}

on *:dialog:script_apprends:sclick:*:{
  if ($did == 5) {
    set %chanduscriptapprends $replace($did(script_apprends,4),$chr(10),$null)
    set %Maxdef $replace($did(script_apprends,12),$chr(10),$null)
    set %propriodubot $did(script_apprends,16)
    set %DossierDef $did(script_apprends,10)
    set %networkapprends $replace($did(script_apprends,20),$chr(13),$null)
    set %DossierDef $remove(%DossierDef,$chr(10),$chr(13))
  }

  if ($did == 7) { set %modeapscript user }
  if ($did == 8) { set %modeapscript bot }
  if ($did == 1) { 
    if (%apprendsvar != on) { set %apprendsvar on | halt }
    if (%apprendsvar == on) { unset %apprendsvar | halt }
  }
  if ($did == 2) {
    if (%defvar != on) { set %defvar on | halt }
    if (%defvar == on) { unset %defvar | halt }
  }
  if ($did == 3) {
    if (%oublivar != on) { set %oublivar on | halt }
    if (%oublivar == on) { unset %oublivar | halt }
  }
  if ($did == 14) {
    if (%nbdefvar != on) { set %nbdefvar on | halt }
    if (%nbdefvar == on) { unset %nbdefvar | halt }
  }
  if ($did == 15) {
    if (%autooublisvar != on) { set %autooublisvar on | halt }
    if (%autooublisvar == on) { unset %autooublisvar | halt }
  }
  if ($did == 18) {
    if (%generalapvar != on) { set %generalapvar on | halt }
    if (%generalapvar == on) { unset %generalapvar | halt }
  }
  if ($did == 22) { opendialog apprendrescriptbot }
}
menu menubar {
  Script-Apprends:/opendialog script_apprends
}

A voir également

Ajouter un commentaire

Commentaires

MichalleuH
Messages postés
6
Date d'inscription
dimanche 8 février 2004
Statut
Membre
Dernière intervention
18 août 2004

mouai je v pas me vanter mais je trouve pas ca très génial un bot c'eest deja maxi chiant alors si en plus on doit lui apprendre des chose c'est pas fini!!!

sinon ca va c'est plutot pas mal y'a mieu bien sur mais c'est bien 6/10 peu mieux faire
hisoka2501
Messages postés
266
Date d'inscription
lundi 19 mai 2003
Statut
Membre
Dernière intervention
7 juillet 2009

Note: pour le bouton Spécial c pa encore fini alors il é desactivé :p
hisoka2501
Messages postés
266
Date d'inscription
lundi 19 mai 2003
Statut
Membre
Dernière intervention
7 juillet 2009

merci la j'ai fait la config en dialog mtn :) et g mis une protection antis flood
je poste tt de suite :p
cs_SornDrixer
Messages postés
2087
Date d'inscription
jeudi 12 décembre 2002
Statut
Modérateur
Dernière intervention
30 janvier 2011
2
Tu aurais du créer un alias pour configurer, car manuellement c'est pas super ...
Heu sinon, bah l'idée du 'dictionnaire pour bot' a déjà était posté sur ce site, en beaucoup mieux fait ;)

Mais comme tu dis que c'est ta première source, c'est vraiment un bon début comparé à d'autres sources :)

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.