Problem mit Checkbox & Werte setzen

07/18/2012 15:22 piper332#1
Hey..
ich hab mein Script für mein progressbar test fast fertig, nur iwie zeigt der mir immer (nach einiger zeit) nachdem die checkbox für vierfache geschwindigkeit aktiviert wurde in line 318 (der teil kurz vorm ende des scriptes ($mdiff = 25 darunter $hungerzeit = ... darunter...)) einen fehler. [Iwie: Expected "=" Statement at Parameter oder so.] Ich habe keine ahnung , wie ich das problem lösen kann.
die werte in den variablen: mdiff, hungerzeit etc. sind die milisekunden nachdem zum beispiel der hungerbalken reduziert werden soll.
Hilfreich wäre noch, wenn mir jemand sagen könnte, wie ich das Soundplay nach enden des Liedes wiederholen kann. Danke :)
Ich hoffe es nimmt sich jemand die zeit & kann mir helfen =)

Hier der Code:
Code:
#RequireAdmin 
#include <GUIConstantsEx.au3>
#include <ProgressConstants.au3>

   Global $Durst, $Add_1 = 60 , $zeit = "0:00", $stu = 0, $minu = 0, $mdiff = 100, $Add_2 = 55, $sturl = "00", $minusdebug = 0, $deadart = "Error", $Dead = 0, $Dead1 = 0  
   ;Durst == Knopf Trinken , Add_1 == Wert Durst , Add_2 == Wert Hunger , mdiff == zeit zwischen den sekunden
   Global $Div_1 = 90 , $Gesu_ = 100 , $Alter = 0 , $Alter0 = 0, $Punkte = 120, $durstzeit = 1300, $spasszeit = 1000, $spasszeit_2 = 4000, $hungerzeit = 2000, $vorf_zeit = 4000; Div_1 == Fröhlichk. , Gesu_ == Gesundheit
   $GUI = GUICreate("Tomatogotchi",500,300,50,50)
   GUICtrlCreatePic("C:\Users\Pc\Downloads\tomate.jpg",0,0,500,300)
   GUICtrlSetState(-1, $GUI_DISABLE)
   SoundPlay("C:\Users\Pc\Desktop\FSS_T.mp3")
   $time = GUICtrlCreateLabel("Time:" & $zeit & "",460,10,30,20)
   GUICtrlCreateLabel("Durstig",10,10,50,20)
   $prog1 = GUICtrlCreateProgress(70, 10, 200, 20) ;durst
   GUICtrlCreateLabel("Sitt",280,10,50,20)
   $durst = GUICtrlCreateButton("Trinken [5]", 320, 10, 85, 20)
   GUICtrlCreateLabel("Hungrig",10,40,50,20)
   $prog2 = GUICtrlCreateProgress(70, 40, 200, 20) ;hunger
   GUICtrlCreateLabel("Satt",280,40,50,20)
   $hungermoe = GUICtrlCreateButton("Essen[Möhre|10]", 320, 40, 85, 20)
   $hungerkuch =GUICtrlCreateButton("Essen[Kuchen|7]", 410, 40, 85, 20)
   $hungerbrot = GUICtrlCreateButton("Essen[Brot|13]", 320, 70, 85, 20)
   $arzt = GUICtrlCreateButton("Hausarzt[35]",320,100,85,20)
   $spiel = GUICtrlCreateButton("Spielen[20]", 410, 70, 85, 20)
   GUICtrlCreateLabel("Traurig",10,70,41,20)
   $prog3 = GUICtrlCreateProgress(70, 70, 200, 20) ;fröhlick.
   GUICtrlCreateLabel("Fröhlig",280,70,30,12)
   GUICtrlCreateLabel("Krank",10,100,28,12)
   $prog4 = GUICtrlCreateProgress(70,100,200,20)
   GUICtrlCreateLabel("Gesund",280,100,37,11)
   $alterlb = GUICtrlCreateLabel("Alter: "&$Alter,410,10,40,20)
   $Pktlb=GUICtrlCreateLabel("Fähigkeitspunkte: "&$Punkte,360,260,105,20)
   $dopzeit= GUICtrlCreateCheckbox("Doppelte Zeit" , 360, 220,105,20)
   $vierzeit= GUICtrlCreateCheckbox("Vierfache Zeit" , 360, 240,105,20)
   GUICtrlSetBkColor($pktlb,0xcc2222)
   GUICtrlSetBkColor($dopzeit,0xcc2222)
   GUICtrlSetBkColor($vierzeit,0xcc2222)
   ;------ Log ------
   $log1 = GUICtrlCreateLabel("",10,190,320,15)
   GUICtrlSetBkColor($log1,0xff5555)
   $log2 = GUICtrlCreateLabel("",10,220,320,15)
   GUICtrlSetBkColor($log2,0xff7555)
   $log3 = GUICtrlCreateLabel("",10,250,320,15)
   GUICtrlSetBkColor($log3,0xff9555)
   $log4 = GUICtrlCreateLabel("",10,280,320,15)
   GUICtrlSetBkColor($log4,0xffCCCC)
   ;---- Ende Log ----
   
   GUISetState()
   GUICtrlSetData($prog1,$Add_1)
   GUICtrlSetData($prog2,$Add_2)
   GUICtrlSetData($prog3,$Div_1)
   GUICtrlSetData($prog4,$Gesu_)
   $wait = 20; Warte 20ms bis zum nächsten Schritt
   $s = 0; Progressbar-
   ;296000
   
   $DurstRef = TimerInit()
   $Vorf_In = TimerInit()
   $SpassRef = TimerInit()
   $Spass2Ref = TimerInit()
   $HungerRef = TimerInit()
   $minute = TimerInit()
   While 1
	  $msg = GUIGetMsg()
	  Select
		 Case $msg = -3
			ExitLoop
		 Case $msg = $arzt
			If $Punkte < 35 Then
			   MsgBox(64,"Tomatogotchi","Du hast nur "&$Punkte&" Punkte. Du brauchst aber 35 Punkte!")
			EndIf
			If $Punkte >= 35 Then
			$Gesu_ = 100
			$Punkte -= 35
			If $Gesu_ = 100 Or $Gesu_ > 100 Then
				  $Gesu_ = 100
			   Endif
			GUICtrlSetData($prog4,$Gesu_)
			GUICtrlSetData($pktlb,"Fähigkeitspunkte: "&$Punkte)
			EndIf
		 Case $msg = $durst
			If $Punkte < 5 Then
			   MsgBox(64,"Tomatogotchi","Du hast nur "&$Punkte&" Punkte. Du brauchst aber 5 Punkte!")
			EndIf
			If $Punkte >= 5 Then
			$Add_1 += 15
			$Punkte -= 5
			   If $Add_1 = 100 Or $Add_1 > 100 Then 
				  $Add_1 = 100
			   EndIf
			GUICtrlSetData($prog1,$Add_1)
			GUICtrlSetData($pktlb,"Fähigkeitspunkte: "&$Punkte)
			EndIf
		 Case $msg = $hungermoe
			If $Punkte < 10 Then
			   MsgBox(64,"Tomatogotchi","Du hast nur "&$Punkte&" Punkte. Du brauchst aber 10 Punkte!")
			EndIf
			If $Punkte >= 10 Then
			$Punkte -= 10
			$Add_2 += 35
			   If $Add_2 = 100 Or $Add_2 > 100 Then
				  $Add_2 = 100
			   EndIf
			$Div_1 -= 15  ;<--- Wert der Fröhlichkeit
			GUICtrlSetData($prog2,$Add_2)
			GUICtrlSetData($prog3,$Div_1)
			GUICtrlSetData($pktlb,"Fähigkeitspunkte: "&$Punkte)
			EndIf
		 Case $msg = $hungerkuch
			If $Punkte < 7 Then
			   MsgBox(64,"Tomatogotchi","Du hast nur "&$Punkte&" Punkte. Du brauchst aber 7 Punkte!")
			EndIf
			If $Punkte >= 7 Then
			$Punkte -= 7
			$Add_2 += 10
			   If $Add_2 = 100 Or $Add_2 > 100 Then
				  $Add_2 = 100
			   EndIf
			$Div_1 +=10
			$Gesu_ -= 5
			   If $Gesu_ = 0 Or $Gesu_ < 0 Then
				  $Gesu_ = 0
			   Endif
			   If $Gesu_ = 100 Or $Gesu_ > 100 Then
				  $Gesu_ = 100
			   Endif
			   EndIf
			GUICtrlSetData($prog2,$Add_2)
			GUICtrlSetData($prog3,$Div_1)
			GUICtrlSetData($prog4,$Gesu_)
			GUICtrlSetData($pktlb,"Fähigkeitspunkte: "&$Punkte)
		 Case $msg = $hungerbrot
			If $Punkte < 13 Then
			   MsgBox(64,"Tomatogotchi","Du hast nur "&$Punkte&" Punkte. Du brauchst aber 13 Punkte!")
			EndIf
			If $Punkte >= 13 Then
			$Punkte -= 13
			$Add_2 += 40
			   If $Add_2 = 100 Or $Add_2 > 100 Then
				  $Add_2 = 100
			   EndIf
			   EndIf
			GUICtrlSetData($prog2,$Add_2)
			GUICtrlSetData($pktlb,"Fähigkeitspunkte: "&$Punkte)
		 Case $msg = $spiel
			If $Punkte < 20 Then
			   MsgBox(64,"Tomatogotchi","Du hast nur "&$Punkte&" Punkte. Du brauchst aber 20 Punkte!")
			EndIf
			If $Punkte >= 20 Then
			$Punkte -= 20
			$Div_1 += 30
			   If $Div_1 = 100 Or $Div_1 > 100 Then
				  $Div_1 = 100
			   EndIf
			GUICtrlSetData($prog3,$Div_1)
			GUICtrlSetData($pktlb,"Fähigkeitspunkte: "&$Punkte)
			EndIf
		 EndSelect
   If TimerDiff($DurstRef) > $durstzeit Then
	  $Add_1 -= 1
	  If $Add_1 < 0 Then 
		 $Dead = 1
		 $Add_1 = 0
	  EndIf
	  GUICtrlSetData($prog1,$Add_1)
	  $DurstRef = TimerInit()
   EndIf
   If TimerDiff($SpassRef) > $spasszeit Then
	  $Div_1 = GUICtrlRead($prog3)
	  If $Div_1 = 0 Or $Div_1 < 0 Then 
		 $Gesu_ -= 2
		 $Div_1 = 0
	  EndIf
	  	  If $Div_1 = 100 Or $Div_1 > 99 Then 
		 $Gesu_ += 2
		 $Div_1 = 100
	  EndIf
	  GUICtrlSetData($prog3,$Div_1)
	  GUICtrlSetData($prog4,$Gesu_)
	  $SpassRef = TimerInit()
   Endif
   
   If TimerDiff($Spass2Ref) > $spasszeit_2 Then
	  $Div_1 = GUICtrlRead($prog3)
	  $Div_1 -= 1
	  GUICtrlSetData($prog3,$Div_1)
	  $Spass2Ref = TimerInit()
   Endif
   
   If TimerDiff($HungerRef) > $hungerzeit Then
	  $Add_2 = GUICtrlRead($prog2)
	  $Add_2 -= 1
	  GUICtrlSetData($prog2,$Add_2)
	  $HungerRef = TimerInit()
   Endif

      If $minu > 59 Then
	  $stu +=1
	  $minu = 0
   EndIf
   If $stu = 24 Then
	  $Punkte += 123
	  GUICtrlSetData($pktlb,"Fähigkeitspunkte: "&$Punkte)
	  $Alter0 += 1
	  If $Alter0 = 5 Then
		 $Alter +=1
		 $Alter0 = 0
		 GUICtrlSetData($alterlb"Alter: "&$Alter)
	  EndIf
	  $stu = 0
   EndIf
   If TimerDiff($minute) > $mdiff Then
	  $minu += 1
	  $minute = TimerInit()
   EndIf
   For $i = 0 To 9
        If $stu = $i Then $sturl = "0"&$i
        If $minu = $i Then $mrl = "0"&$i
    Next  
   If $stu > 9 Then $sturl = $stu
   If $minu > 9 Then $mrl = $minu
   $zeit = "" & $sturl & ":" & $mrl & "" 
	  
   If TimerDiff($Vorf_In) > $vorf_zeit Then
	  $Vorfall = Random(0,550,1)
	  $Vorf_In = TimerInit()
   
   If $Vorfall = 5 or $Vorfall = 10 or $Vorfall = 15 Then
	  GUICtrlSetData($log4,GUICtrlRead($log3))
	  GUICtrlSetData($log3,GUICtrlRead($log2))
	  GUICtrlSetData($log2,GUICtrlRead($log1))
	  GUICtrlSetData($log1,"Ball wurde geklaut! -> Happiness um 1/3 gesenkt")
	  $Div_1 -= 33
	  GUICtrlSetData($prog3,$Div_1)
   
   elseIf $Vorfall = 50 or $Vorfall= 55 or $Vorfall = 60 Then
	  GUICtrlSetData($log4,GUICtrlRead($log3))
	  GUICtrlSetData($log3,GUICtrlRead($log2))
	  GUICtrlSetData($log2,GUICtrlRead($log1))
	  GUICtrlSetData($log1,"Terroranschlag! oO -> Gesundheit um 1/2 geteilt")
	  $Gesu_ / 2
	  GUICtrlSetData($prog4,$Gesu_)
   
   
   elseIf $Vorfall = 300 or $Vorfall = 350 or $Vorfall = 400 or $Vorfall = 410 Then
	  GUICtrlSetData($log4,GUICtrlRead($log3))
	  GUICtrlSetData($log3,GUICtrlRead($log2))
	  GUICtrlSetData($log2,GUICtrlRead($log1))
	  GUICtrlSetData($log1,"Grippewelle! -> Happiness + Gesundheit um 1/3 gesenkt")
	  $Div_1 -= 33
	  $Gesu_ -= 33
	  GUICtrlSetData($prog3,$Div_1)
	  GUICtrlSetData($prog4,$Gesu_)
   
   ElseIf $Vorfall = 500 or $Vorfall = 510 or $Vorfall = 520 or $Vorfall = 530 or $Vorfall = 540 Then
	  GUICtrlSetData($log4,GUICtrlRead($log3))
	  GUICtrlSetData($log3,GUICtrlRead($log2))
	  GUICtrlSetData($log2,GUICtrlRead($log1))
	  GUICtrlSetData($log1,"Arztbesuch! -> Happiness etwas gesenkt | Gesundheit aufgefüllt")
	  $Gesu_ = 100
	  GUICtrlSetData($prog4,$Gesu_)
   
else 
   GUICtrlSetData($log4,GUICtrlRead($log3))
	  GUICtrlSetData($log3,GUICtrlRead($log2))
	  GUICtrlSetData($log2,GUICtrlRead($log1))
	  GUICtrlSetData($log1,"---- Kein Vorfall ----")
   EndIf
EndIf
   $Dead = 0
   $Dead1 = 0
   $Gesu_ = 100
   If $Gesu_ <= 0 Then
	  MsgBox(64,"Tomatogotchi","Dein Tier ist an einer Krankheit gestorben")
	  ExitLoop
   EndIf
   If $Dead = 1 or $Dead1 = 1 Then
	  $Tage = ($Alter * 5) + $Alter0
	  If $Dead = 1 Then  MsgBox(64,"Tomatogotchi","Tag: "&$Tage& @CRLF &"Uhrzeit: "& $Zeit&@crlf&"Dein Tier ist verdurstet!"&@crlf &"Dein Tier wurde "&$Alter&" Jahre alt."&@crlf &"Übrige Fähigkeitspunkte: "&$Punkte)
	  If $Dead1 = 1 Then MsgBox(64,"Tomatogotchi","Tag: "&$Tage& @CRLF &"Uhrzeit: "& $Zeit&@crlf&"Dein Tier ist verhungert!"&@crlf &"Dein Tier wurde "&$Alter&" Jahre alt."&@crlf &"Übrige Fähigkeitspunkte: "&$Punkte)
	  If $Dead = 1 And $Dead1 = 1 Then MsgBox(64,"Tomatogotchi","Tag: "&$Tage& @CRLF &"Uhrzeit: "& $Zeit&@crlf&"Dein Tier ist verhungert & verdurstet!"&@crlf &"Dein Tier wurde "&$Alter&" Jahre alt."&@crlf &"Übrige Fähigkeitspunkte: "&$Punkte)
	  ExitLoop
   EndIf
   GUICtrlSetData($time,$zeit)
   $doppel=GUICtrlRead($dopzeit)
   $vierfach=GUICtrlRead($vierzeit)
   If $doppel == 1 And $vierfach == 1 Then
	  GUICtrlSetState($dopzeit,4)
	  GUICtrlSetState($vierzeit,4)
   EndIf
   If $doppel == 1 And $vierfach == 4 Then
	  ;milti 2
	  $mdiff = 50
	  $durstzeit = 850
	  $spasszeit = 700
	  $spasszeit_2 = 2200
	  $hungerzeit = 1200
	  $vorf_zeit = 3800
   EndIf
   If $doppel == 4 And $vierfach == 1 Then
	  ;multi 4
	  $mdiff = 25
	  $durstzeit = 425
	  $spasszeit = 350
	  $spasszeit_2 = 1100
	  $hungerzeit = 600
	  $vorf_zeit = 3800
   EndIf
   If $doppel == 4 And $vierfach == 4 Then
	  ;multi norm
	  $mdiff = 100
	  $durstzeit = 1700
	  $spasszeit = 1400
	  $spasszeit_2 = 4400
	  $hungerzeit = 2400
	  $vorf_zeit = 4000
   EndIf
   
   SleeP(25)
   WEnd
