Calcul de point tournois badminton

Partagez vos scripts, et vos applications AutoIt.
Règles du forum
.
Répondre
philippeB
Niveau 1
Niveau 1
Messages : 1
Enregistré le : mer. 19 juin 2019 13:34
Status : Hors ligne

Calcul de point tournois badminton

#1

Message par philippeB »

Bonjour,

Je me suis amusé à créer un petit script qui permet au joueur de badminton de calculer les points qu'ils peuvent gagner lors d'un tournois selon leurs performances. Le résultat se met à jour quand l'on change la première liste déroulante.
l'input vide correspond à la valeur total du tournois.
La méthode de calcul n'est valable que pour les tournois en poule+ élimination.

Voilà un petit code qui peut être utile ou amélioré par les joueurs de badminton.
#include <GUIConstantsEx.au3>
#include <MsgBoxConstants.au3>

Example()

Func Example()
$resultat = 0
;Création de la fenêtre et des listes + input box
    Local $hGUI = GUICreate("Bad_cult", 300, 200)

    Local $idComboBox = GUICtrlCreateCombo("Victoire", 10, 10, 185, 20)
   Local $idVictoires = GUICtrlCreateCombo("0", 10, 100, 185, 20)
    Local $idButton_Close = GUICtrlCreateButton("Close", 210, 170, 85, 25)
     Local $point  = GUICtrlCreateInput("", 10, 50, 185, 20)
    GUICtrlSetData($idComboBox, "Finaliste|1/2|1/4|1/8", "1/16")
    GUICtrlSetData($idVictoires, "1|2|3|4+", "1/16")

    GUISetState(@SW_SHOW, $hGUI)

    Local $sComboRead = ""

    While 1
        Switch GUIGetMsg()
            Case $GUI_EVENT_CLOSE, $idButton_Close
                ExitLoop

            Case $idComboBox
                $sComboRead = GUICtrlRead($idComboBox)
                if $sComboRead = "Victoire" Then
               $ratio = 1
             ElseIf $sComboRead = "Finaliste" Then
               $ratio = 0.83
            ElseIf $sComboRead = "1/2" Then
               $ratio = 0.67
            ElseIf $sComboRead = "1/4" Then
               $ratio = 0.50
            ElseIf $sComboRead = "1/8" Then
               $ratio = 0.33
            ElseIf $sComboRead = "1/16" Then
               $ratio = 0.28
            EndIf
            $pt = GUICtrlRead($point)
            $ratio = $ratio * $im
            $resultat = $pt * $ratio
            $resultat = Round($resultat, 2)
           GUICtrlCreateLabel($resultat, 110, 160)
          Case $idVictoires
            $idVic = GUICtrlRead($idVictoires)
            if $idVic = "0" Then
               $im = 0.001
             ElseIf $idVic = "1" Then
               $im = 0.67
             ElseIf $idVic = "2" Then
               $im = 0.90
             ElseIf $idVic = "3" Then
               $im = 0.95
             ElseIf $idVic = "4+" Then
               $im = 1
            EndIf
         EndSwitch
      $resultat = Round($resultat, 2)

    WEnd


    ; Delete the previous GUI and all controls.
    GUIDelete($hGUI)
EndFunc  

 
*** Important ***
Répondre