#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <Misc.au3>
#include <array.au3>
;~ ===================================================================================================================================
$input = InputBox("Highscore","Gib hier deinen Namen ein!","")


$vDLL = 'user32.dll'
$Masze = GUICreate("Maße", 600, 440, 400, 180)
GUISetIcon(@ScriptDir&"\data\Ma%C3%9Fe.ico",$Masze)
GUISetBkColor(0x000000)
$bImg = GUICtrlCreatePic("C:\Users\Stoani\Pictures\asdasd.jpg", 0, 0, 490, 440)
GUICtrlSetState(-1, $GUI_DISABLE)
$frage_button = GUICtrlCreateButton("Frage stellen", 10, 392, 196, 33)
GUICtrlSetFont(-1, 12, 400, 0, "Tw Cen MT Condensed")
$loesung_button = GUICtrlCreateButton("Lösung zeigen", 10, 352, 97, 33)
GUICtrlSetFont(-1, 12, 400, 0, "Tw Cen MT Condensed")
$Antwort = GUICtrlCreateInput("", 16, 184, 185, 27, BitOR($ES_CENTER, $WS_BORDER), 0)
GUICtrlSetFont(-1, 12, 400, 0, "Tw Cen MT Condensed")
GUICtrlSetColor(-1, 0x000000)
$Liste = GUICtrlCreateEdit("", 216, 16, 365, 409, BitOR($ES_AUTOVSCROLL, $ES_AUTOHSCROLL, $WS_BORDER), 0)
GUICtrlSetData(-1, "Noch keine Frage gestellt!")
GUICtrlSetFont(-1, 12, 400, 0, "Tw Cen MT Condensed")
GUICtrlSetColor(-1, 0xFFFFFF)
GUICtrlSetBkColor(-1, 0x000000)
$Frage = GUICtrlCreateEdit("", 16, 16, 185, 57, BitOR($ES_CENTER, $ES_AUTOVSCROLL, $ES_AUTOHSCROLL, $ES_WANTRETURN, $WS_BORDER), 0)
GUICtrlSetData(-1, "")
GUICtrlSetFont(-1, 12, 400, 0, "Tw Cen MT Condensed")
GUICtrlSetColor(-1, 0x000000)
$go_button = GUICtrlCreateButton("Bestätigen", 109, 352, 97, 33)
GUICtrlSetFont(-1, 12, 400, 0, "Tw Cen MT Condensed")
GUISetState()
;~ ===================================================================================================================================
Global $Read, $index, $i = 0, $counter = 0, $true = 0, $false = 0, $input
;Damit kein "," in AutoIt gelangt!====================================================================================
HotKeySet("{,}","Komma")
HotKeySet("{NUMPADDOT}","Komma")
Func Komma()
Send(".")
EndFunc
;===================================================================================================================
Global $mA[29][3]

$mA[0][0] = "Wie lange ist der Korpus ?"
$mA[0][1] = "356"
$mA[1][0] = "Wie lange ist die Korpusmensur ?"
$mA[1][1] = "195"
$mA[2][0] = "Wie lange ist die Halsmensur ?"
$mA[2][1] = "130"
$mA[3][0] = "Wieviel beträgt die Halsstärke am Sattel(exklusive Griffbrett)?"
$mA[3][1] = "13"
$mA[4][0] = "Wieviel beträgt die Halsstärke vor dem Halsfuß(exklusive Griffbrett)?"
$mA[4][1] = "14"
$mA[5][0] = "Wieviel beträgt die Halsstärke am Sattel(inklusive Griffbrett)?"
$mA[5][1] = "19"
$mA[6][0] = "Wieviel beträgt die Halsstärke am Sattel(inklusive Griffbrett)?"
$mA[6][1] = "21"
$mA[7][0] = "Wie hoch ist der Halsüberstand ?"
$mA[7][1] = "6"
$mA[8][0] = "Wie lange ist das Griffbrett ?"
$mA[8][1] = "270"
$mA[9][0] = "Wie breit ist das Griffbrett am Sattel ?"
$mA[9][1] = "23.5"
$mA[10][0] = "Wie breit ist das Griffbrett am Ende?"
$mA[10][1] = "42"
$mA[11][0] = "Wie hoch ist der Griffbrettrand ?"
$mA[11][1] = "5"
$mA[12][0] = "Wie stark ist die Griffbretthohlung unter der Diskantsaite ?"
$mA[12][1] = "0.5"
$mA[13][0] = "Wie stark ist die Griffbretthohlung unter der Basssaite ?"
$mA[13][1] = "0.7"
$mA[14][0] = "Radius der Griffbrettrundung ?"
$mA[14][1] = "42"
$mA[15][0] = "Wie hoch ist die Griffbrettprojektion ?"
$mA[15][1] = "27"
$mA[16][0] = "Wie lange ist die Mensur ?"
$mA[16][1] = "330"
$mA[17][0] = "Abstand vom Steg zum Saitenhalter ?"
$mA[17][1] = "55"
$mA[18][0] = "Saitenband am Sattel ?"
$mA[18][1] = "16.3"
$mA[19][0] = "Saitenband am Steg ?"
$mA[19][1] = "33.5"
$mA[20][0] = "Abstand von Saite zu Saite am Steg ?"
$mA[20][1] = "11.5"
$mA[21][0] = "Saitenlage bei Stahlsaiten [Diskantsaite] ?"
$mA[21][1] = "3.5"
$mA[22][0] = "Saitenlage bei Darmsaiten [Diskantsaite] ?"
$mA[22][1] = "2.5"
$mA[23][0] = "Saitenlage bei Stahlsaiten [Basssaite] ?"
$mA[23][1] = "4"
$mA[24][0] = "Saitenlage bei Darmsaiten [Basssaite] ?"
$mA[24][1] = "5.5"
$mA[25][0] = "Wieviel Grad beträgt der Saitenknickwinkel ?"
$mA[25][1] = "158"
$mA[26][0] = "Wie stark ist der Steg an der Oberseite ?"
$mA[26][1] = "1.3"
$mA[27][0] = "Wie stark sind die Stegfüße ?"
$mA[27][1] = "4.2"
$mA[28][0] = "Wie hoch ist der Steg ?"
$mA[28][1] = "32"