07/18/2012 15:29 TheAldi#2
Hab 2 kleine Fehler verbessert in anderen Zeilen

Bei mir läufts Problemlos

Code:
#RequireAdmin
#include <GUIConstantsEx.au3>
#include <ProgressConstants.au3>

   Global $Durst, $Add_1 = 60 , $zeit = "0:00", $stu = 0, $minu = 0, $mdiff = 100, $Add_2 = 55, $sturl = "00", $minusdebug = 0, $deadart = "Error", $Dead = 0, $Dead1 = 0
   ;Durst == Knopf Trinken , Add_1 == Wert Durst , Add_2 == Wert Hunger , mdiff == zeit zwischen den sekunden
   Global $Div_1 = 90 , $Gesu_ = 100 , $Alter = 0 , $Alter0 = 0, $Punkte = 120, $durstzeit = 1300, $spasszeit = 1000, $spasszeit_2 = 4000, $hungerzeit = 2000, $vorf_zeit = 4000; Div_1 == Fröhlichk. , Gesu_ == Gesundheit
   $GUI = GUICreate("Tomatogotchi",500,300,50,50)
   GUICtrlCreatePic("C:\Users\Pc\Downloads\tomate.jpg",0,0,500,300)
   GUICtrlSetState(-1, $GUI_DISABLE)
   SoundPlay("C:\Users\Pc\Desktop\FSS_T.mp3")
   $time = GUICtrlCreateLabel("Time:" & $zeit & "",460,10,30,20)
   GUICtrlCreateLabel("Durstig",10,10,50,20)
   $prog1 = GUICtrlCreateProgress(70, 10, 200, 20) ;durst
   GUICtrlCreateLabel("Sitt",280,10,50,20)
   $durst = GUICtrlCreateButton("Trinken [5]", 320, 10, 85, 20)
   GUICtrlCreateLabel("Hungrig",10,40,50,20)
   $prog2 = GUICtrlCreateProgress(70, 40, 200, 20) ;hunger
   GUICtrlCreateLabel("Satt",280,40,50,20)
   $hungermoe = GUICtrlCreateButton("Essen[Möhre|10]", 320, 40, 85, 20)
   $hungerkuch =GUICtrlCreateButton("Essen[Kuchen|7]", 410, 40, 85, 20)
   $hungerbrot = GUICtrlCreateButton("Essen[Brot|13]", 320, 70, 85, 20)
   $arzt = GUICtrlCreateButton("Hausarzt[35]",320,100,85,20)
   $spiel = GUICtrlCreateButton("Spielen[20]", 410, 70, 85, 20)
   GUICtrlCreateLabel("Traurig",10,70,41,20)
   $prog3 = GUICtrlCreateProgress(70, 70, 200, 20) ;fröhlick.
   GUICtrlCreateLabel("Fröhlig",280,70,30,12)
   GUICtrlCreateLabel("Krank",10,100,28,12)
   $prog4 = GUICtrlCreateProgress(70,100,200,20)
   GUICtrlCreateLabel("Gesund",280,100,37,11)
   $alterlb = GUICtrlCreateLabel("Alter: "&$Alter,410,10,40,20)
   $Pktlb=GUICtrlCreateLabel("Fähigkeitspunkte: "&$Punkte,360,260,105,20)
   $dopzeit= GUICtrlCreateCheckbox("Doppelte Zeit" , 360, 220,105,20)
   $vierzeit= GUICtrlCreateCheckbox("Vierfache Zeit" , 360, 240,105,20)
   GUICtrlSetBkColor($pktlb,0xcc2222)
   GUICtrlSetBkColor($dopzeit,0xcc2222)
   GUICtrlSetBkColor($vierzeit,0xcc2222)
   ;------ Log ------
   $log1 = GUICtrlCreateLabel("",10,190,320,15)
   GUICtrlSetBkColor($log1,0xff5555)
   $log2 = GUICtrlCreateLabel("",10,220,320,15)
   GUICtrlSetBkColor($log2,0xff7555)
   $log3 = GUICtrlCreateLabel("",10,250,320,15)
   GUICtrlSetBkColor($log3,0xff9555)
   $log4 = GUICtrlCreateLabel("",10,280,320,15)
   GUICtrlSetBkColor($log4,0xffCCCC)
   ;---- Ende Log ----

   GUISetState()
   GUICtrlSetData($prog1,$Add_1)
   GUICtrlSetData($prog2,$Add_2)
   GUICtrlSetData($prog3,$Div_1)
   GUICtrlSetData($prog4,$Gesu_)
   $wait = 20; Warte 20ms bis zum nächsten Schritt
   $s = 0; Progressbar-
   ;296000

   $DurstRef = TimerInit()
   $Vorf_In = TimerInit()
   $SpassRef = TimerInit()
   $Spass2Ref = TimerInit()
   $HungerRef = TimerInit()
   $minute = TimerInit()
   While 1
	  $msg = GUIGetMsg()
	  Select
		 Case $msg = -3
			ExitLoop
		 Case $msg = $arzt
			If $Punkte < 35 Then
			   MsgBox(64,"Tomatogotchi","Du hast nur "&$Punkte&" Punkte. Du brauchst aber 35 Punkte!")
			EndIf
			If $Punkte >= 35 Then
			$Gesu_ = 100
			$Punkte -= 35
			If $Gesu_ = 100 Or $Gesu_ > 100 Then
				  $Gesu_ = 100
			   Endif
			GUICtrlSetData($prog4,$Gesu_)
			GUICtrlSetData($pktlb,"Fähigkeitspunkte: "&$Punkte)
			EndIf
		 Case $msg = $durst
			If $Punkte < 5 Then
			   MsgBox(64,"Tomatogotchi","Du hast nur "&$Punkte&" Punkte. Du brauchst aber 5 Punkte!")
			EndIf
			If $Punkte >= 5 Then
			$Add_1 += 15
			$Punkte -= 5
			   If $Add_1 = 100 Or $Add_1 > 100 Then
				  $Add_1 = 100
			   EndIf
			GUICtrlSetData($prog1,$Add_1)
			GUICtrlSetData($pktlb,"Fähigkeitspunkte: "&$Punkte)
			EndIf
		 Case $msg = $hungermoe
			If $Punkte < 10 Then
			   MsgBox(64,"Tomatogotchi","Du hast nur "&$Punkte&" Punkte. Du brauchst aber 10 Punkte!")
			EndIf
			If $Punkte >= 10 Then
			$Punkte -= 10
			$Add_2 += 35
			   If $Add_2 = 100 Or $Add_2 > 100 Then
				  $Add_2 = 100
			   EndIf
			$Div_1 -= 15  ;<--- Wert der Fröhlichkeit
			GUICtrlSetData($prog2,$Add_2)
			GUICtrlSetData($prog3,$Div_1)
			GUICtrlSetData($pktlb,"Fähigkeitspunkte: "&$Punkte)
			EndIf
		 Case $msg = $hungerkuch
			If $Punkte < 7 Then
			   MsgBox(64,"Tomatogotchi","Du hast nur "&$Punkte&" Punkte. Du brauchst aber 7 Punkte!")
			EndIf
			If $Punkte >= 7 Then
			$Punkte -= 7
			$Add_2 += 10
			   If $Add_2 = 100 Or $Add_2 > 100 Then
				  $Add_2 = 100
			   EndIf
			$Div_1 +=10
			$Gesu_ -= 5
			   If $Gesu_ = 0 Or $Gesu_ < 0 Then
				  $Gesu_ = 0
			   Endif
			   If $Gesu_ = 100 Or $Gesu_ > 100 Then
				  $Gesu_ = 100
			   Endif
			   EndIf
			GUICtrlSetData($prog2,$Add_2)
			GUICtrlSetData($prog3,$Div_1)
			GUICtrlSetData($prog4,$Gesu_)
			GUICtrlSetData($pktlb,"Fähigkeitspunkte: "&$Punkte)
		 Case $msg = $hungerbrot
			If $Punkte < 13 Then
			   MsgBox(64,"Tomatogotchi","Du hast nur "&$Punkte&" Punkte. Du brauchst aber 13 Punkte!")
			EndIf
			If $Punkte >= 13 Then
			$Punkte -= 13
			$Add_2 += 40
			   If $Add_2 = 100 Or $Add_2 > 100 Then
				  $Add_2 = 100
			   EndIf
			   EndIf
			GUICtrlSetData($prog2,$Add_2)
			GUICtrlSetData($pktlb,"Fähigkeitspunkte: "&$Punkte)
		 Case $msg = $spiel
			If $Punkte < 20 Then
			   MsgBox(64,"Tomatogotchi","Du hast nur "&$Punkte&" Punkte. Du brauchst aber 20 Punkte!")
			EndIf
			If $Punkte >= 20 Then
			$Punkte -= 20
			$Div_1 += 30
			   If $Div_1 = 100 Or $Div_1 > 100 Then
				  $Div_1 = 100
			   EndIf
			GUICtrlSetData($prog3,$Div_1)
			GUICtrlSetData($pktlb,"Fähigkeitspunkte: "&$Punkte)
			EndIf
		 EndSelect
   If TimerDiff($DurstRef) > $durstzeit Then
	  $Add_1 -= 1
	  If $Add_1 < 0 Then
		 $Dead = 1
		 $Add_1 = 0
	  EndIf
	  GUICtrlSetData($prog1,$Add_1)
	  $DurstRef = TimerInit()
   EndIf
   If TimerDiff($SpassRef) > $spasszeit Then
	  $Div_1 = GUICtrlRead($prog3)
	  If $Div_1 = 0 Or $Div_1 < 0 Then
		 $Gesu_ -= 2
		 $Div_1 = 0
	  EndIf
	  	  If $Div_1 = 100 Or $Div_1 > 99 Then
		 $Gesu_ += 2
		 $Div_1 = 100
	  EndIf
	  GUICtrlSetData($prog3,$Div_1)
	  GUICtrlSetData($prog4,$Gesu_)
	  $SpassRef = TimerInit()
   Endif

   If TimerDiff($Spass2Ref) > $spasszeit_2 Then
	  $Div_1 = GUICtrlRead($prog3)
	  $Div_1 -= 1
	  GUICtrlSetData($prog3,$Div_1)
	  $Spass2Ref = TimerInit()
   Endif

   If TimerDiff($HungerRef) > $hungerzeit Then
	  $Add_2 = GUICtrlRead($prog2)
	  $Add_2 -= 1
	  GUICtrlSetData($prog2,$Add_2)
	  $HungerRef = TimerInit()
   Endif

      If $minu > 59 Then
	  $stu +=1
	  $minu = 0
   EndIf
   If $stu = 24 Then
	  $Punkte += 123
	  GUICtrlSetData($pktlb,"Fähigkeitspunkte: "&$Punkte)
	  $Alter0 += 1
	  If $Alter0 = 5 Then
		 $Alter +=1
		 $Alter0 = 0
		 GUICtrlSetData($alterlb,"Alter: "&$Alter)
	  EndIf
	  $stu = 0
   EndIf
   If TimerDiff($minute) > $mdiff Then
	  $minu += 1
	  $minute = TimerInit()
   EndIf
   For $i = 0 To 9
        If $stu = $i Then $sturl = "0"&$i
        If $minu = $i Then $mrl = "0"&$i
    Next
   If $stu > 9 Then $sturl = $stu
   If $minu > 9 Then $mrl = $minu
   $zeit = "" & $sturl & ":" & $mrl & ""

   If TimerDiff($Vorf_In) > $vorf_zeit Then
	  $Vorfall = Random(0,550,1)
	  $Vorf_In = TimerInit()

   If $Vorfall = 5 or $Vorfall = 10 or $Vorfall = 15 Then
	  GUICtrlSetData($log4,GUICtrlRead($log3))
	  GUICtrlSetData($log3,GUICtrlRead($log2))
	  GUICtrlSetData($log2,GUICtrlRead($log1))
	  GUICtrlSetData($log1,"Ball wurde geklaut! -> Happiness um 1/3 gesenkt")
	  $Div_1 -= 33
	  GUICtrlSetData($prog3,$Div_1)

   elseIf $Vorfall = 50 or $Vorfall= 55 or $Vorfall = 60 Then
	  GUICtrlSetData($log4,GUICtrlRead($log3))
	  GUICtrlSetData($log3,GUICtrlRead($log2))
	  GUICtrlSetData($log2,GUICtrlRead($log1))
	  GUICtrlSetData($log1,"Terroranschlag! oO -> Gesundheit um 1/2 geteilt")
	  $Gesu_ = $Gesu_ / 2
	  GUICtrlSetData($prog4,$Gesu_)


   elseIf $Vorfall = 300 or $Vorfall = 350 or $Vorfall = 400 or $Vorfall = 410 Then
	  GUICtrlSetData($log4,GUICtrlRead($log3))
	  GUICtrlSetData($log3,GUICtrlRead($log2))
	  GUICtrlSetData($log2,GUICtrlRead($log1))
	  GUICtrlSetData($log1,"Grippewelle! -> Happiness + Gesundheit um 1/3 gesenkt")
	  $Div_1 -= 33
	  $Gesu_ -= 33
	  GUICtrlSetData($prog3,$Div_1)
	  GUICtrlSetData($prog4,$Gesu_)

   ElseIf $Vorfall = 500 or $Vorfall = 510 or $Vorfall = 520 or $Vorfall = 530 or $Vorfall = 540 Then
	  GUICtrlSetData($log4,GUICtrlRead($log3))
	  GUICtrlSetData($log3,GUICtrlRead($log2))
	  GUICtrlSetData($log2,GUICtrlRead($log1))
	  GUICtrlSetData($log1,"Arztbesuch! -> Happiness etwas gesenkt | Gesundheit aufgefüllt")
	  $Gesu_ = 100
	  GUICtrlSetData($prog4,$Gesu_)

