cs_simoi
Messages postés87Date d'inscriptionsamedi 1 janvier 2005StatutMembreDernière intervention19 juillet 2008
-
28 mai 2006 à 18:01
cs_simoi
Messages postés87Date d'inscriptionsamedi 1 janvier 2005StatutMembreDernière intervention19 juillet 2008
-
12 juin 2006 à 18:38
bsr
avec cette fonction "$read(mt.txt) , est possible de la paramettrer pour que le mot ou la phrase
tirée au sort,ne soit tirée qu'une seule fois?
merci
cs_PaDa
Messages postés1804Date d'inscriptionmardi 15 juillet 2003StatutMembreDernière intervention22 septembre 20095 31 mai 2006 à 09:29
Yeurk, si le fichier fait 8000 lignes la var %rrr va pas exploser après qq appels ?
La bonne soluce selon moi (je suis tatillon) c'est de charger le
fichier dans un buffer ou autre .txt temporaire, et de retirer le
$readn à chaque appel...
Le hic c'est que j'ai un peu la flemme de faire ca sans mirc sous la main :)
RCA ArKanis
Messages postés1287Date d'inscriptionmercredi 21 avril 2004StatutMembreDernière intervention21 février 2009 4 juin 2006 à 13:47
il y a un problème avec ton code, c'est qu'une fois que toutes les lignes auront été dites, bah ça sera bloqué ^^
tu pourrais aussi plus simplement mettre tes questions dans un .ini, utiliser /hload -i pour remplir ton hashtable, et delete un item à chaque fois que tu l'utilises
cad :
alias xread {
var %nb = $r(1,$hget(Questions,0).item)
if (!%nb) {
if ($hget(Questions)) hfree Questions
hmake Questions 100
hload -i Questions Questions.ini Questions
var %nb = $r(1,$hget(Questions,0).item)
}
if (!$hget(Questions,%nb)) return
msg #tonchan $hget(Questions,%nb)
hdel Questions %nb
}
ça devrait marcher, si ton fichier Questions.ini se présente comme ceci :
[Question]
1=Question ?
2=2e Question ...
...
tu pourrais d'ailleurs mettre les réponses dans le même fichier avec
[Réponses]
1=Réponse de la 1ere question
Pour l'alias xread, il devrait marcher dès la 1ere utilisation. Dès que toutes les questions ont été dites, il recommence