Wenn ich bei mir das Programm ausführe, und die Antworten der 3 Spieler eingebe, und dann die 1.Antwort eingebe, kommt gleich die nächste Frage!
Spoiler anzeigen
#include <GDIPlus.au3>
#include <Array.au3>
HotKeySet("{F9}", "_exit")
HotKeySet("{NUMPAD1}", "_antwort_1")
HotKeySet("{NUMPAD2}", "_antwort_2")
HotKeySet("{NUMPAD3}", "_antwort_3")
_GDIPlus_Startup()
[/autoit] [autoit][/autoit] [autoit]Local $AktuellerSpieler = 1, $PfadZuFragen = @ScriptDir & "\Fragen.ini"
Local $StiftBlauDike8, $StiftGrunDike12, $StiftGrunDike8, $StiftLilaDike12, $StiftRotDike8
Dim $SpielerAntworten[3] = [0, 0, 0], $SpielerPunkte[3] = [0, 0, 0]
Dim $FragenDaten[10] = [1, IniRead($PfadZuFragen, 1, 1, ""), IniRead($PfadZuFragen, 1, 2, ""), IniRead($PfadZuFragen, 1, 3, ""), IniRead($PfadZuFragen, 1, 4, ""), IniRead($PfadZuFragen, 1, 5, ""), IniRead($PfadZuFragen, 1, 6, ""), IniRead($PfadZuFragen, 1, 7, ""), IniRead($PfadZuFragen, 1, 8, ""), IniRead($PfadZuFragen, "Anzahl", "Anzahl", 1)]
$QuizFenster = GUICreate("QuizFenster", @DesktopWidth, @DesktopHeight, 0, 0, 0x80000000, BitOR(0x00000080, 0x00000008))
GUISetBkColor(0xFFFF00, $QuizFenster)
GUISetState(@SW_SHOW)
$QuizGraphikobjekt = _GDIPlus_GraphicsCreateFromHWND($QuizFenster)
[/autoit] [autoit][/autoit] [autoit]_Zeichne()
[/autoit] [autoit][/autoit] [autoit]Func _Zeichne()
$StiftRotDike8 = _GDIPlus_PenCreate(0xFFFF0000,
$KatigorieRechtck = _GDIPlus_GraphicsDrawRect($QuizGraphikobjekt, 10, 10, 800, 70, $StiftRotDike8)
$KatigorieText = _GDIPlus_GraphicsDrawString($QuizGraphikobjekt, "Katigorie: <-------------->", 10, 0, "Arial Black", 50)
$StiftGrunDike8 = _GDIPlus_PenCreate(0xFF00FF00,
$StiftBlauDike8 = _GDIPlus_PenCreate(0xFF0000FF,
$TeilnemerAlleRechteck = _GDIPlus_GraphicsDrawRect($QuizGraphikobjekt, 1080, 0, 530, 250, $StiftBlauDike8)
$TeilnemerNr1Rechteck = _GDIPlus_GraphicsDrawRect($QuizGraphikobjekt, 1090, 10, 500, 70, $StiftGrunDike8)
$TeilnemerNr1Text = _GDIPlus_GraphicsDrawString($QuizGraphikobjekt, "<Name1>: " & $SpielerPunkte[0] & " P.", 1090, 0, "Arial Black", 50)
$TeilnemerNr2Rechteck = _GDIPlus_GraphicsDrawRect($QuizGraphikobjekt, 1090, 90, 500, 70, $StiftGrunDike8)
$TeilnemerNr2Text = _GDIPlus_GraphicsDrawString($QuizGraphikobjekt, "<Name2>: " & $SpielerPunkte[1] & " P.", 1090, 80, "Arial Black", 50)
$TeilnemerNr3Rechteck = _GDIPlus_GraphicsDrawRect($QuizGraphikobjekt, 1090, 170, 500, 70, $StiftGrunDike8)
$TeilnemerNr3Text = _GDIPlus_GraphicsDrawString($QuizGraphikobjekt, "<Name3>: " & $SpielerPunkte[2] & " P.", 1090, 160, "Arial Black", 50)
$StiftLilaDike12 = _GDIPlus_PenCreate(0xFFFF00FF, 12)
$StiftGrunDike12 = _GDIPlus_PenCreate(0xFF00FF00, 12)
$InfoKastenGesammt = _GDIPlus_GraphicsDrawRect($QuizGraphikobjekt, 10, 250, 1070, 640, $StiftLilaDike12)
$FrageTeil1 = _GDIPlus_GraphicsDrawString($QuizGraphikobjekt, $FragenDaten[3], 15, 240, "Arial Black", 50)
$FrageTeil2 = _GDIPlus_GraphicsDrawString($QuizGraphikobjekt, $FragenDaten[4], 15, 300, "Arial Black", 50)
$Antwort1Kasten = _GDIPlus_GraphicsDrawRect($QuizGraphikobjekt, 10, 450, 1070, 80, $StiftGrunDike12)
$Antwort1Text = _GDIPlus_GraphicsDrawString($QuizGraphikobjekt, $FragenDaten[5], 15, 440, "Arial Black", 50)
$Antwort2Kasten = _GDIPlus_GraphicsDrawRect($QuizGraphikobjekt, 10, 560, 1070, 80, $StiftGrunDike12)
$Antwort2Text = _GDIPlus_GraphicsDrawString($QuizGraphikobjekt, $FragenDaten[6], 15, 550, "Arial Black", 50)
$Antwort3Kasten = _GDIPlus_GraphicsDrawRect($QuizGraphikobjekt, 10, 670, 1070, 80, $StiftGrunDike12)
$Antwort3Text = _GDIPlus_GraphicsDrawString($QuizGraphikobjekt, $FragenDaten[7], 15, 660, "Arial Black", 50)
$Antwort4Kasten = _GDIPlus_GraphicsDrawRect($QuizGraphikobjekt, 10, 780, 1070, 80, $StiftGrunDike12)
$Antwort4Text = _GDIPlus_GraphicsDrawString($QuizGraphikobjekt, $FragenDaten[8], 15, 770, "Arial Black", 50)
EndFunc ;==>_Zeichne
While 1
WEnd
Func _VergebePunkte()
If $SpielerAntworten[0] = $FragenDaten[1] Then $SpielerPunkte[0] = $SpielerPunkte[0] + $FragenDaten[2]
If $SpielerAntworten[1] = $FragenDaten[1] Then $SpielerPunkte[1] = $SpielerPunkte[1] + $FragenDaten[2]
If $SpielerAntworten[2] = $FragenDaten[1] Then $SpielerPunkte[2] = $SpielerPunkte[2] + $FragenDaten[2]
EndFunc ;==>_VergebePunkte
Func _NachsteFrage()
Dim $SpielerAntworten[3] = [0, 0, 0]
Local $LetzteFrage = $FragenDaten[0]
Local $AktuellerSpieler = 1
Dim $FragenDaten[10]
$FragenDaten[0] = $LetzteFrage + 1
$FragenDaten[1] = IniRead($PfadZuFragen, $FragenDaten[0], 1, "")
$FragenDaten[2] = IniRead($PfadZuFragen, $FragenDaten[0], 2, "")
$FragenDaten[3] = IniRead($PfadZuFragen, $FragenDaten[0], 3, "")
$FragenDaten[4] = IniRead($PfadZuFragen, $FragenDaten[0], 4, "")
$FragenDaten[5] = IniRead($PfadZuFragen, $FragenDaten[0], 5, "")
$FragenDaten[6] = IniRead($PfadZuFragen, $FragenDaten[0], 6, "")
$FragenDaten[7] = IniRead($PfadZuFragen, $FragenDaten[0], 7, "")
$FragenDaten[8] = IniRead($PfadZuFragen, $FragenDaten[0], 8, "")
$FragenDaten[9] = IniRead($PfadZuFragen, "Anzahl", "Anzahl", 1)
_Zeichne()
EndFunc ;==>_NachsteFrage
Func _antwort_1()
$SpielerAntworten[$AktuellerSpieler - 1] = 1
If $AktuellerSpieler = 3 Then
_WinAPI_RedrawWindow($QuizFenster)
_VergebePunkte()
_NachsteFrage()
Else
$AktuellerSpieler += 1
EndIf
EndFunc ;==>_antwort_1
Func _antwort_2()
$SpielerAntworten[$AktuellerSpieler - 1] = 2
If $AktuellerSpieler = 3 Then
_WinAPI_RedrawWindow($QuizFenster)
_VergebePunkte()
_NachsteFrage()
Else
$AktuellerSpieler += 1
EndIf
EndFunc ;==>_antwort_2
Func _antwort_3()
$SpielerAntworten[$AktuellerSpieler - 1] = 3
If $AktuellerSpieler = 3 Then
_WinAPI_RedrawWindow($QuizFenster)
_VergebePunkte()
_NachsteFrage()
Else
$AktuellerSpieler += 1
EndIf
EndFunc ;==>_antwort_3
Func _exit()
_GDIPlus_PenDispose($StiftRotDike8)
_GDIPlus_PenDispose($StiftGrunDike8)
_GDIPlus_PenDispose($StiftBlauDike8)
_GDIPlus_PenDispose($StiftLilaDike12)
_GDIPlus_PenDispose($StiftGrunDike12)
_GDIPlus_GraphicsDispose($QuizGraphikobjekt)
_GDIPlus_Shutdown()
Exit
EndFunc ;==>_exit
Folgende INI benötigt: