Auch wenn ich dich vielleicht nerve, wink zu Nummer 1, das geht leider nicht. Ich arbeite an einem Spiel im Resident Evil Style und bei dem Kamerasystem (statisch wechselnde Kameras) sieht man leider fast jeden Fehler in der Kollisionserkennung. cry

Ich habe mir schon so viele Möglichkeiten überlegt, hier mal ein paar.


1. Ich erstelle ein Objekt ein paar Quants vor dem Player, das den Player immer begleitet. Ob das Objekt mit einer Wand oder Model kollidiert, würde EVENT_BLOCK und EVENT_ENTITY feststellen.

Das geht leider nicht, weil wenn man bei c_move die Flags IGNORE_MODELS und IGNORE_BMAPS setzt, geht EVENT_BLOCK und EVENT_ENTITY auch nicht.



2. Ich probiere einfach die BBox zu vergrößern, wenn sie mit einem Block oder Model kollidiert, läuft der Player zurück bis alles frei ist.

Das geht leider auch nicht, da wenn die BBox vergrößert wird, sie aber z.B. bereits durch eine Wand ragt, merkt EVENT_BLOCK das leider nicht.



3. Ich schicke einen Strahl mit c_trace nach vorne und schaue ob ein Objekt dazwischen war, oder nicht.

Das geht leider auch nicht, da ich nur einen Punkt damit prüfen könnte. Liegt jetzt z.B. ein Medipack vor den Füßen des Players, kann es sein, dass es nicht erfasst wird, weil der Stahl z.B. zu hoch ist. Würde jetzt die BBox vergrößert werden, würde der Player wieder steckenbleiben.


4. Ich würde ein Objekt mitten im Player erzeugen, das sich immer mit bewegt und die Player Entity ignoriert, wenn jetzt die Animation geändert werden soll, würde ich die Box einfach nach vorne fahren lassen (natürlich unsichtbar), wenn weder EVENT_BLOCK und EVENT_ENTITY ausgelöst wird, wäre es ja frei.

Das ganze geht leider auch nicht, weil ich bei c_move das Flag IGNORE_YOU für die Player Entity bräuchte, warum ich aber das Flag für IGNORE_YOU nicht mehr für die Waffenskripts hätte und so die Schüsse an der Box enden würden.



Wie du siehst, das ist gar nicht so einfach! cry


Gruß
Alex =)