AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Snake für die Schule programmieren,Pause;Highscoures einbaun
Thema durchsuchen
Ansicht
Themen-Optionen

Snake für die Schule programmieren,Pause;Highscoures einbaun

Offene Frage von "MarkusUhl"
Ein Thema von MarkusUhl · begonnen am 20. Jun 2006 · letzter Beitrag vom 18. Sep 2006
Antwort Antwort
Seite 4 von 8   « Erste     234 56     Letzte »    
MarkusUhl

Registriert seit: 20. Jun 2006
35 Beiträge
 
#31

Re: Snake für die Schule programmieren,Pause;Highscoures ein

  Alt 26. Jun 2006, 14:36
Hallo da bin ich wieder. Leider habe ich nichts darüber gefunden, wie es schnell genug mit den Pfeiltasten steuern kann. Jemand ne Idee?
Dann noch das Problem mit der Highscore, es müsse eine datei angelegt werden, in der der eingegebene Name und die Punkte gespeichert werden. Leider habe ich davon überhaupt keinen Plan
  Mit Zitat antworten Zitat
Benutzerbild von inherited
inherited

Registriert seit: 19. Dez 2005
Ort: Rosdorf
2.022 Beiträge
 
Turbo Delphi für Win32
 
#32

Re: Snake für die Schule programmieren,Pause;Highscoures ein

  Alt 26. Jun 2006, 15:22
Entweder nimmst d
u dafür eine Ini-Datei oder einen FileStream.
Beispiel Filestream:
Delphi-Quellcode:
var
  fs: TFileStream;
begin
  try
    fs:= TFileStream.Create(Dateiname, fmCreate);
    fs.Write(Length(RekordName), SizeOf(Integer));
    fs.Write(RekordName, SizeOf(RekordName));
    fs.Write(Length(RekordZahl), SizeOf(Integer));
    fs.Write(RekordZahl, SizeOf(RekordZahl));
  finally
    fs.Free;
end;

[...]

var
  fs: TFileStream;
begin
  fs:= TFileStream.Create(Dateiname, fmOpenRead);
  try
    fs.Read(Laenge, SizeOf(Integer));
    fs.Read(AktuellerRekordName, Laenge);
    fs.Read(Laenge, SizeOf(Integer));
    fs.Read(AktuellerRekord, Laenge);
  finally
    fs.Free;
Ohne garantie bin heut nich so gut drauf^^
Also, verbessert mich wenn ich falsch liege oder stehe^^
Nikolai Wyderka

SWIM SWIM HUNGRY!
Neuer Blog: hier!
  Mit Zitat antworten Zitat
MarkusUhl

Registriert seit: 20. Jun 2006
35 Beiträge
 
#33

Re: Snake für die Schule programmieren,Pause;Highscoures ein

  Alt 26. Jun 2006, 15:25
Danke dir, leider verstehe ich das net....^^
Es muss sich doch auch ein edit fenster öffnen wo ich den namen eintragen muss. kannst du mir helfen bei den pfeiltasten die zu steuern?
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#34

Re: Snake für die Schule programmieren,Pause;Highscoures ein

  Alt 26. Jun 2006, 15:41
also bei onkeydown kannst du die pfeiltasten (MSDN-Library durchsuchenVK_LEFT etc.) abprüfen, außerdem in einer schleife o.ä. über MSDN-Library durchsuchengetAsyncKeyState
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
MarkusUhl

Registriert seit: 20. Jun 2006
35 Beiträge
 
#35

Re: Snake für die Schule programmieren,Pause;Highscoures ein

  Alt 26. Jun 2006, 15:44
Sry ich habe davon keine Ahnung. Verstehe nur Bahnhof. Onekeydown soll zu langsam sein habe ich gehört---
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#36

Re: Snake für die Schule programmieren,Pause;Highscoures ein

  Alt 26. Jun 2006, 16:52
Keine Ahnung ist keine Entschuldigung

In Spielen ist es oft üblich, eine enge Haupt- oder Renderschleife laufen zu lassen, in der alle Stati des Programmes (deshalb auch "Statemachine-Ansatz") überprüft und Aktionen ausgeführt werden:

Delphi-Quellcode:
while not bClose do
  begin
    Application.ProcessMessages; //wenn du mit der VCL und mit Stuerelementen arbeiten willst, musst du hier die WIndows-Nachrichten überprüfen
    if GetAsyncKeyState(VK_LEFT) < 0 then //sollte man natürlich in eine Prozedur / Funktion auslagern
      ....
    Render; //Frame malen
  end;
Ich denke nicht, dass OnKeyDown langsam wäre; OnKeyDown reagiert auf die "WM_KEYDN" (o.ä. ) Windows-Message und sollte über die Form unmittelbar erreicht werden. Dort kannst du dann die Eigenschaft Key überprüfen:

Delphi-Quellcode:
if Key = VK_LEFT then
  ...
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
MarkusUhl

Registriert seit: 20. Jun 2006
35 Beiträge
 
#37

Re: Snake für die Schule programmieren,Pause;Highscoures ein

  Alt 26. Jun 2006, 17:01
Ich finde letzteres einfacher. Nur wie baue ich das in den quelltext ein. habe z.zt prozeduren, für die buttonclicks
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#38

Re: Snake für die Schule programmieren,Pause;Highscoures ein

  Alt 26. Jun 2006, 17:49
Du hast bereits mit den Buttons entsprechende Prozeduren für die Bewegung? dann so:

- Auf die Form gehen
- Im OI auf "Ereignisse"
- auf "OnKeyDown" doppelklicken
- dann das in die neue Prozedur eintragen:

Delphi-Quellcode:
case Key of
  VK_LEFT: Schlange_Links(self); // wird bei dir wohl Button1Click oder so heißen ;)
  VK_RIGHT: ...
end;
Du rufst also einfach die Prozeduren auf, die du schon bei den Buttons benutzt. Warum das irgendwie langsamer sein sollte als anders, weiß ich nicht...

Evenutell solltest du KeyPreview der Form im OI auf true stellen, damit du alle Tastendrücke mitkriegst.
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
MarkusUhl

Registriert seit: 20. Jun 2006
35 Beiträge
 
#39

Re: Snake für die Schule programmieren,Pause;Highscoures ein

  Alt 26. Jun 2006, 21:56
Da kommt immer ) erwartet aber : gefunden.... In der parameterliste ist irgendwas falsch...
was muss da rein
  Mit Zitat antworten Zitat
MarkusUhl

Registriert seit: 20. Jun 2006
35 Beiträge
 
#40

Re: Snake für die Schule programmieren,Pause;Highscoures ein

  Alt 26. Jun 2006, 21:58
Und wenn ich da die Klammer mach wo er sie haben will, dann kommt

"Dies Form des Methodenaufrufs ist nur für Klassenmethoden erlaubt"
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 4 von 8   « Erste     234 56     Letzte »    


Forumregeln

Es 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

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:29 Uhr.
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