AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

DX Rennspiel

Ein Thema von Nils_13 · begonnen am 24. Nov 2004 · letzter Beitrag vom 10. Dez 2004
Antwort Antwort
Seite 1 von 2  1 2      
Nils_13

Registriert seit: 15. Nov 2004
2.647 Beiträge
 
#1

DX Rennspiel

  Alt 24. Nov 2004, 20:06
Ich hab schon ein Thema eröffnet(DP Thread), aber neue Frage neuer Thread:
Ich will ein Rennspiel mit DX proggen.

Nur die ganzen Sachen die ich selbst gemacht (also alles) läuft nicht.

Folgende Frage, wie kann ich einen Sprite erstellen und ihn bewegen lassen?

  Mit Zitat antworten Zitat
Benutzerbild von HaZe
HaZe

Registriert seit: 1. Jul 2004
Ort: Oberottmarshausen
57 Beiträge
 
Delphi 6 Professional
 
#2

Re: DX Rennspiel

  Alt 25. Nov 2004, 11:18
hi

Schau mal bei
http://www.delphigl.com/
or
http://www.neobrothers.de/oldpage1/index.html
or
http://delphigl.de/
vorbei da gibts ein haufen tutorials zu diesen thema

ich hoffe ich konnte helfen

cya

HaZe
Domenik
--
Nur, weil man vor sich eine CPU hat, muß man das Denken nicht
einstellen.
  Mit Zitat antworten Zitat
Nils_13

Registriert seit: 15. Nov 2004
2.647 Beiträge
 
#3

Re: DX Rennspiel

  Alt 6. Dez 2004, 16:50
Wenn ich folgenden Code benutze, dann wird nie etwas angezeigt! Warum?

Delphi-Quellcode:
constructor TAuto.Create(AParent: TSprite);
begin
  inherited Create(AParent);

  Image := Form1.ImageList.Items.Find('Dodge Viper');
  Width := Image.Width;
  Height := Image.Height;
end;

destructor TAuto.Destroy;
begin
  inherited Destroy;
end;

procedure TAuto.DoMove(MoveCount: Integer);
begin
  inherited DoMove(MoveCount);

  if isUp in Form1.Input.States then
  begin
    X := X + cos(degtorad(Angle)) * MoveCount;
    Y := Y - sin(degtorad(Angle)) * MoveCount;
  end;

  if isDown in Form1.Input.States then
  begin
    X := X - cos(degtorad(Angle)) * MoveCount;
    Y := Y - sin(degtorad(Angle)) * MoveCount;
  end;

  if isLeft in Form1.Input.States then
    Angle := Angle - 1;

  if isRight in Form1.Input.States then
    Angle := Angle + 1;
end;

procedure TForm1.TimerTimer(Sender: TObject; LagCount: Integer);
begin
  Input.Update;
  SpriteEngine.Move(5);
  Draw.Surface.Fill(clBlack);
  SpriteEngine.Draw;
  Draw.Flip;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  with TAuto.Create(SpriteEngine.Engine) do
  begin
    X := 50;
    Y := 50;
  end;
end;

end.
Selbst wenn ich den Create-Befehl in einen Timer setzte läufts nicht *seufz*



  Mit Zitat antworten Zitat
Nils_13

Registriert seit: 15. Nov 2004
2.647 Beiträge
 
#4

Re: DX Rennspiel

  Alt 6. Dez 2004, 18:25


Habs oben abgeändert!
Ich wart schon den ganzen Tag auf'ne Antwort!

  Mit Zitat antworten Zitat
Benutzerbild von gordon freeman
gordon freeman

Registriert seit: 28. Jun 2003
Ort: Gelsenkirchen
337 Beiträge
 
Delphi 2005 Personal
 
#5

Re: DX Rennspiel

  Alt 6. Dez 2004, 19:29
Zitat von Nils_13:


Habs oben abgeändert!
Ich wart schon den ganzen Tag auf'ne Antwort!

IMHO ist das längst kein Tag gewesen, oder ist von 16:50 bis 18:25 jetzt schon ein Tag vergangen

Etwas mehr detaillreichtum wäre vieleicht angebracht. In deiner Create-Prozedure verwendest du X und Y, aber wo werden die denn verwendet. So wie ich das sehe weist du nur Werte zu, aber verwendest die Variablen nie (jedenfalls nicht im gezeigten Code)
Vieleicht hängst du den entsprechenden Code-Schnipsel noch an, so dass wir es im Zusammenhang testen können. Es wird schon keiner was klauen
  Mit Zitat antworten Zitat
Nils_13

Registriert seit: 15. Nov 2004
2.647 Beiträge
 
#6

Re: DX Rennspiel

  Alt 6. Dez 2004, 19:47
@Spider: Sorry wenn du den Code liest, aber der Code ist wenigsten der einzige den ich finden konnte! Was den Code betrifft:
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
  Dialogs, DXClass, DXSprite, DXInput, DXDraws, Math;