else
   GUICtrlSetData($log4,GUICtrlRead($log3))
	  GUICtrlSetData($log3,GUICtrlRead($log2))
	  GUICtrlSetData($log2,GUICtrlRead($log1))
	  GUICtrlSetData($log1,"---- Kein Vorfall ----")
   EndIf
EndIf
   $Dead = 0
   $Dead1 = 0
   $Gesu_ = 100
   If $Gesu_ <= 0 Then
	  MsgBox(64,"Tomatogotchi","Dein Tier ist an einer Krankheit gestorben")
	  ExitLoop
   EndIf
   If $Dead = 1 or $Dead1 = 1 Then
	  $Tage = ($Alter * 5) + $Alter0
	  If $Dead = 1 Then  MsgBox(64,"Tomatogotchi","Tag: "&$Tage& @CRLF &"Uhrzeit: "& $Zeit&@crlf&"Dein Tier ist verdurstet!"&@crlf &"Dein Tier wurde "&$Alter&" Jahre alt."&@crlf &"Übrige Fähigkeitspunkte: "&$Punkte)
	  If $Dead1 = 1 Then MsgBox(64,"Tomatogotchi","Tag: "&$Tage& @CRLF &"Uhrzeit: "& $Zeit&@crlf&"Dein Tier ist verhungert!"&@crlf &"Dein Tier wurde "&$Alter&" Jahre alt."&@crlf &"Übrige Fähigkeitspunkte: "&$Punkte)
	  If $Dead = 1 And $Dead1 = 1 Then MsgBox(64,"Tomatogotchi","Tag: "&$Tage& @CRLF &"Uhrzeit: "& $Zeit&@crlf&"Dein Tier ist verhungert & verdurstet!"&@crlf &"Dein Tier wurde "&$Alter&" Jahre alt."&@crlf &"Übrige Fähigkeitspunkte: "&$Punkte)
	  ExitLoop
   EndIf
   GUICtrlSetData($time,$zeit)
   $doppel=GUICtrlRead($dopzeit)
   $vierfach=GUICtrlRead($vierzeit)
   If $doppel == 1 And $vierfach == 1 Then
	  GUICtrlSetState($dopzeit,4)
	  GUICtrlSetState($vierzeit,4)
   EndIf
   If $doppel == 1 And $vierfach == 4 Then
	  ;milti 2
	  $mdiff = 50
	  $durstzeit = 850
	  $spasszeit = 700
	  $spasszeit_2 = 2200
	  $hungerzeit = 1200
	  $vorf_zeit = 3800
   EndIf
   If $doppel == 4 And $vierfach == 1 Then
	  ;multi 4
	  $mdiff = 25
	  $durstzeit = 425
	  $spasszeit = 350
	  $spasszeit_2 = 1100
	  $hungerzeit = 600
	  $vorf_zeit = 3800
   EndIf
   If $doppel == 4 And $vierfach == 4 Then
	  ;multi norm
	  $mdiff = 100
	  $durstzeit = 1700
	  $spasszeit = 1400
	  $spasszeit_2 = 4400
	  $hungerzeit = 2400
	  $vorf_zeit = 4000
   EndIf

   SleeP(25)
   WEnd
