Einzelnen Beitrag anzeigen

Acuaplano

Registriert seit: 8. Mai 2013
29 Beiträge
 
#3

AW: GetSpriteAt-Problem bei Andorra 2D

  Alt 16. Mai 2013, 14:51
So,
erstmal sorry für die verspätete Antwort. Aber das Überprüfen hat mich stutzig gemacht. Ersteinmal haben die Koordinaten des Helden in kein Bild gepasst: es sind keine Bildschirmkoordinaten, aber es können auch keine Koordinaten sein, die von der SpriteEngine benutzt werden (falls du das mit "auf Fenster umgerechnet" gemeint hast), da komplett andere Werte ausgegeben werden, wenn der Held sich über dem Sprite befindet, das ich exakt auf (150|100) gesetzt hab. Aber der GetSprite Befehl scheint sich auf Bildschirmkoordinaten zu beziehen.
Verwirrender wird es jetzt, wenn man sieht wie ich darauf gekommen bin. Wenn ich jetzt z.b. die Koordinaten auf (20|20) gesetzt hab, eine andere Figur gerade dort war (vom Tutorial, Code ist unten) und ich die entsprechende Taste gedrückt hab, schmeißt der Compiler die Fehlermeldung "External: SIGSEGV" aus. Ich dachte erst, dass es an der fehlenden Prozedur der Figur liegt, aber als ich einfach mal eine leere Prozedur für die Klasse erstellt hab kam noch die gleiche Meldung.

Delphi-Quellcode:
TFigur = class(TImageSprite)
  private
  protected
    procedure DoMove(TimeGap: double); override;
  public
    XSpeed: integer;
    constructor Create(AParent: TSprite); override;
    procedure SetLine;
    procedure UseObject;
  end;
  Mit Zitat antworten Zitat