[..] Fonction high score

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
avest007
Niveau 1
Niveau 1
Messages : 2
Enregistré le : lun. 10 nov. 2008 18:09
Status : Hors ligne

[..] Fonction high score

#1

Message par avest007 »

Bien le bonjour,
Voila alors j'explique mon problème :
pour mon premier script AutoIT j'ai repris le jeu du "plus ou moins" de Timmalos pour l'améliorer au maximum et pour m'entrainer.
J'ai donc décidé de créer une fonction "high-score" permettant de garder en mémoire les 5 meilleur résultats effectués mais je suis confronté a un problème :
J'ai fait cinq parties de test pour vérifier si le prog enregistrait bien les High-score dans le bon ordre et voici mes résultats :
1° partie : 6 coups, je vérifie et le 6 est en première position rien d'anormal
2° partie : 2 coups, le 2 prends la place du 6 et le 6 va en deuxième position, tout va bien
3° partie : 1 coup, le prends la place du 2 qui prends la place du 6 qui va en troisième position
4° partie : 13 coups, et la c'est le drame le 13 va a la place du 1 ...
5° partie : 6 coups, le 6 prends la place du 13 en première position et le 13 passe en deuxième

Je vous joint la fonction :
► Afficher le texte
Et le .INI
► Afficher le texte
Je vous remercie d'avance de prendre en compte mon problème =)
Cordialement, Avest007
Avatar du membre
jbnh
Niveau 11
Niveau 11
Messages : 1932
Enregistré le : ven. 02 mai 2008 14:54
Localisation : Bruxelles
Status : Hors ligne

Re: [..]Fonction high score

#2

Message par jbnh »

Voila le code en gros, à toi d'adapter avec ta fonction. La fonction utilisée est arraysortnum qui avait été fait par jon sur le forum anglais.
► Afficher le texte
Balise [..] devant votre requête en cours, [R] quand résolu | Pas de message concernant les bots !

Merci
Avatar du membre
timmalos
Niveau 11
Niveau 11
Messages : 1970
Enregistré le : dim. 18 mai 2008 15:16
Status : Hors ligne

Re: [..]Fonction high score

#3

Message par timmalos »

J'ai pas cherché a savoir pourquoi, mais ca marche en inversant de la sorte:

Code : Tout sélectionner

Func Write_high_score(ByRef $nombre_de_coups)

$top1 = IniRead(@ScriptDir & "\high_score.INI", "score", "top1", 0)
$top2 = IniRead(@ScriptDir & "\high_score.INI", "score", "top2", 0)
$top3 = IniRead(@ScriptDir & "\high_score.INI", "score", "top3", 0)
$top4 = IniRead(@ScriptDir & "\high_score.INI", "score", "top4", 0)
$top5 = IniRead(@ScriptDir & "\high_score.INI", "score", "top5", 0)


    If $nombre_de_coups < $top1 then
            IniWrite ( @ScriptDir & "\high_score.INI", "score", "top1",$nombre_de_coups )
            IniWrite ( @ScriptDir & "\high_score.INI", "score", "top2",$top1 )
            IniWrite ( @ScriptDir & "\high_score.INI", "score", "top3",$top2 )
            IniWrite ( @ScriptDir & "\high_score.INI", "score", "top4",$top3 )
            IniWrite ( @ScriptDir & "\high_score.INI", "score", "top5",$top4 )
    ElseIf $nombre_de_coups < $top2 And $nombre_de_coups > $top1 then
            IniWrite ( @ScriptDir & "\high_score.INI", "score", "top2",$nombre_de_coups )
            IniWrite ( @ScriptDir & "\high_score.INI", "score", "top3",$top2  )
            IniWrite ( @ScriptDir & "\high_score.INI", "score", "top4",$top3 )
            IniWrite ( @ScriptDir & "\high_score.INI", "score", "top5",$top4  )     
    ElseIf $nombre_de_coups < $top3 And $nombre_de_coups > $top2 then
            IniWrite ( @ScriptDir & "\high_score.INI", "score", "top3",$nombre_de_coups )
            IniWrite ( @ScriptDir & "\high_score.INI", "score", "top4",$top3 )
            IniWrite ( @ScriptDir & "\high_score.INI", "score", "top5",$top4  )
    ElseIf $nombre_de_coups < $top4 And $nombre_de_coups > $top3 then
            IniWrite ( @ScriptDir & "\high_score.INI", "score", "top4",$nombre_de_coups )
            IniWrite ( @ScriptDir & "\high_score.INI", "score", "top5",$top4 )
    ElseIf $nombre_de_coups < $top5 And $nombre_de_coups > $top4 then
            IniWrite ( @ScriptDir & "\high_score.INI", "score", "top5",$nombre_de_coups )          
    
    EndIf
    
EndFunc
avest007
Niveau 1
Niveau 1
Messages : 2
Enregistré le : lun. 10 nov. 2008 18:09
Status : Hors ligne

Re: [..]Fonction high score

#4

Message par avest007 »

Merci pour vos réponses je vais essayer ça tout de suite =)
Répondre