type
  TForm1 = class(TForm)
    Draw: TDXDraw;
    ImageList: TDXImageList;
    Input: TDXInput;
    SpriteEngine: TDXSpriteEngine;
    Timer: TDXTimer;
    procedure TimerTimer(Sender: TObject; LagCount: Integer);
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

  TAuto = class(TImageSpriteEx)
  public
    constructor Create(AParent: TSprite); override;
    destructor Destroy; override;

    procedure DoMove(MoveCount: Integer); override;
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

{ TAuto }

constructor TAuto.Create(AParent: TSprite);
begin
  inherited Create(AParent);

  Image := Form1.ImageList.Items.Find('Dodge Viper');
  Width := Image.Width;
  Height := Image.Height;
end;

destructor TAuto.Destroy;
begin
  inherited Destroy;
end;

procedure TAuto.DoMove(MoveCount: Integer);
begin
  inherited DoMove(MoveCount);

  if isUp in Form1.Input.States then
  begin
    X := X + cos(degtorad(Angle)) * MoveCount;
    Y := Y - sin(degtorad(Angle)) * MoveCount;
  end;

  if isDown in Form1.Input.States then
  begin
    X := X - cos(degtorad(Angle)) * MoveCount;
    Y := Y - sin(degtorad(Angle)) * MoveCount;
  end;

  if isLeft in Form1.Input.States then
    Angle := Angle - 1;

  if isRight in Form1.Input.States then
    Angle := Angle + 1;
end;

procedure TForm1.TimerTimer(Sender: TObject; LagCount: Integer);
begin
  Input.Update;
  SpriteEngine.Move(5);
  Draw.Surface.Fill(clBlack);
  SpriteEngine.Draw;
  Draw.Flip;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  with TAuto.Create(SpriteEngine.Engine) do
  begin
    X := 50;
    Y := 50;
  end;
end;

end.
  Mit Zitat antworten Zitat
Maximus

Registriert seit: 26. Okt 2003
169 Beiträge
 
#7

Re: DX Rennspiel

  Alt 6. Dez 2004, 19:54
Was ist der genau Fehler?
Error beim compilieren?
Irgendeine Fehlermeldung, während des Spiels?
Fehlermeldung bei Spiel start?
Kommt kein Fehler, wird aber trotzdem nicht angezeigt?

Es sind einfach mehr details nötig

//Edit eventuell hängst du einfach mal den Quelltext an

MFG
Maximus
  Mit Zitat antworten Zitat
Nils_13

Registriert seit: 15. Nov 2004
2.647 Beiträge
 
#8

Re: DX Rennspiel

  Alt 6. Dez 2004, 20:05
Der Quelltext steht oben

Die Grafikauflösung hab ich schon höhergestellt
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#9

Re: DX Rennspiel

  Alt 6. Dez 2004, 20:46
Hi,

nun, immerhin hast du noch gesagt das es mein Code ist.

Zum Problem, das kann gar nicht funktionieren, da du vielleicht die Komponeten nicht auf der Form und das Bild nicht hast.
  Mit Zitat antworten Zitat
Benutzerbild von gordon freeman
gordon freeman

Registriert seit: 28. Jun 2003
Ort: Gelsenkirchen
337 Beiträge
 
Delphi 2005 Personal
 
#10

Re: DX Rennspiel

  Alt 7. Dez 2004, 14:26
Also, ich will ja niemanden kritisieren, aber:

Zitat von Nils_13:
Nur die ganzen Sachen die ich selbst gemacht (also alles) läuft nicht.
Und unten schreibst du:

Zitat von Nils_13:
@Spider: Sorry wenn du den Code liest, aber der Code ist wenigsten der einzige den ich finden konnte!
Wenn du Probleme zu seinem Code hast kannste ihn auch erstmal per PN ansprechen und fragen!


Zitat von Maximus:
eventuell hängst du einfach mal den Quelltext an
Dem kann ich nur zustimmen. Es ist total unnötig diesen Reisenhaufen Code zu posten. Im Anhang wäre er besser aufgehoben. Und aus deiner Antwort werd ich erst recht nich schlau:

Zitat von Nils_13:
Der Quelltext steht oben

Die Grafikauflösung hab ich schon höhergestellt
Das der Code oben steht stand überhaupt nicht zur Diskussion! Es ging darum, dass man solchen großen Code nicht einfach in einem Beitrag posten sollte.
Und was hat das mit der Grafikauflösung zu tun?



Außerdem möchte ich jetzt noch eine gnaz persönliche Einschätzung hinzufügen:

[Achtung! Gordon äußert seine Meinung, alle die Angestoßen sein könnten bitte nicht lesen!]
IMHO ist es vieleicht ein bisschen übertrieben, wenn man 3 Threads zur gleichen Zeit offen hat, in denen man ein a) Betriebssystem, einen b) Egoshooter und ein c) DX Rennspiel proggen will. Die Threads a) und b) sind vernünftigerweise zu, aber in diesem Thread c) noch einen "geklauten" Code zu präsentieren und zu behaupten es wäre der eigene, finde ich etwas dreist. Is aber nur meine Meinung.
[/eigene Meinung]
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 02:47 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