Selection d'un pseudo dans un fichier texte ou d'une ligne dans un fichier texte

rascass Messages postés 11 Date d'inscription mercredi 14 septembre 2005 Statut Membre Dernière intervention 20 mai 2007 - 20 oct. 2005 à 19:59
rascass Messages postés 11 Date d'inscription mercredi 14 septembre 2005 Statut Membre Dernière intervention 20 mai 2007 - 22 oct. 2005 à 17:49
salut j'ai un probleme,alors voila j'ai rajouter une commande sur mon quizz c'est celle si:
if ($1 == !topspeed) { .notice $chan $read(SCORES/SCRFILE.QT) }
sa marche impecable,il vas bien me chercher les temps dedans seulement le pb c'est que dans se fichier sont stocker chaque meilleure temps de chacun des users et yen a des centaines et y prends un temps au hasard dans le fichier, donc si un users veux trouver sont temps y vas etre obliger je ne c pas cb de fois !topspeed et vas creer du flood.
j'ai essayer egalement comme ceci
if ($1 == !topspeed*:#:) { .notice $chan $read(SCORES/SCRFILE.QT) }
mais comme cela sa marche pas du tout, si quelqu'un aurait une idées pour m'aider sa seré cool

8 réponses

COOLMAN002 Messages postés 969 Date d'inscription lundi 16 juin 2003 Statut Membre Dernière intervention 1 juillet 2012 1
20 oct. 2005 à 20:23
utilise /PLAY et ça devrait être mieux :)



(/help /PLAY)
0
rascass Messages postés 11 Date d'inscription mercredi 14 septembre 2005 Statut Membre Dernière intervention 20 mai 2007
20 oct. 2005 à 20:25
ok je regarderai sa demain je te remercie pour ta réponse
0
Nolson Messages postés 216 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 16 mars 2006
21 oct. 2005 à 11:47
Il est bien précisé dans l'aide que $read(test.txt) va lire une ligne au hasard du fichier test. Donc c'est normal ce qui se produit d'après ta syntaxe.
D'après ce que je lis, tu as des centaines de meilleurs temps dans ce fichier et tu voudrais que s'affiche le meilleur temps de la personne qui le demande avec !topspeed.
Alors n'utilise pas la commande /play car elle sert surtout à te lire tout le fichier et le mettre sur ton salon.
En fait il va falloir que tu ailles repérer le pseudo dans se fichier et en donner le score correspondant.

Je suppose que ton fichier doit être de la forme :
pseudo1 score1
pseudo2 score2
pseudo3 score3

Si oui, alors ton $read(SCRFILE.QT) devient $read(SCRFILE.QT,s,$nick)
Ce qui veut dire qu'il va lire ($read) dans ton fichier (SCRFILE.QT) la ligne débutant (s) par le pseudo ($nick) de la personne qui le demande et qu'il va retourner son score.
En revanche si la personne qui demande n'a pas encore de score ca va planter tu dois mettre un test avant pour verifier qu'il existe. Ta ligne devient :

if ($1 == !topspeed && ($read(SCRFILE.QT,s,$nick))) { .notice $chan Le record de $nick est de $ifmatch }
Cela veut dire si le joueur tape !topspeed et que son score existe alors on envoie une notice au salon en donnant son score.

Pour être sur du format de tes données, montre-nous un quelques lignes de ton fichier SCRFILE.QT
0
COOLMAN002 Messages postés 969 Date d'inscription lundi 16 juin 2003 Statut Membre Dernière intervention 1 juillet 2012 1
21 oct. 2005 à 13:42
Ah oui, effectivement !



J'avais mal compris sa question :\
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
rascass Messages postés 11 Date d'inscription mercredi 14 septembre 2005 Statut Membre Dernière intervention 20 mai 2007
22 oct. 2005 à 16:47
salut merci de vos réponse,dsl pour mon temps de réponse avec mon taff suis bien occupé effectivement en utilisant play sa deroule tout le fichier j'avais coder comme cela if ($1 == !topspeed) { play $nick SCORES/SCRFILE.QT }
sinon voila comment est fait mon fichier SCRFILE.qt
[qtime]
Scribeus=18.297
NiTro-Z=1.813
dragon_vert=2.5
snoopy83=4.578
mimie=4.406
gregg83=2.203
roland-cules=5.047
Noune77=2.641
Murderdolls=6.703
Galaad=5.672
bb=2.438
blasco=10.36
Marie_Jo=2.656
poisson_rouge=7.953
0
rascass Messages postés 11 Date d'inscription mercredi 14 septembre 2005 Statut Membre Dernière intervention 20 mai 2007
22 oct. 2005 à 17:32
voila un grand merci sa marche j'ai juste legerement modifier ta ligne car le quizz utilise $getread il est coder comme sa,pas simple se triviabot,surtout pour moi qui ne sait pas coder je regarde juste comment sont fait les code et essaye de les adapter,par contre un petit truc je ne sait pas si c'est possible immaginont je veu taper !topspeed rosedessables pour consulter son temps,il vas bien me chercher son temps mais comme msg en notice je recoit le record de yozes et de 10.234 alors que vu que je tape !topspeed rosedessables je devrait avoir plutot le record de rosedessable est de ....,en faite il attribue le record a celui qui tape la commande dans le salon,ya t'il moyen de modifier,enfin c'est pas bien grave sa marche c'est le principale
0
COOLMAN002 Messages postés 969 Date d'inscription lundi 16 juin 2003 Statut Membre Dernière intervention 1 juillet 2012 1
22 oct. 2005 à 17:45
en reprenant le code de Nolson:



if ($1 == !topspeed && ($read(SCRFILE.QT,s,$iif($2,$2,$nick)))) { .notice $chan Le record de $nick est de $ifmatch }



Avec ça, tu tapes:



!topseed PSEUDO



Si tu mets pas PSEUDO, ça cherchera ton score
0
rascass Messages postés 11 Date d'inscription mercredi 14 septembre 2005 Statut Membre Dernière intervention 20 mai 2007
22 oct. 2005 à 17:49
ok merci c'est sympa,est ce que par hasard tu c'est ou je pourré me procurer un bon tuto sur comment creer les variables en francais,car je v essayer de me creer une variables du fichier SCRFILE.QT pour faire d'otre chose par la suite
0
Rejoignez-nous