For $i = 0 To UBound($mA) - 1
    $mA[$i][2] = 0
Next
;~ =======================================================================
$i = 0
$false = 0
$true = 0
While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
	Case $GUI_EVENT_CLOSE
            Exit
        Case $frage_button
			GUICtrlSetData($Liste,29 - $counter&"/29 verbleibend")
			GUICtrlSetState($go_button, $GUI_ENABLE)
            $counter += 1
            If $counter <= UBound($mA) Then
                Do
                    $index = Random(0, UBound($mA) - 1, 1)
                Until $mA[$index][2] = 0
                $cRead = $mA[$index][0]
                GUICtrlSetData($Frage, $cRead)
                $mA[$index][2] = 1 ; setzt Frage als bereits gestellt
				ConsoleWrite($mA[$index][0]&@CRLF&$mA[$index][1]&@CRLF)
            Else
					If $true >= 28 Then
						If $i <= 5 Then
						GUICtrlSetData($Liste,"Du hast "&$true&"/29 Fragen richtig beantwortet!"&@CRLF&"Die Lösung wurde "&$i&"mal gebraucht!"&@CRLF&@CRLF&"Das gibt die Note 1 !")
						EndIf
				ElseIf $true <= 15 Then
						GUICtrlSetData($Liste,"Du hast mehr als die Hälfte der Fragen falsch beantwortet!"&@CRLF&$true&"/29 Fragen richtig beantwortet!"&@CRLF&"Die Lösung wurde "&$i&"mal gebraucht!"&@CRLF&@CRLF&"Das gibt die Note 5 !"&@CRLF&"Versuch es nocheinmal!")
					ElseIf $true >= 25 Then
						If $i <= 6 Then
						GUICtrlSetData($Liste,"Du hast "&$true&"/29 Fragen richtig beantwortet!"&@CRLF&"Die Lösung wurde "&$i&"mal gebraucht!"&@CRLF&@CRLF&"Das gibt die Note 2 !")
					EndIf
					ElseIf $true >= 22 Then
						If $i <= 7 Then
						GUICtrlSetData($Liste,"Du hast "&$true&"/29 Fragen richtig beantwortet!"&@CRLF&"Die Lösung wurde "&$i&"mal gebraucht!"&@CRLF&@CRLF&"Das gibt die Note 3 !")
					EndIf
					ElseIf $true >= 19 Then
						If $i <= 8 Then
						GUICtrlSetData($Liste,"Du hast "&$true&"/29 Fragen richtig beantwortet!"&@CRLF&"Die Lösung wurde "&$i&"mal gebraucht!"&@CRLF&@CRLF&"Das gibt die Note 4 !"&@CRLF&"Ich glaub du kannst das besser!")
						EndIf
					EndIf
FileWriteLine("Highscore.txt",$input&" hat "&$true&"/29 Fragen richtig beantwortet und die Lösung "&$i&" mal verwendet.")	
	EndIf
        Case $loesung_button
            $i = $i + 1
            If $i = 10 Then
                MsgBox(0, "", "Du hast bereits 10mal die Lösung gebraucht! Bitte nochmal probieren!")
                Exit
            EndIf
            GUICtrlSetData($Liste, "Die Lösung ist: " & $mA[$index][1]&"mm")
			Sleep(4000)
			ControlClick("Maße","Frage stellen",4,"Left",1)
        Case $go_button
			
            $Read = GUICtrlRead($Antwort)
            If $Read <> $mA[$index][1] Then
				$false = $false +1 ;Zählt wie oft die Antwort falsch war.
				GUICtrlSetState($go_button, $GUI_DISABLE)
                GUICtrlSetData($Liste, "Falsche Antwort!" & @CRLF & "Lösung anzeigen?")
				ConsoleWrite("False"&@CRLF)
				GUICtrlSetData($Antwort,"")
            ElseIf $Read = $mA[$index][1] Then
				$true = $true + 1
                GUICtrlSetData($Liste, "Das Maß beträgt " & $Read & "mm!" & @CRLF & "Richtige Antwort!")
				ConsoleWrite("True"&@CRLF)
				GUICtrlSetState($go_button, $GUI_DISABLE)
				GUICtrlSetState($frage_button, $GUI_DISABLE)
				Sleep(3000)
				GUICtrlSetState($go_button, $GUI_ENABLE)
				GUICtrlSetState($frage_button, $GUI_ENABLE)
				ControlClick("Maße","Frage stellen",4,"Left",1)
				GUICtrlSetData($Antwort,"")
            EndIf
    EndSwitch
WEnd