|
Swagger Jackin
(Gast)
n/a Beiträge |
#20
Die Einstellungen sollen gespeichert werden. Wie soll die saubere Methode aussehen ? Welche Komponenten müssen verwendet werden, ich verstehe es nicht ganz, Hilfe !??
Delphi-Quellcode:
das sind die Einstellungen --> funktionieren.
Das ist meine Form mit den einstellungen:
{=====================================================================} procedure TForm15.Button1Click(Sender: TObject); begin case ComboBox1.ItemIndex of 0: begin Form1.mediaPlayer1.FileName := 'Collapse.wav'; Form1.mediaplayer1.Open; Form1.mediaplayer1.Play; if Form1.mediaPlayer1.Position = Form1.mediaPlayer1.Length then begin Form1.mediaPlayer1.Rewind; Form1.mediaPlayer1.Play; end; end; 1: begin Form1.mediaplayer1.FileName := 'horse.wav'; Form1.mediaplayer1.Open; Form1.mediaplayer1.Play; if Form1.mediaPlayer1.Position = Form1.mediaPlayer1.Length then begin Form1.mediaPlayer1.Rewind; Form1.mediaPlayer1.Play; end; end; 2: begin Form1.mediaplayer1.FileName := 'electro.wav'; Form1.mediaplayer1.Open; Form1.mediaplayer1.Play; if Form1.mediaPlayer1.Position = Form1.mediaPlayer1.Length then begin Form1.mediaPlayer1.Rewind; Form1.mediaPlayer1.Play; end; end; 3: begin Form1.mediaplayer1.FileName := 'Memories.wav'; Form1.mediaplayer1.Open; Form1.mediaplayer1.Play; if Form1.mediaPlayer1.Position = Form1.mediaPlayer1.Length then begin Form1.mediaPlayer1.Rewind; Form1.mediaPlayer1.Play; end; end; 4: begin Form1.mediaplayer1.FileName := 'Jackin.wav'; Form1.mediaplayer1.Open; Form1.mediaplayer1.Play; if Form1.mediaPlayer1.Position = Form1.mediaPlayer1.Length then begin Form1.mediaPlayer1.Rewind; Form1.mediaPlayer1.Play; end; end; end; case Radiogroup1.ItemIndex of 0: begin Showmessage ('Sie haben Leicht gewählt'); Form1.NeuesSpiel; Form1.Zeit.Enabled := true; // Uhr anschalten Form1.Zeit.Interval := 550; // Zeitintervall beträgt 700 Millisekunden Form1.StatusBar1.Panels[1].Text := 'Runden : 30'; Runden := 30; Form1.Leicht.Enabled := False; // deaktiviert Leicht, da geladen Form1.Mittel.Enabled := True; Form1.Schwer.Enabled := True; Form1.StatusBar1.Panels[0].Text := 'Punkte : 0'; Punkte := 0; if Runden = 0 then begin Level :=Level+1; Runden :=(Level-1)*5+30; Form1.Zeit.Interval := Form1.Zeit.Interval-5; end; begin if anzahlGleichfarbigerbloecke > 1 then begin Form1.GleicheFarbenLoeschen; end; end end; 1: begin Showmessage ('Sie haben Mittel gewählt'); Form1.NeuesSpiel; Form1.Zeit.Enabled := true; // Uhr anschalten Form1.Zeit.Interval := 450; // Zeitintervall beträgt 300 Millisekunden Form1.Statusbar1.Panels[1].Text := 'Runden : 50'; Runden := 50; Form1.Leicht.Enabled := True; Form1.Mittel.Enabled := False; // deaktiviert Mittel, da geladen Form1.Schwer.Enabled := True; Form1.Statusbar1.Panels[0].Text := 'Punkte : 0'; Punkte := 0; end; 2: begin Showmessage ('Sie haben Schwer gewählt'); Form1.NeuesSpiel; Form1.Zeit.Enabled := true; // Uhr anschalten Form1.Zeit.Interval := 300; // Zeitintervall beträgt 100 Millisekunden Form1.Statusbar1.Panels[1].Text := 'Runden : 70'; Runden := 70; Form1.Leicht.Enabled := True; Form1.Mittel.Enabled := True; Form1.Schwer.Enabled := False; // deaktiviert Schwer, da geladen Form1.Statusbar1.Panels[0].Text := 'Punkte : 0'; Punkte := 0; end; end; begin if ComboBox1.ItemIndex = 0 then Showmessage ('Sie haben Collapse Music gewählt'); if ComboBox1.ItemIndex = 1 then Showmessage ('Sie haben Amazing Horse gewählt'); if ComboBox1.ItemIndex = 2 then Showmessage ('Sie haben Electro Gypsy gewählt'); if ComboBox1.ItemIndex = 3 then Showmessage ('Sie haben Memories gewählt'); if ComboBox1.ItemIndex = 4 then Showmessage ('Sie haben Swagger Jackin gewählt'); end; if ComboBox1.ItemIndex = 0 then begin if MessageDlg('Wirklich Beginnen ?',mtInformation,[mbYes,mbNo],0)=6 // Frage gestellt bevor Start then Form15.Close; end else begin Showmessage('Bitte wähle einen Spielmodus, einen Schwierigkeitsgrad und eine Musik !');// müssen drei Einstellungen gewählt sein end; end; {=====================================================================} procedure TForm15.ComboBox1Change(Sender: TObject); begin if ComboBox1.ItemIndex = 0 then begin Form1.NeuesSpiel; Form1.Spielmodus1.Enabled := False; Form1.Schwierigkeitsgrad.Enabled := False; Form1.Highscore1.Enabled := False; if Form1.Zeit.Enabled = false // wenn Zeit nicht läuft dann then begin Form1.Zeit.Enabled := true; // Programm starten/Zeit laufen lassen end; if Form1.Spielfeld.Enabled = false then begin Form1.Spielfeld.Enabled := true; end; Form1.StatusBar1.Panels[0].Text := 'Punkte : 0'; Form1.StatusBar1.Panels[1].Text := 'Runden : 30'; Punkte := 0; Runden := 30; anzahlgleichfarbigerbloecke := 0; Form1.Zeit.Enabled := true; Form13.start := now; Form1.Spielmodus1.Enabled := False; Form1.Schwierigkeitsgrad.Enabled := False; Form1.Highscore1.Enabled := False; Form9.Close; end else begin Form1.NeuesSpiel; Form1.Spielmodus1.Enabled := False; Form1.Schwierigkeitsgrad.Enabled := False; Form1.Highscore1.Enabled := False; if Form1.Zeit.Enabled = false // wenn Zeit nicht läuft dann then begin Form1.Zeit.Enabled := true; // Programm starten/Zeit laufen lassen end; if Form1.Spielfeld.Enabled = false then begin Form1.Spielfeld.Enabled := true; end; Form1.StatusBar1.Panels[0].Text := 'Punkte : 0'; Form1.StatusBar1.Panels[1].Text := 'Runden : 50'; Punkte := 0; Runden := 50; anzahlgleichfarbigerbloecke := 0; Form1.Zeit.Enabled := true; Form13.start := now; Form1.Spielmodus1.Enabled := False; Form1.Schwierigkeitsgrad.Enabled := False; Form1.Highscore1.Enabled := False; Form9.Close; end; end; {=====================================================================} end. Vielleicht muss man beim Neues Spiel die Einstellungen speichern:
Delphi-Quellcode:
{=====================================================================}
procedure TForm1.FormActivate(Sender: TObject); begin if Form15.ShowModal then ----> hier ist ein Fehler (then muss vom Typ boolean sein) steht als Fehler da begin Spielmodus1.Enabled := True; Schwierigkeitsgrad.Enabled := True; Highscore1.Enabled := True; if Zeit.Enabled = true // wenn Zeit läuft dann then begin Zeit.Enabled := false; // Programm stoppen/ Zeit anhalten end; if Spielfeld.Enabled = true // wenn Oberfläche bedienbar then begin Spielfeld.Enabled := false; // Oberfläche deaktivieren end; end; Spielfeld.DefaultColWidth := Zellengroesse; Spielfeld.DefaultRowHeight := Zellengroesse; Spielfeld.ClientWidth := Spielfeld.ColCount*(Zellengroesse+Spielfeld.GridLineWidth); Spielfeld.ClientHeight := Spielfeld.RowCount*(Zellengroesse+Spielfeld.GridLineWidth); Leiste.DefaultColWidth := Zellengroesse; Leiste.DefaultRowHeight := Zellengroesse; Leiste.ClientWidth := Leiste.ColCount*(Zellengroesse+Leiste.GridLineWidth); Leiste.ClientHeight := Leiste.RowCount*(Zellengroesse+Leiste.GridLineWidth); // Statusbar im Verhältnis 1:3 teilen StatusBar1.Panels[0].Width := StatusBar1.Width div 2; Form1.Width := Spielfeld.ClientWidth+12; Form1.Height := Spielfeld.ClientHeight+80+Leiste.ClientHeight+30; randomize; NeuesSpiel; Spielfeld.Enabled := false; // bei Start Stillstand Zeit.Enabled := false; // Zeit anhalten sofort nach Start Classic:= true; end; {=====================================================================} {=====================================================================} procedure TForm1.NeuesSpiel1Click(Sender: TObject); begin NeuesSpiel; Statusbar1.Panels[0].Text := 'Punkte : 0'; Statusbar1.Panels[1].Text := 'Runden : 30'; // Statusbar1.Panels[2].Text := 'Level : 1'; // Level := 1; Punkte := 0; Runden := 30; anzahlgleichfarbigerbloecke := 0; Zeit.Enabled := true; Form13.start := now; Spielmodus1.Enabled := False; Schwierigkeitsgrad.Enabled := False; Highscore1.Enabled := False; end; {=====================================================================} {=====================================================================} procedure TForm1.NeuesSpiel; var x,y,i : integer; begin for x := 0 to Spielfeld.ColCount-1 do begin i := random(4)+1; // zufällige Anordnung der Kästchen for y := Spielfeld.RowCount-i to Spielfeld.RowCount-1 do Spielfeld.Cells[x,y] := IntToStr(random(5)); // belegt alle Felder mit Farbe for y := 0 to Spielfeld.RowCount-i-1 do Spielfeld.Cells[x,y] := '-1'; // belegt alle leeren Felder mit schwarz end; for x := 0 to Leiste.ColCount-1 do Leiste.Cells[x,0] := IntToStr(random(5)); // zufällige Belegung der Leiste Zeit.Enabled := true; // Uhr anschalten Zeit.Interval := 500; Kaestchen := Spielfeld.ColCount; LetzteZeile := false; Spielfeld.Enabled := true; end; {=====================================================================} |
![]() |
Ansicht |
![]() |
![]() |
![]() |
ForumregelnEs ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.
BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus. Trackbacks are an
Pingbacks are an
Refbacks are aus
|
|
Nützliche Links |
Heutige Beiträge |
Sitemap |
Suchen |
Code-Library |
Wer ist online |
Alle Foren als gelesen markieren |
Gehe zu... |
LinkBack |
![]() |
![]() |