Registriert seit: 31. Aug 2005
1.622 Beiträge
FreePascal / Lazarus
|
Re: Andorra 2D - The Next Generation 2D Engine [Ver. 0.20 AL
26. Sep 2007, 19:57
Diese Fälle musst du bei der Kollisionsürpfung eben alle abfangen - da kann dir Andorra 2D nicht helfen. In meinen Spielen habe ich das folgendermaßen gemacht:
Delphi-Quellcode:
TCollisionEdge = (ceLeft, ceTop, ceRight, ceBottom);
TCollisionEdges = set of TCollisionEdge;
procedure DoMove(timegap:double);
begin
CollisionEdges := [];
Collision;
if ceTop in CollisionEdges then ...
end;
procedure DoCollision(Sprite:TSprite; var Done:boolean);
begin
wenn kollision dann
wenn oben then CollisionEdges := CollisionEdges + [ceTop];
wenn unten then CollisionEdges := CollisionEdges + [ceBottom];
.
.
.
end;
Andreas "Sollen sich auch alle schämen, die gedankenlos sich der Wunder der Wissenschaft und Technik bedienen, und nicht mehr davon geistig erfasst haben als die Kuh von der Botanik der Pflanzen, die sie mit Wohlbehagen frisst." - Albert Einstein
|