Delphi-PRAXiS
Seite 4 von 5   « Erste     234 5      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Delphi Snake Spiel (https://www.delphipraxis.net/152558-snake-spiel.html)

Matze 27. Jun 2010 17:05

AW: Snake Spiel
 
Zitat:

Zitat von Cueppi (Beitrag 1031890)
und wie ?

Zitat:

Zitat von Cueppi (Beitrag 1031868)
Delphi-Quellcode:
// ...

kopf := Point(Random(BSB), Random(HSB));

// ...

richtung := Point(0, 1);

Da hast du's doch ganz ähnlich gemacht bzw. irgendwo her kopiert.
Langsam zweifle ich, dass du da viel selbst gemacht, geschweige denn verstanden hast.

Cueppi 27. Jun 2010 17:20

AW: Snake Spiel
 
ja super clevere aussage!

Delphi-Quellcode:
begin
     BtnStart.Enabled := False;
     PunkteZaehler:= 0;
     for X:=0 to BSB do
     for Y:=0 to HSB do
     map[X, Y] := 0;
     Kopf:= Point(Random(BSB), Random(HSB));
     laengesnake := 4;
     richtung := Point( 0, 1);
     map[kopf.X, kopf.Y] := laengesnake;
     neuesfressen;
     bewegungSchlange;
     AktiviereButtons(True);
hab ich da stehen!
Wenn ich

Delphi-Quellcode:
begin
     BtnStart.Enabled := False;
     PunkteZaehler:= 0;
     for X:=0 to BSB do
     for Y:=0 to HSB do
     map[X, Y] := 0;
     Kopf:= Point(Random(BSB), Random(HSB));
     laengesnake := 4;
     richtung := Point(Random(BSB), Random(HSB));
     map[kopf.X, kopf.Y] := laengesnake;
     neuesfressen;
     bewegungSchlange;
     AktiviereButtons(True);
also bei richtung auch änder, dann flipt mir die schlange rum und das programm beendet sich!!!

Matze 27. Jun 2010 17:32

AW: Snake Spiel
 
Ich weiß nicht, was HSB und BSB sind. Du musst natürlich dafür sorgen, dass nur Werte zwischen 0 und 1 heraus kommen (evtl. auch negativ), falls das dein Problem sein sollte.

Cueppi 27. Jun 2010 17:44

AW: Snake Spiel
 
HSB = Höhe des Bereichs
BSB = Breite des Bereichs

also das Spielfeld ist gemeint

Matze 27. Jun 2010 17:45

AW: Snake Spiel
 
Eben.

DeddyH 27. Jun 2010 17:45

AW: Snake Spiel
 
Wenn Du wirklich so viel getüftelt hast, wirst Du Deinen eigenen Quelltext ja wohl am ehesten verstehen und wissen, was Du wieso gemacht hast. Für uns als Außenstehende ist das ungleich schwieriger.

Cueppi 27. Jun 2010 17:55

AW: Snake Spiel
 
also, HSB & BSB sind 35 Felder groß! ( 0 -34)
Das Raster ist in 10 eingeteilt.

Mein problem besteht nur darin, das die schlange immer nach unten startet.
Sie soll nur immer unterschiedlich starten(mal rechts, mal links...)

//Kopf:= Point(Random(BSB), Random(HSB));
Die Position des Kopf's auf der Map ist zufällig.

//richtung := Point( 0, 1);
Die Startrichtung der Schlange ist x(BSB) =0, da x=0 keine bewegung nach links, rechts!
Die Startrichtung der Schlange ist y(HSB) =1, also startet in richtung Y-Achse, also nach unten!!!

Das möchte ich nicht mehr haben.
Der zufallsbefehl ist "Random" aaaaaaaber wenn ich den einfüge, flippt mir die schalnge rum und das spiel wird beendet :(

ich weiß doch selber nicht weiter :(
Ich bin neu in Delphi, habe selber noch Probleme.
Ich habe es mit einem Tutorial eines Freundes gemacht..

DeddyH 27. Jun 2010 17:58

AW: Snake Spiel
 
Das ist nicht ganz so trivial. Wenn der Kopf zufällig irgendwo auf dem Spielfeld auftauchen darf, musst Du zunächst prüfen, ob sie in irgendeiner Richtung bereits so nah am Rand ist, dass ein Spiel gar nicht möglich ist und ggf. die Richtung korrigieren.

Cueppi 27. Jun 2010 18:02

AW: Snake Spiel
 
ja das weiß ich auch.

diese Prüfung habe ich versucht, nicht hinbekommen :(

Matze 27. Jun 2010 18:07

AW: Snake Spiel
 
Zeige uns doch mal deinen Versuch.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:50 Uhr.
Seite 4 von 5   « Erste     234 5      

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