DelphiX Collision-Problem

DarkJones

Grünschnabel
Moin Moin,

Ich bin gerade dabei ein Spiel zu programmieren. Das Problem: Wenn der Spieler auf einen Gegner schießt, trifft er meistens nicht, selbst wenn die Kugel genau durch den Gegner durchfliegt.
Das liegt daran, dass die Geschosse sich immer um mehrere Pixel auf einmal bewegen, weil sie sonst zu langsam wären.
Befindet sich der Gegner jetzt aber genau in dem Bereich der von dem Geschoss übersprungen wird, reagiert logischerweise die Kollisionsabfrage nicht.

Hat jemand vielleicht ein paar Tricks auf lager, wie ich das umgehen kann?
 

SnergleTheDwarf

Grünschnabel
schonmal probiert ne linie zu berechnen (zwischen kugel und schütze) ... und dann den schnittpukt der linie mit der figur (dem opfer/ziel) ?...

überschneiden sich figur und linie ... wow treffer ... ansonsten ...hey du looser schiess nochmal ... und triff besser ;-)

mfg SnergleTheDwarf
 

DarkJones

Grünschnabel
Hab ich mir auch schon überlegt. das dumme ist, dass ich eine Linie nur mit dem unsichtbaren Rechteck verschneiden kann, in dem das Gegnersprite gezeichnet wird.
Soll heißen, es gäbe einen Treffer, wenn die Kugel knapp neben dem Kopf vorbei fliegt:
treffer.gif


Das ist leider nicht so ganz Sinn der Sache