Hallo
ich habe momentan kein Internet und habe voll lw und deswegen wollte ich mir hangman machen
da habe ich nur ein problem mit den zeichen
wen ich die hinschreibe dann kommt ein unterstrih und lertaste zuviel
Spoiler anzeigen
#include <Array.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
Global $r, $string, $var = 1, $point, $stelle[9999], $test2 = 1, $ghi = 1, $def, $abc
Global $zeichen = "abcdefghijklmnopqrstuvwxyz1234567890"
#Region ### START Koda GUI section ### Form=C:\Dokumente und Einstellungen\Paul\Desktop\ \hangman\hangman.kxf
$Form1 = GUICreate("Hangman", 423, 415, 192, 124)
GUISetBkColor(0xFFFFFF)
$Label1 = GUICtrlCreateLabel("_ _ _ _", 8, 32, 399, 17)
$Label2 = GUICtrlCreateLabel("Keine falschen Zeichen", 8, 160, 404, 17)
$Label3 = GUICtrlCreateLabel("Hangman", 168, 8, 50, 17)
$Label4 = GUICtrlCreateLabel("Ihre Falschen Buchstaben und Zahlen", 104, 136, 185, 17)
$Input1 = GUICtrlCreateInput("", 40, 96, 121, 21)
$Label5 = GUICtrlCreateLabel("Bitte geben sie hier ihr Zeichen ein.", 8, 72, 170, 17)
Dim $Pic[13]
$Pic[2] = GUICtrlCreatePic("", 112, 352, 153, 57, BitOR($SS_NOTIFY,$WS_CLIPSIBLINGS)) ; Bogen
$Pic[3] = GUICtrlCreatePic("", 145, 203, 49, 153, BitOR($SS_NOTIFY,$WS_CLIPSIBLINGS)) ; Stange 1
$Pic[4] = GUICtrlCreatePic("", 193, 209, 49, 41, BitOR($SS_NOTIFY,$WS_CLIPSIBLINGS)) ; stange schreg
$Pic[5] = GUICtrlCreatePic("", 192, 202, 129, 9, BitOR($SS_NOTIFY,$WS_CLIPSIBLINGS)) ; Stange oben
$Pic[6] = GUICtrlCreatePic("", 288, 209, 9, 41, BitOR($SS_NOTIFY,$WS_CLIPSIBLINGS)) ;stange über kopf
$Pic[7] = GUICtrlCreatePic("", 272, 247, 40, 41, BitOR($SS_NOTIFY,$WS_CLIPSIBLINGS)) ; kopf
$Pic[9] = GUICtrlCreatePic("", 294, 288, 25, 33, BitOR($SS_NOTIFY,$WS_CLIPSIBLINGS)) ; rechter arm
$Pic[10] = GUICtrlCreatePic("", 264, 288, 25, 33, BitOR($SS_NOTIFY,$WS_CLIPSIBLINGS)) ; linker arm
$Pic[11] = GUICtrlCreatePic("", 294, 328, 33, 33, BitOR($SS_NOTIFY,$WS_CLIPSIBLINGS)) ;rechetr fuß
$Pic[12] = GUICtrlCreatePic("", 265, 328, 25, 33, BitOR($SS_NOTIFY,$WS_CLIPSIBLINGS)) ;linker fuß
$Pic[8] = GUICtrlCreatePic("", 288, 287, 9, 73, BitOR($SS_NOTIFY,$WS_CLIPSIBLINGS)) ; körper
For $9999999 = 1 To 12
GUICtrlSetState ($Pic[$9999999],$GUI_Hide)
Next
$Pic1 = GUICtrlCreatePic("C:\Dokumente und Einstellungen\Paul\Desktop\ \hangman\hangman.JPG", 112, 200, 204, 204, BitOR($SS_NOTIFY,$WS_CLIPSIBLINGS))
$Button0 = GUICtrlCreateButton("OK", 16, 192, 75, 25)
GUICtrlSetState ($Button0,$GUI_DISABLE)
$Button1 = GUICtrlCreateButton("Start", 16, 232, 75, 25)
$Button2 = GUICtrlCreateButton("Reset", 16, 272, 75, 25)
GUICtrlSetState (-1,$GUI_DISABLE)
$Button3 = GUICtrlCreateButton("Ende", 16, 312, 75, 25)
$Button4 = GUICtrlCreateButton("Neuen Name", 16, 352, 75, 25)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button4
$inputbox = InputBox ("Neuer Begriff","Bitte geben sie ein neuen Begriff ein")
For $a = 1 To 99999999999999999999999999999999
$read = IniRead ("Hangman.ini","Hangman","Name" & $a,"__")
If $read = $inputbox Then
MsgBox (0,"ERROR","Dieser Begriff wird schon benutzt")
ExitLoop
ElseIf $read = "__" Then
IniWrite ("Hangman.ini","Hangman","Name" & $a,$inputbox)
ExitLoop
EndIf
Next
Case $Button3
Exit
Case $Button2
GUICtrlSetState ($Button2,$GUI_DISABLE)
GUICtrlSetState ($Button1,$GUI_ENABLE)
GUICtrlSetState ($Button0,$GUI_DISABLE)
_reset ()
Case $Button1
For $9999999 = 1 To 12
GUICtrlSetState ($Pic[$9999999],$GUI_Show)
Next
GUICtrlSetState ($Button0,$GUI_ENABLE)
GUICtrlSetState ($Button1,$GUI_DISABLE)
GUICtrlSetState ($Button2,$GUI_ENABLE)
_start ()
Case $Button0
_ok ()
EndSwitch
WEnd
Func _reset ()
[/autoit] [autoit][/autoit] [autoit]EndFunc
[/autoit] [autoit][/autoit] [autoit]Func _start ()
For $a = 1 To 9999999999999999999999999999999999999999
$read = IniRead ("Hangman.ini","Hangman","Name" & $a,"")
If $read = "" Then
MsgBox (0,"ERROR","Es exestieren keine Begriffe")
Return
ElseIf $read = @error Then
ExitLoop
EndIf
Next
Global $r = Random (1,$a+1,1)
$read2 = IniRead ("Hangman.ini","Hangman","Name" & $r,"")
;$read2 = IniRead ("Hangman.ini","Hangman","Name1","")
$string = StringSplit ($read2,"")
GUICtrlSetData ($Label1,"")
For $b = 1 To $string[0]
GUICtrlSetData ($Label1,GUICtrlRead ($Label1) & "_ ") ; zeichen > <
Next
EndFunc
Func _ok ()
$string2 = StringSplit ($zeichen,"")
$string3 = StringSplit (GUICtrlRead ($Label1),"")
GUICtrlSetData ($Label1,"")
For $c = 1 To $string3[0]
For $d = 1 To $string2[0]
If $string3[$c] <> "_ " Then
If ($string3[$c] = $string2[$d]) And ($string3[$c] <> GUICtrlRead ($Input1)) Then
GUICtrlSetData ($Label1,GUICtrlRead ($Label1) & $string2[$d] & " ")
$stelle[$c] = $string3[$c]
EndIf
EndIf
Next
Next
For $b = 1 To $string[0]
If $string[$b] = GUICtrlRead ($Input1) Then
GUICtrlSetData ($Label1,GUICtrlRead ($Label1) & GUICtrlRead ($Input1) & " ")
Else
GUICtrlSetData ($Label1,GUICtrlRead ($Label1) & "_ ")
EndIf
Next
If $point = $string[0] Then
$point = 0
$var += 1
If $var > 12 Then
MsgBox (0,"ERROR","Sie haben verloren")
$point = 0
$var = 1
Return
Else
GUICtrlSetState ($Pic[$var],$GUI_Hide)
EndIf
EndIf
#cs
$def = StringSplit (GUICtrlRead ($Label1),"")
_ArrayDisplay ($def)
$lol = 0
For $abc = 0 To $string[0]
MsgBox (0,"",$lol & @CRLF & $abc & @CRLF & $string[0])
$lol += 1
If $def[$abc] = $string[$abc] Then
$ghi += 1
EndIf
Next
If $ghi = $string[0] Then
MsgBox (0,"","Erfolgreich")
EndIf
#ce
EndFunc
bild gibs im anhang