Jump&Run
Schön!
Ich mach auch grad eins im Comander Keen Stil. Soll am Ende Keen Revenge heißen.
Um das Clipping abzufragen, werde ich Vektoren benutzen.
Ich werde dies mal etwas erläutern:
Angenommen, die Figur steht im Moment auf einer Mauer. Nehmen wir eine Sandsteinmauer. Die sehen immer so schön aus
Ok. Nun haben wir den Spieler auf einer Sandsteinmauer. Wie er da drauf gekommen ist und wie er es anstellt, dass er nicht durch den Sandstein durchfällt (Nanu? Seit wann kann man durch Stein durchfallen? Nehmen wir lieber Bimmstein. Bimmstein ist leichter und Poröser. Da kann man sich leichter vorstellen, dass da jemand durchfällt.)
Ok. Nun haben wir eine Figur auf einem Bimmstein.
Nun zum Vektor:
Lassen wir die Figur springen.
Da muss erstmal geschaut werden, ob über der Figur (Figur ist mir zu blöd. Ich nenne die Figur jetzt Colami (Frei nach meinem alten 486er)) Sandsteine sind.
Mit pixelcheck würde ich nicht arbeiten, denn es ist zu langsam und ungenau. Das ist ja in etwa so, wie wenn du mit Canvas.pixels [x,y] nachschauen würdest, ob der Pixel die Farbe hat.
Zurück zum Springen:
Sobald du auf die Springen-Taste (In unserem Beispiel die Leertaste "Blank") drückst, wird ein Vektor gesetzt. z.B.: auf 10.
Das heißt, Colami soll 10 Irgendwas (Sagen wir mal Bratwürste) in die Luft springen. Während er aber nach oben springt, nimmt der Vektor immer mehr ab.
Für das Clipping würde ich ganz einfach vorschlagen, vor dem Sprung die Sachen innerhalb dieses Vektors zu prüfen, ob da nicht vielleicht Sandstein ist.