![]() |
AW: Andorra 2D Bewegung von Figuren
Ich nehme an, X und Y sind Eigenschaften der Elternklasse TImageSprite?
|
AW: Andorra 2D Bewegung von Figuren
jop, müsste so sein.
|
AW: Andorra 2D Bewegung von Figuren
Zitat:
Zitat:
|
AW: Andorra 2D Bewegung von Figuren
Das stimmt zwar, dürfte aber mit den X- und Y-Eigenschaften nichts zu tun haben (es sei denn, das wären Objekte, was ich aber nicht glauben mag).
|
AW: Andorra 2D Bewegung von Figuren
Vielleicht hast du dieses Tutorial gesehen, aber
![]() |
AW: Andorra 2D Bewegung von Figuren
Nach diesem Tutorial bin ich ja vorgegangen und habe den Konstruktor auch daraus.
Durch das inherited rufe ich doch die Elternklasse auf oder? |
AW: Andorra 2D Bewegung von Figuren
inherited ruft die Implementation der Vorfahrklasse auf.
|
AW: Andorra 2D Bewegung von Figuren
Okay
|
AW: Andorra 2D Bewegung von Figuren
Ein Unterschied zum Tutorial ist mir sofort ins Auge gefallen:
Delphi-Quellcode:
Figur := TFigur.Create(AdSpriteEngine);
...
Delphi-Quellcode:
Das Croco darf vermutlich erst nach der SpriteEngine erzeugt werden und muss mit dieser bekannt gemacht werden.
croco:=Tcroco.Create(nil);
... |
AW: Andorra 2D Bewegung von Figuren
Die Sprite in der Engine erzeugen ist schon oke, wird auch in den Tutorial's so gemacht!
Muss schon sagen dass dein Source sehr komisch ausschaut, entweder du erstellst ein Sprite (TImageSprite/EX) oder du zeichnest die Figur! Ein Sprite erzeugst du am Anfang (Form.Create) bzw. einmal:
Delphi-Quellcode:
Wenn du deine Figur in jede beliebige Richtung bewegen möchtest mittel's WASD:
procedure TForm.onCreate...
begin //Erstellen deines Sprites Croco := TimageSprite.Create(DeineSpriteEngine); with Croco do begin X := 0; Y := 0; xSpeed := 1; Image := AdImageList1.Find('croco'); AnimActive := FALSE; end; end; Du musst die Procedure mit der Form verbinden, sonst passiert nichts!
Delphi-Quellcode:
Hoffe das ist verständlich, aber ist schon lange her..dass ich Andorra verwendet habe :/
procedure TForm.onKeyPress(var Key...);
begin case Key do begin 'a': begin Croco.X := Croco.X + xSpeed; iF (Croco.AnimPos = Croco.AnimCount) Then Croco.AnimPos := Croco.AnimStart ELSE Croco.AnimPos := Croco.AnimPos + 1; end; 'd': begin ... end; end; end; lg |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:02 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-2025 by Thomas Breitkreuz