Für das Soundplay :

Starte nachdem du Soundplay gestartet hast einen Timer. Frage diesen Timer immer ab und sobald der Timerwert größer ist als die Länge des Sounds wird wieder SoundPlay aufgerufen und der Timer zurückgesetzt
07/18/2012 15:32 piper332#3
Könntest du mir sagen, wo du was verbessert hast & was genau von mir falsch gemacht wurde?
07/18/2012 15:38 TheAldi#4
Zeile : 209 - Komma vergessen
GUICtrlSetData($alterlb,"Alter: " &$Alter)

Zeile : 242 - Ungülige Rechenoperation
$Gesu_ / 2

entweder:
$Gesu = $Gesu / 2
oder
$Gesu /= 2
07/18/2012 15:41 piper332#5
Ich danke dir.. Ich lass das Script 5-7 mins durchlaufen.
Mal schaun, obs jz klappt.
Aber warum hat er mir Line 318 als Fehler angezeigt?
07/18/2012 15:44 TheAldi#6
Hattest du es compiled , also zu einer .exe gemacht ?
Wenn ja dann liegts wahrscheinlich daran

Ansonsten ka ;)
07/18/2012 15:48 piper332#7
Ja ich habe es compiled. Dann liegt es vielleicht daran =)
Kannst du mir vllt. noch sagen, wie ich mein Hintergrundsound immer wieder hintereinander abspielen kann? :D
07/18/2012 15:49 TheAldi#8
Wie das geht habe ich ja oben beschrieben ;)
Ansonsten schick mir mal die Datei die du Abspiele willst per Nachricht und ich baus dir in dein Script ;)
07/18/2012 15:53 piper332#9
Achso.. das hab ich wohl übersehn xD Tschuldige.
Mit dem Timer hab ich schon versucht... vllt. hab ich vorhin was falsch gemacht..
Mit Timern kann ich ja eig. umgehn, aber anders geht das nicht, hab ich recht?
07/18/2012 15:54 TheAldi#10
Nicht das ich grade wüsste ;)

Edit :
Außer du gehst über DLL`S

Dann geht es wahrscheinlich ^^
07/18/2012 15:58 piper332#11
Okay, danke :)
07/18/2012 16:05 TheAldi#12
Hier kleines Bsp fürn Timer ;)
Version 1 (mit Timer)

Version 2 (ohne Timer)
Damit wird der Sound immer wieder neu gespielt ;)