Spiegeln

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

  • Hallo zusammen ;)
    hab mal wieder ne kleine Frage :D

    Also.. . Meine Figur überschneidet eine Instance (in dem fall den Bus) ..

    Ich will nun folgendes.. Wenn der Bus wendet, dann soll die Figur sich auch mit wenden .. der Bus setzt beim wenden immer die variable s_flop auf 1.. so das der charakter weiss - der Bus hat gewendet (geht bestimmt auch besser :-/ )

    Da das anders etwas schwer ist zu erklären hab ich n bild mit dran gehängt :


    Er soll halt immer an der selben stelle im Bus sein, irgendwas ist bei meiner Rechnung falsch unten. Ich hab gerechnet :

    Zwischenwert= Bus.x - Spieler.x * 2 // Zwischenwert setzen

    Spieler.x += Zwischenwert // Spielerpositions setzen

    Ach, fast vergessen.. der Knotenpunkt vom Bus ist genau in der mitte.. also horizontal und vertikal genau in der mitte !

    Das hier ist im Step event von meiner Figur :

    GML-Quellcode

    1. if (collision_rectangle(x+5,y+5,x+9,y+21,o_Bus01,true,true))
    2. {
    3. DerBus=instance_nearest(x+7,y+16,o_Bus01);
    4. if (DerBus.s_flop==1) {x+=DerBus.x-x*2; DerBus.s_flop=0;}
    5. }



    EDIT: hab n fehler im code korrigiert...

    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von darulaz ()

  • Ich würde das so Berechnen:

    x=DerBus.x+(DerBus.x-x)

    Das heißt, es wird immer die Position des Busses und der Abstand zwischen Spieler und der Mitte des Busses zusammengerechnet.
    Steht der Spieler rechts der Mitte ist das Ergebnis von Bus.x-x im negativen Bereich, d.h. der Spieler wird um diesen Abstand nun links neben der Mitte stehen. Umgekehrt ist es, wenn der Spieler links von der Mitte steht. Dann ist DerBus.x-x positiv und der Spieler steht um den Abstand nun rechts zur Mitte.
    "Die Erde ist ein Irrenhaus. Dabei könnte das bis heute erreichte Wissen der Menschheit aus ihr ein Paradies machen. Dafür müsste die weltweite Gesellschaft allerdings zur Vernunft kommen."
    - Joseph Weizenbaum