Script pour faire apprendre des definition a un bot

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

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.