Calcul de point tournois badminton
Posté : mer. 19 juin 2019 13:51
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.
*** Important ***
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
#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