![]() |
AW: Snake Spiel
Setz die KeyPreview-Eigenschaft des Forms auf true, dann kannst Du im OnKeyPress die entsprechende Taste abfragen und darauf reagieren. Und zur Formatierung: irgendwo hier im Forum ist der Styleguide verlinkt, an den sollte man sich weitestgehend halten.
[edit] Link gefunden: ![]() |
AW: Snake Spiel
gaaaanz laaaangsam... :zwinker:
Fang einfach mal damit an, den Quellcode vernünftig einzurücken und vor allem keine 2 Anweisungen in die gleiche Zeile. |
AW: Snake Spiel
so mal etwas aufgeräumt :)
ich hab das in der mainform auf true gesetzt, nur die frage ist, wie die procedure heißt und geschrieben wird :O ich kenn mich damit garnicht aus :( wie ihr merkt ich bin relativ neu in delphi :) |
AW: Snake Spiel
Klick auf das Form und setze im Objektinspektor KeyPreview auf true. Dann wechselst Du zu den Ereignissen und gehst zu "OnKeyPress". Im Code dazu könntest Du dann so etwas machen (ganz einfache Variante, schöner wären eigene Methoden):
Delphi-Quellcode:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin case Key of 'a','A': BtnLinks.Click; 'd','D': BtnRechts.Click; 's','S': BtnUnten.Click; 'w','W': BtnHoch.Click; end; end; |
AW: Snake Spiel
mir fällt grade auf :(
Wenn man auf den beendenbutton klickt, wenn das spiel NICHT läuft, hat man die auswahlt zwischen weiter im programm bleiben und dem programm verlassen. Wenn ich auf programm verlassen gehe, verlässt er das programm! Jedoch wenn ich auf "nein im programm bleiben" klicke, kommt die "wiederholen ?" anfrage wieder :( die muss da noch weg ... die wiederholen anfrage soll nur kommen, wenn das spiel am laufen ist und ich es stoppen möchte.. hiillfe |
AW: Snake Spiel
Zitat:
|
AW: Snake Spiel
viiel viiel tüffteln.
ich glaub ich sitz 20 stunden an dem projekt. ich hab mich vertan. man muss ja nichts schreiben, hab das mit den ereignissen überlesen :-[ |
AW: Snake Spiel
Nochmal kurz :D
Mir fiel auf, die Schlange startete immer oben Links, das habe ich geändert :) (kopf := Point(Random(BSB), Random(HSB));) Jedoch startet sie auch immer nur in Richtung unten!! Das möchte ich auch unterschiedlich haben ... vorschläge ?
Delphi-Quellcode:
procedure TForm1.Initialisierung;
var X, Y: Integer; 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 ende := False; Timer1.Enabled := True; Startbild.Visible:=false; ZPunkte.Visible:=true; APunkte.Visible:=true; BtnHoch.Visible:=True; BtnLinks.Visible:=True; BtnRechts.Visible:=True; BtnUnten.Visible:=True; end; |
AW: Snake Spiel
Dann wirst du wohl auch "richtung" ändern müssen?
|
AW: Snake Spiel
und wie ?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:22 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz