![]() |
Collisionen
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo!
Habe mal 2 Fragen. 1.Wie functionirt eine Collision mit einer Kiste. Unzwar so das wenn man gegen läuft nicht weiter läuft und wenn man drauf springt das man drauf stehen bleibt. 2.Wie kann man kontrolieren ob eine Person Boden unter den Füßen hat? Wenn sie keine hat und man nicht über einen Abgrundspringt soll man runterfallen. |
Re: Collisionen
Zitat:
oder mit If Figur.Left > Kiste.Left then ... :) ist doch eigentlich easy versuch beide funktionen als einzelnes Image zu speichern. D.h: Figur = TImage; Kiste = TImage; So kannste ne kollision testen :) |
wenn die figur nur auf bestimmten farben stehen kann(z.b. begehbarer untergrund hat die farbe braun) kannst du auch mit der funktion pixels die hintergrundfarbe prüfen auf der sich deine figur befindet
|
Ups sorry ich hab vergessen hinzuschreiben,
dass ich DelphiX verwende und keine TImage's. |
hi, :mrgreen:
rein vomlogischen her müssteste bei der kiste überprüfen ob der untere rand des sprites (delphiX) gleich dem oberen rand der kiste ist (den einen pixel kann man ja übersehen, wo sich das überschneidet)
Delphi-Quellcode:
tja mit der schlucht is ne gute frage...fällt mir erstmal auch nix ein..naja mal weiter überlegen, wenn mir was einfällt, dann meld ich mich nochmal!
if (Figur.y+Figur.height)=(kiste.y) then ....
gruss haegar |
Danke schon mal!
Fehlt dann nur noch das man an der Kiste nicht vorbei kann und das mit der schlucht. Wenn jemand ne Idee oder nen Source Code hat bitte melden. ;) |
das mit dem nicht vorbei baut doch auf dem auf was ich oben geschrieben habe!
Delphi-Quellcode:
verstehste??
if (Figur.y+Figur.height)=(kiste.y) then {biste oben} else {geht net weiter}
gruss haegar |
Warum macht ihr es euch so schwer?
Ich entsinne mich (jaja, DelphiX ist schon ein weilchen her), dass es bei DelphiX eine Kollisionsabfrage gibt (jaja, RTFM...). Einfach überprüfen und falls es zutrifft, die Figur nicht mehr bewegen. Wa sits daran so schwer? Ich habs jedenfalls damals ohne große Hilfe hingekriegt, soll heißen, dass ihr es recht hinkriegt... :wink: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:30 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