Hey, Ich habe an einem kleinem "spiel" gearbeitet bei dem man 2 sek zeit hat bei einer Gui das richtige Button zu klicken.
Man muss immer auf die richtige Farbe klicken, nicht das was in der Gui steht
Spoiler anzeigen
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Include <Timers.au3>
#include <Misc.au3>
$schwierigkeit = 2000
MsgBox (0,"Aufgabe", "Versuche so schnell wie möglich den richtigen Button zu klicken.")
;sleep(1000) , guiDelete()
$richtig = 0
$falsch = 0
$zeit = _Timer_Init ()
_naechstes_richtig()
[/autoit] [autoit][/autoit] [autoit]Func _naechstes_richtig()
$zeit = _Timer_Init () ; Von dem Punkt zu Timer_diff
While 1
Dim $var[4]
$var[0] = "Rot rechts richtig, links falsch"
$var[1] = "Blau links falsch, rechts richtig"
$var[2] = "Blau links richtig, rechts falsch"
$var[3] = "Rot rechts falsch, links richtig"
If $falsch = 10 Then
MsgBox (0,"Verloren", "Du hast 10 Fehler, es ist vorbei")
Exit
EndIf
If $richtig = 10 Then
MsgBox (0,"Gewonnen","Du hast 10 richtig! Herzlichen Glückwunsch")
Exit
EndIf
$rnd = Random(0, 4, 1)
Switch $rnd
Case 0
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]$Gui = GUICreate ("Farben Spiel", 300,200, 300, 300)
GUICtrlCreateLabel ("Blau Richtig: " & $richtig & " Falsch:" & $falsch , 50, 30, 150, 15)
$rot_btn_links_falsch = GUICtrlCreateButton ("Blau", 30, 100, 50, 20)
$blau_btn_rechts_richtig = GUICtrlCreateButton ("Rot", 200, 100, 50, 20)
GUICtrlSetColor ($rot_btn_links_falsch, 0xFF0000);blau farbe
GuiCtrlSetColor ($blau_btn_rechts_richtig, 0x0044aa);rot farbe
GUISetState(@SW_SHOW)
While 1
[/autoit] [autoit][/autoit] [autoit]$time = _Timer_Diff ($zeit)
$nMsg = GUIGetMsg()
If $time >= $schwierigkeit Then
$falsch += 1
GUIDelete ($Gui)
_naechstes_richtig()
EndIf
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $blau_btn_rechts_richtig
$richtig += 1
GUIDelete ($Gui)
_naechstes_richtig()
Case $rot_btn_links_falsch
$falsch += 1
GUIDelete ($Gui)
_naechstes_richtig()
EndSwitch
[/autoit] [autoit][/autoit] [autoit]WEnd
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]Case 1
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]$Gui = GUICreate ("Farben Spiel", 300,200, 300, 300)
GUICtrlCreateLabel ("Rot Richtig: " & $richtig & " Falsch:" & $falsch , 50, 30, 150, 15)
$blau_btn_links_falsch = GUICtrlCreateButton ("Rot", 30, 100, 50, 20)
$rot_btn_rechts_richtig = GUICtrlCreateButton ("Blau", 200, 100, 50, 20)
GUICtrlSetColor ($blau_btn_links_falsch, 0x0044aa);blau farbe
GuiCtrlSetColor ($rot_btn_rechts_richtig, 0xFF0000);rot farbe
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
$time = _Timer_Diff ($zeit)
If $time >= $schwierigkeit Then
$falsch += 1
GUIDelete ($Gui)
_naechstes_richtig()
EndIf
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $rot_btn_rechts_richtig
$richtig += 1
GUIDelete ($Gui)
_naechstes_richtig()
Case $blau_btn_links_falsch
$falsch += 1
GUIDelete ($Gui)
_naechstes_richtig()
EndSwitch
WEnd
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]Case 2
$Gui =GUICreate ("Farben Spiel", 300,200, 300, 300)
GUICtrlCreateLabel ("Blau Richtig: " & $richtig & " Falsch:" & $falsch , 50, 30, 150, 15)
$blau_btn_links_richtig = GUICtrlCreateButton ("Rot", 30, 100, 50, 20)
$rot_btn_rechts_falsch = GUICtrlCreateButton ("Blau", 200, 100, 50, 20)
GUICtrlSetColor ($rot_btn_rechts_falsch, 0xFF0000)
GuiCtrlSetColor ($blau_btn_links_richtig, 0x0044aa)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
$time = _Timer_Diff ($zeit)
If $time >= $schwierigkeit Then
$falsch += 1
GUIDelete ($Gui)
_naechstes_richtig()
EndIf
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $blau_btn_links_richtig
$richtig += 1
GUIDelete ($Gui)
_naechstes_richtig()
Case $rot_btn_rechts_falsch
$falsch += 1
GUIDelete ($Gui)
$time = 0
_naechstes_richtig ()
EndSwitch
WEnd
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]Case 3
[/autoit] [autoit][/autoit] [autoit]$Gui = GUICreate ("Farben Spiel", 300,200, 300, 300)
GUICtrlCreateLabel ("Rot Richtig: " & $richtig & " Falsch:" & $falsch , 50, 30, 150, 15)
$rot_btn_links_richtig = GUICtrlCreateButton ("Blau", 30, 100, 50, 20)
$blau_btn_rechts_falsch = GUICtrlCreateButton ("Rot", 200, 100, 50, 20)
GUICtrlSetColor ($blau_btn_rechts_falsch, 0x0044aa)
GuiCtrlSetColor ($rot_btn_links_richtig, 0xFF0000)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
$time = _Timer_Diff ($zeit)
If $time >= $schwierigkeit Then
$falsch += 1
GUIDelete ($Gui)
_naechstes_richtig()
EndIf
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $rot_btn_links_richtig
$richtig += 1
GUIDelete ($Gui)
_naechstes_richtig()
Case $blau_btn_rechts_falsch
$falsch += 1
GUIDelete ($Gui)
_naechstes_richtig ()
EndSwitch
WEnd
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]EndSwitch
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]WEnd
EndFunc
ich denke man kann das viel kürzer schreiben mit arrays aber es war mein erster Versuche für das Spiel.Ich werde auch demnächst noch lvl hinzufügen , das die zeit die man hat um den button zu klicken kürzer wird.
Bitte ein kurzes Feedback geben oder verbesserungen und bugs.