AW: Delphi Projektarbeit - 2D Autorennen
Zitat:
Delphi-Quellcode:
TCar = Record
Position : TPosition; Richtung : Single; Geschwindigkeit : Single; Image : TImage; end;
Delphi-Quellcode:
TAutoDriveList = Record CarNr : byte; Geschwindigkeit : Single; Richtung : Single; // Besser Position dann ist es Hardware unabhängig (z.b. auf Mac) Wann : TDateTime; end;
Delphi-Quellcode:
Procedure TForm46.MoveCar(Nr:Integer); // Form46 lol...PoC
begin Cars[Nr].Position.X := Cars[Nr].Position.X + Sin(Cars[Nr].Richtung*PI/180)*Cars[Nr].Geschwindigkeit; Cars[Nr].Position.Y := Cars[Nr].Position.Y + Cos(Cars[Nr].Richtung*PI/180)*Cars[Nr].Geschwindigkeit; Cars[Nr].Image.Position := Cars[Nr].Position; end;
Delphi-Quellcode:
Quick and Dirty.
procedure TForm46.Timer1Timer(Sender: TObject);
var i : Integer; begin Image5.Canvas.BeginScene; Label6.Text := FloattoStr(Image4.AbsoluteRect.Width) +' x '+FloattoStr(Image4.AbsoluteRect.Height); if Gas then Cars[Stear].Geschwindigkeit := Cars[Stear].Geschwindigkeit + 0.10 // Mehr Gas als Bremse ;-) else if Bremse then Cars[Stear].Geschwindigkeit := Cars[Stear].Geschwindigkeit - 0.05; if Links then begin Cars[Stear].Richtung := Cars[Stear].Richtung + 3; // Winkelgeschwindigkeit noch gemäßt Geschwindigkeit anpassen Cars[Stear].Image.RotationAngle := 90 - Cars[Stear].Richtung; end else if Rechts then begin Cars[Stear].Richtung := Cars[Stear].Richtung - 3; Cars[Stear].Image.RotationAngle := 90 - Cars[Stear].Richtung; end; if AutoDrive then begin // Gespeicherte Daten abspielen ... end; for i:=1 to 4 do begin MoveCar(i); CheckCar(i); // todo end; Image5.Canvas.EndScene; end; Die Daten für die Bewegungen können entweder eingegeben werden per Tastatur, oder aus dem gespeicherten Array abgespielt werden oder per UDP "rein" kommen. Mavarik |
AW: Delphi Projektarbeit - 2D Autorennen
@EpicProgger5000
Also ich bin mir immer noch nicht sicher was du programmieren willst. Inzwischen ist klar, dass es Draufsicht ist. Da gibt es aber immer noch etliche Möglichkeiten. Mavarik scheint zu wissen was du willst, denn er postet schon kräftig Code. Ich nicht. Entweder ist es eine Strecke im Kreis oder die Straße bewegt sich runter. Denn je nachdem was für ein Typ es ist, muss man es unterschiedlich lösen. Also bei dem Tempo wie du die Infos von dir gibts und der Art, dass man alles erfragen muss, wirst du vermutlich Weihnachten alle Infos zusammen haben. |
AW: Delphi Projektarbeit - 2D Autorennen
Zitat:
|
AW: Delphi Projektarbeit - 2D Autorennen
Liste der Anhänge anzeigen (Anzahl: 1)
@Mavarik
Ok, trotzdem, wenn man Fragen hat, dann interagiert man. Man stellt nicht eine Liste von Fragen und wartet bis Lösung kommt. Aber sei es drum. @EpicProgger5000 Ich weiß nicht ob ihr schon so weit seit das Programm von Mavarik nachzuprogen, denn wenn ich mir den Anfangscode ansehe, dann ist das Anfängercode. Auch der beste Koch kocht mit Wasser, also warum komplex machen. Die Frage die sich stellt ist also ob man sich alles per Copy&Paste zusammensucht oder es einfacher macht, dafür aber selbst. Ich würde euch empfehlen sich von der "bilddrehen" Prozedur zu trennen. Standessen würde ich - aufgrund des Kenntnisstandes der Gruppe - es einfacher machen. Zuerst ein Auto designen und davon acht Kopien erstellen, jedes Bild um 45° gedreht. Wie gesagt, auch der beste Koch kocht mit Wasser. Man muß nicht mit einer Bitmap arbeiten. Reduziert das Spiel auf acht Richtungen und erstellt für jede Richtung ein Bild. Dann alles im ImageList und je nach Richtung das passende Bild laden. Das Ergebnis würde dann so aussehen: |
AW: Delphi Projektarbeit - 2D Autorennen
Das wars dann wohl. Typischer Fall von "überhoben".
Sherlock |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:59 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