Problem beim Trampolin

  • GM 6

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Problem beim Trampolin

    Heyho. Evt könnt ihr mir ja weiterhelfen :)

    Denke das es das das problem schon gab aber ich hab in der suche nix gefunden.

    Geht um ein Jump and run.
    Und zwar hab ich ein merkwürdiges problem bei meinen sprungplattformen. Also im grunde ein ganz normaler Block der den spieler beim raufspringen nach oben schleudert(immer gleiche höhe).

    Jetzt ist es so das wenn man draufspring auch alles klappt nur wenn man sich von einer höheren plattform drauf fallen lässt bleibt er drüber stecken(bewegungsunfähig) und erscheint dann ca 1 sekunde drunter und fliegt ganz schnell nach unten.

    Das komische. Es hängt nicht von der höhe ab von der man auf das trampolin fällt. Auch nicht ob man sich fallen lässt oder nicht. Es hängt viel mehr davon ab auf welcher höhe die plattform ist von der man sich fallen lässt. Hmm schwer zu erklären ^^

    Hab mal ne skizze gemacht. [im anhang]
    Die Pfeile zeigen den sprung mit höhe. Grün funktioniert, rot nicht.

    Das trampolin ist solid und im spieler objekt steht bei Kollision mit dem trampolin folgendes:

    GML-Quellcode

    1. if!(place_free(x,y+1))
    2. {
    3. vspeed=-22.5;
    4. }


    springen der spieler hab ich ganz simple gemacht.
    Kann auch gerne die gm6 rausrücken aber ob ihr damit zurecht kommt ist ne andere sache ^^

    Edit: Anhang vergessen xD
    Bilder
    • fehler bgm trampolin.JPG

      8,33 kB, 257×242, 254 mal angesehen
    Und es gibt jede Menge Rechtschreibfehlern.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Dark Killer ()

  • Das Kollisionsevent tritt (auch) auf, wenn der Spieler das Trampolin treffen wird. Wenn eines der beiden Objekte solid ist, wird der Spieler angehalten. Er steht also nicht unmittelbar über dem Trampolin, sondern zwischen beiden ist ein kleiner Abstand: Dein Bedingung ist also nicht erfüllt und der Spieler fliegt nicht hoch. Das ändert aber nichts daran, dass sich der speed weiter erhöht und irgendwann ist er hoch genug, damit dein Objekt "über" die Platform springt.

    Ich würde vorschlagen, du schaust dir entweder das offizielle Platform Tutorial an, welches move_contact_solid() (als D&D-Action) benutzt, oder vielleicht auch mal die Simple Platform Engine.