voici un tres petit boude de code permettant de faire un systeme de Quote
sans dialogue , ni boutons , ni rien de tres grandiose .
Avant de copier le code creer dans le repertoire racine de votre script
un fichier nommé quote.txt
Source / Exemple :
;=== Quote par Asone ===
on 1:input:#: {
If ( $$1 == !quote ) { /timer1 1 1 /msg # $read(quote.txt, $$2) }
if ( $$1 == !write ) { /write quote.txt $$2- | /echo quote mémorisé }
}
;=== fin du systeme de Quote ===
Conclusion :
je vais détailler le code pour que vous puissiez le comprendre et le modifier .
---- commande ! quote ----
cette ligne de code fait en sorte que lorsque VOUS inserer un mot le script va réagir .
- If ( $$1 == !quote ) { /timer1 1 1 /msg # $read(quote.txt, $$2) } *
le * If ( $$1 == !quote ) * signifie que si le premier mot de votre phrase est !quote il va executer l'action suivante : * { /timer1 1 1 /msg # $read(quote.txt, $$2) } *
timer 1 1 1 ne represente qu'un temps de pose , permettant de donner un petit délai entre votre phrase et la réaction du script .
/msg # $read(quote.txt, $$2 ) -> vous allez dire un MESSAGE sur le CHAN actuel qui va LiRE le fichier Quote.txt a la ligne $$2 ( $$2 represente en fait le deuxieme mot de la phrase que vous aurez prononcé .. il faudra que ce soit un numero pour que la ligne choisi puisse etre lu )
ex : !quote 1 ( il lira le quote 1 du fichier quote.txt )
----- commande !write ---
if ( $$1 == !write ) { /write quote.txt $$2- | /echo quote mémorisé }
}
si le mot 1 est !write il executera * { /write quote.txt $$2- | /echo quote mémorisé }
} *
/write signifie qu'il va ecrire sur quote.txt $$2- ( ici $$2- est le reste la phrase que vous aurez dit )
le /echo quot mémorisé ne servira qu'a vous prevenir que le script s'est bien executé .
ex : !write whaou : superbe tes chaussettes .
16 janv. 2006 à 13:20
if ($1 == "e) { /write quote.txt $2- }
if ($1 == &del) { /write -dl $2 quote.txt }
if ($1 == &read) {
if ($2 isalpha) && ($2 != $null) { .timer 1 1 /say 3Quote : $replace($read(quote.txt,w,* $+ $2- $+ *),$2-, $+ $2- $+ ) }
elseif ($2 isalnum) && ($2 != $null) { .timer 1 1 /say 3Quote $2 : $read(quote.txt,$2) }
else { .timer 1 1 /say 3Quote : $read(quote.txt) }
}
}
Voilà mon system de quotes.
Il peut lire des quotes au hazard, ou il recherche par rapport au numero de ligne ou par rapport à un texte. Il souligne aussi la partie du texte recherchée.
Par contre, quand je fais une recherche sur un mot, il commence la recherche à la premiere ligne, donc si j'ai le même mot à la deuxième ligne, et bien ça ne le citera jamais.
Si vous savez comment faire pour qu'il lise au hazard des lignes mais qui comportent le mot recherché, merci de m'expliquer comment procéder.
Merci.
26 juil. 2004 à 04:48
c pas mal aussi kand on peu effacer un quote..... -.-"
je site :
on 1:input:*:{
If ( $$1 == !quote ) { .timer1 1 1 /msg # $read(quote.txt, $$2) }
if ( $$1 == !add ) { /write quote.txt $$2- | .timer1 1 1 /echo -a $timestamp 2(Quote) 4 quote Mémorisé ! }
if ( $$1 == !del ) { /write -dl $+ $$2 quote.txt | .timer1 1 1 /echo -a $timestamp 2(Quote) 4 quote EffaCé ! }
if ($1 == !nombre) { .timer1 1 1 /msg $chan J'ai $+ $lines($mircdirquote.txt) $+ quote(s) enregistrée(s). }
}
Voila :)
Air-CoOleD -.-"
2 sept. 2003 à 20:43
29 août 2003 à 13:09
28 août 2003 à 21:14
et puis si ça t'éclate de croire que j'me plante ben éclates toi j'm'en fiche comme de l'an 40 :)
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.