Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Highscore bei Spiel (https://www.delphipraxis.net/180342-highscore-bei-spiel.html)

LlenaA 13. Mai 2014 11:47

Delphi-Version: XE5

Highscore bei Spiel
 
Hallo,

Ich bin gerade dabei das Spiel 'Snake' zu Programmieren. Als Vorlage hatte ich ein Tutorial dieser Seite.

Nun hab ich ein paar Fragen ob eine Erweiterung, so wie ich mir das Vorstelle, möglich ist.
Folgendes hätte ich vor:

-Der Highscore ist in einer anderen Unit, die mit der Hauptunit über die Unit Liste unter Implementation verknüpft ist.
-Der Highscore ist durch das MainMenü und nach Spielende zu erreichen bzw. öffnet sich.
-Der Highscore ist speicherbar, so dass man, wenn man das Spiel wieder mal öffnet den gleichen Highscore wieder hat.
-Highscore sollt den Namen und die Erreichten Punkte anzeigen
-Den Namen gibt man über ein Editorfeld in der Hauptunit ein.
-Punkte werden über ein Label in der Hauptunit sichtbar.

Wie löse ich das am besten mit dem Speichern? Ist die Lösung mit SaveDialog und speichern in einer *.txt Datei Sinnvoll?
Für die Sortierung beim Highscore ist da BubbleSort die einfachste Möglichkeit? Und wie lasse ich das ganze am besten in dem extra Fenster anzeigen?

Wär Super wenn ihr mir helfen könntet, da ich noch ein ziemlicher Anfänger in Sachen Programmieren bin, es aber für die Arbeit lernen muss.

Lg Lena

Sir Rufo 13. Mai 2014 12:01

AW: Highscore bei Spiel
 
Herzlich Willkommen in der DP!

Ist da Hier im Forum suchenHighscore nichts passendes dabei?

LlenaA 13. Mai 2014 12:14

AW: Highscore bei Spiel
 
Leider ist nur zum Teil etwas nützliches dabei. Auf einige meiner Fragen finde ich keine Antwort.:(

DeddyH 13. Mai 2014 12:22

AW: Highscore bei Spiel
 
Es wäre günstiger, je Thread nur eine Frage zu stellen, dann kann man auch zielgerichteter suchen. Welche Deiner Fragen sind denn noch offen?

Mavarik 13. Mai 2014 13:03

AW: Highscore bei Spiel
 
Soll der Highscore "nur" auf Deinem PC gespeichert werden oder von allen Nutzern?

Mavarik

PS.: kleine Anregung

LlenaA 13. Mai 2014 13:55

AW: Highscore bei Spiel
 
Der Highscore soll nur auf meinem PC gespeichert sein.

Offene Fragen:
Wie ich den Inhalt des Editorfeldes übergebe, denn bei mir geht das irgendwie nie.

DeddyH 13. Mai 2014 14:05

AW: Highscore bei Spiel
 
Was heißt "das geht nicht"? Angenommen, Du hast einen Record der Art
Delphi-Quellcode:
type
  THighscoreRec = record
    Name: Shortstring;
    Points: Cardinal;
  end;
dann sollte sich der doch auch befüllen lassen.
Delphi-Quellcode:
var HSRec: THighscoreRec;
begin
  HSRec.Name := EditPlayer.Text;
  HSRec.Points := Punkte;
end;
Es mus ja auch nicht unbedingt ein Record an, aber da die beiden Felder zusammengehören, bietet sich ein solcher an, wenn man nicht gleich eine Klasse schreiben will.

LlenaA 13. Mai 2014 14:15

AW: Highscore bei Spiel
 
Ich hätte das jetzt so gemacht, aber so bekomm ich die Fehlermeldung: Not enough actual parameters:

In der Unit mit dem Editorfeld:
Delphi-Quellcode:
procedure TForm1.NameÜbertragen(Sender: TObject);
begin
  SpielerName:= edit1.Text;
end;
In der Highscore Unit:

Delphi-Quellcode:
procedure TForm2.Button2Click(Sender: TObject);
begin
 with ListView1.Items.Add do begin
   Caption := Form1.NameÜbertragen;
   Data:= Pointer(Versuche);
   SubItems.Add(IntToStr(Integer(Data)));
 end;
end;
Bei Form1.NameÜbertragen erscheint der Fehler.

DeddyH 13. Mai 2014 14:18

AW: Highscore bei Spiel
 
Caption ist ein String und NameÜbertragen eine Prozedur(-Methode), das passt ja auch nicht zusammen. Oder sollte das eigentlich eine Funktion werden?
Delphi-Quellcode:
function TForm1.NameÜbertragen: string;
begin
  Result := edit1.Text;
end;

LlenaA 13. Mai 2014 14:22

AW: Highscore bei Spiel
 
Super funktioniert! Danke! :-D


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:19 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz