Re: [Andorra2D]: Wie bekomme ich raus wo die Kollision statt
12. Mai 2008, 21:39
Du musst halt einfach die X- und Y-Koordinaten des kollidierenden Sprites mit deiner Figur vergleichen. Stell dir das einfach bildlich vor, in Form zweier Boxen.
Wenn Figur.X > Sprite.X, ist die Kollision von rechts passiert.
Wenn Figur.X < Sprite.X, ist die Kollision von links passiert.
Wenn Figur.Y > Sprite.Y, ist die Kollision von unten passiert.
Wenn Figur.Y < Sprite.Y, ist die Kollision von oben passiert.
Dazu kannst du ein Set definieren: TCollisionEdges = set of (ceTop, ceBottom, ceLeft, ceRight). Und jenachdem, welche Bedingung von da oben zutrifft, fügst du das Teil zum Set hinzu (CollisionEdges := CollisionEdges + [ceTop]; ...).
|