|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
Sujet : probleme fichier.txt [ Divers / Trucs & Astuces ] (Bioxyd)
Informations & options pour cette discussion
dimanche 9 mars 2008 à 23:10:26 |
probleme fichier.txt

Bioxyd
|
Bonsoir tout le monde
Voila je vous explique mon problème je suis entrain de créer un bot script pour un chan de blague.
Je voudrais que le bot lise un texte aléatoire qui va être dans un fichier.txt
Jusque la j'arrive à le faire avec ce code :
on *:text:!blague_start:#:{ timerblague 0 40 /msg $chan $!read(blague.txt, %i 1) | inc %i }
on *:text:!blague_stop:#:{ timerblague off }
Mes le problème ses que je voudrais pouvoir lire 4 lignes à la fois comment je pourrais faire SVP
|
|
|
dimanche 9 mars 2008 à 23:46:06 |
Re : probleme fichier.txt

wims
|
Tu fait ton compteur avec une variable globale de nom %i, c'est pas très prudent, pour lire 4 lignes, fait simplement ce que tu fait 4 fois :
on *:text:*:#:{ if ($1 == !blague_start) { var %a 4 while (%a) { inc %cmpt .timerblague $+ %a 0 40 msg $chan $!read(blague.txt,%cmpt ) if (%cmpt = $lines(blague.txt)) %cmpt = 0 %a = %a - 1 } } elseif ($1 == !blague_stop) .timerblague* off }
|
|
|
dimanche 9 mars 2008 à 23:53:45 |
Re : probleme fichier.txt

PaDa
|
"pour un chan de blague" < ça m'a beaucoup fait rire, merci :o)
Pour ton problème, ça dépend si tu dois lire 4 lignes à chaque fois ou non. Si tu dois lire 4 lignes à chaque fois, c'est facile, je t'explique comment faire en dessous (ce forum n'est pas là pour donner des codes tout cuits....). Si non, il faut que le bot sache comment commencer & s'arrêter, donc tu devras structurer ton fichier en conséquence.
Si c'est bien 4 lignes à chaque fois : - la première blague prend les lignes 1 à 4 - la seconde les lignes 5 à 8 - etc.
Donc : - tu gardes ton "timerblague" mais tu renvoies sur un alias : genre "timerblague 0 40 direblague" - et donc tu te fais un alias "alias direblague { ... }" - dans cet alias il faut : 1- compter le nombre de lignes dans ton fichier grace à $lines et l'enregistrer dans une variable locale, par exemple %lines 2- définir une blague au hasard qui sera lue : tu cherches à trouver un nombre aléatoire, multiple de 4, entre 1 et %lines : donc : $rand(1,%lines) te donne un de ces nombres mais sans le côté "multiple de 4", qui peut s'obtenir par "$calc(X % 4 * 4)" où X est à remplacer bien sûr 3- ensuite, tu lis les 4 lignes en commençant à la ligne trouvée à l'étape précédente, et tu en lis 4, ça tu devrais y arriver (au besoin, /help $read, voir /help while si tu veux faire un truc propre)
Améliorations possible : utilisation de /play (à vérifier... je n'ai jamais trop utilisé)
Bon courage ! Si tu n'arrives pas à coder certaines de ces étapes, n'hésite pas à revenir, mais par pitié les gens, ne lui donnez pas un code tout cuit :o)
-- Pada
|
|
|
dimanche 9 mars 2008 à 23:54:50 |
Re : probleme fichier.txt

PaDa
|
Ah raté. Vilain wims !
(au passage, Bioxyd, il y a des trucs qui ne veulent rien dire dans ton code de départ, c'est un miracle si ça marche)
-- Pada
|
|
|
lundi 10 mars 2008 à 00:00:39 |
Re : probleme fichier.txt

wims
|
Je lui ai simplement fait la while, il avait le reste... Le seul truc bizarre dans son code c'est ça : , %i 1) Ceci reviens a prendre une phrase aléatoire dans le fichier (je pense que c'est un typo) Il pourrait utiliser /play, mais c'est plus compliqué.
|
|
|
lundi 10 mars 2008 à 08:43:34 |
Re : probleme fichier.txt

PaDa
|
Y'a aussi le " | inc %i " derrière :-) Je penche plutôt pour une boucle while copiée/collée sans avoir été comprise avant, puis des essais successifs de [Suppr.] pour corriger les erreurs.
-- Pada
|
|
|
lundi 10 mars 2008 à 20:14:34 |
Re : probleme fichier.txt

wims
|
Le | inc %i n'est pas bizarre en soi, il sert uniquement de compteur, histoire de faire les blagues une par une, de la première ligne a la $lines(blague.txt) $+ ieme :) Bon sinon, ya des erreurs dans le/son/mon code (on parle de betement copier :( ?) :
Il voulait bel et bien l'effet "aleatoire", juste 4 fois, le code devient plus court !! :
on *:text:*:#:{ if ($1 == !blague_start) { var %a 4 while (%a) { .timerblague $+ %a 1 $calc(44 - %a) msg $chan $!read(blague.txt) dec %a } elseif ($1 == blague_stop) .timerblague* off }
En revanche, il est possible que deux même lignes sortent plusieurs fois durant les 4 /msg, j'ai même fais en sorte que les timers est une seconde d'écart
|
|
|
Cette discussion est classé dans : fichier, problème, probleme, txt, blague
Répondre à ce message
Sujets en rapport avec ce message
problème de lag sur un $read fichier.txt [ par Mauricelepoisson ]
Bonjour,Je me suis amusé à faire un petit bot codé en mIRC, qui "lit" des textes et j'ai un souci de temps de réponse, en effet, le début du texte est
espaces [ par eMule ]
salut, je vous explique mon probleme j'aimerai ecrire dans un fichier (texte par exemple) a b mais en ecrivant caractere par caractere c'est a dire w
/write -a textefile.txt %var [ par LOLESKE88 ]
Bonjour, /write -a textefile.txt %var J'utilise cette commande pour écrire une variable dans un fichier txt, mais j'aurais voulu savoir commen
creer des tableaux dans un fichier .txt en langage tcl [ par flost ]
Bonjour,j'ai crée un programme en TCL qui me calcul des parametres à partir de données disponibles dans un fichier .citiMon but est maintenant:1) de c
problème avec windrop [ par julie13 ]
BonjourAvec bien du mal j'ai configuré un windrop que j'ai téléchargé tout fonctionnait bien j'ai pu me connecter sans soucis, puis j'ai voulu rajout
On text et input [ par MegaSmax ]
Bonjour, j'ai un petit probleme, je realise un script permettant d'enregistrer les url affichées sur des chans dans un fichier url.txtJe voudrais savo
Information dans un fichier ini ou txt [ par Zioa ]
Bonjour,j'aurait voulu savoir comment je peut stocker des information dans un fichier ini ou txt puis apret recuperait les info que j'ai mis dedans Me
Supprimer une ligne dans un fichier .txt [ par AwayZ ]
Voila je voudrais savoir comment on supprime une ligne dans un fichier .txt en tappant !suppr n°
Aide Socket & picwin [ par _VeSpArO_ ]
Salut tout le monde je voulai savoir comment stocker un fichier txt d'un site dans un fichier .txt ou autre dans mon mirc.CAD: telecharger par exemple
Aide [ par _VeSpArO_ ]
Je voulai savoir si c'était possible de savoir combien de fois se trouver par exemple le mot trou dans tel fichier .txt puis de l'effacer puis le rem
Livres en rapport
|
Téléchargements
Logiciels à télécharger sur le même thème :
Comparez les prix Nouvelle version
|