Breakout: Frage zu schläger

  • GM 7
  • Breakout: Frage zu schläger

    hi bin neu hier^^...

    Und zwar mache ich momentan zusammen mit einem Freund ein Spiel nach dem Breakout Prinzip.

    Zum Problem:
    Wir haben momentan einen abgerundeten Schläger, der mit der Maus gesteuert wird, nur leider kommt es vor, dass er bei Kollesion mit dem Ball kurz hängen bleibt bzw. wenn mann der Ball seitlich trift hängen bleibt oder durchgeht.
    Was kann ich dagegen machen?


    Desweiten hatten wir uns überlegt vll. doch eine glatte Oberfläsche zu nehmen.
    Habe das vor längerer Zeit irgendwo mal gesehen, dass der Ball dann trotzdem zur Seite spring.
    Wäre schön wenn mir das jemand erklären könnte.

    Hab noch eine Frage:^^
    Wie mache ich, das der Schläger links und rechts an der Wand bündig abschließt?
    Weil aktuell hab ich immer nen paar Pixel platz.....


    MFG greybit

    :gmlove:
  • Naja, indem du die maximale und minimale x Koordinate bestimmst, kannst du ihn auf den Pixel genau an die Wand fahren lassen.
    Das mit dem schräg abspringen geht relativ problemlos. Wenn der Ball auftrifft gibst du ihm die Richtung mit "point_direction(obj_player.x,obj_player.y,x,y);". Dann kannst du den Ursprung (origin) noch etwas nach unten oder oben versetzen und schauen, wie es dir am besten gefällt.

    Das mit dem Hängenbleiben hat man unter Umständen auch mit glatter Oberfläche.
    Was wichtig ist, ist es, bei der Kollision den y-Wert so anzupassen, dass er nichtmehr im Schläger hängen kann. Danach normal die Kollision weiter abhandeln. Es gibt sicherlich noch andere Methoden, allerdings is das etwas kompliziert mit der Mausbewegung, da das eher ein Springen ist und ein solches Überlappen schwer vermeidbar ist. Ansonsten könntest du versuchen, bei der Bewegung den Ball zu "schieben" oder den Schläger zurückzusetzen und dann entsprechend an den Ball heranzuführen. Dann würde der Schläger aber das Bild schaffen, als würde er nix wiegen.

    Schau ob dir das hilft, wenn du noch fragen hast, immer her, ich geb mir mühe.
    So far, Schattenphoenix~
    _____________________________________________________________________________
    "Who needs a stairway to heaven...
    If there is an elevator to hell... ?
    "
    - Vergessen
    "Auch ein perfektes Chaos ist etwas vollkommenes."
    - Jean Genet
  • danke für deine antwort!

    ich habe mich inzwischen für einen glatten schläger entschieden

    Quellcode

    1. (obj_player.x,obj_player.y,x,y)

    habe den code nid ganz verstanden (habe auch in der gm anleitung geguckt)

    Quellcode

    1. bei der Kollision den y-Wert so anzupassen

    wie soll ich das anpassen

    Quellcode

    1. Naja, indem du die maximale und minimale x Koordinate bestimmst, kannst du ihn auf den Pixel genau an die Wand fahren lassen.

    muss ich dafür die maus einsperren oder das objekt? und wie geht das eigentlch?


    sry bin codenoob

    mfg greybit
  • Du sagst ihm "If(x<denxwertdenduwillst)" und "if(x>denxwertdenduwillst)" und dazugehörig dass der X-Wert wieder angepasst wird.


    if(x<20)
    {x=20;}

    so zum Beispiel.

    Das Objekt einsperren natürlich, die Mauseinsperren is schwerer und unnötig.

    Den y-Wert anpassen von Ball bei der Kollision.
    Das heisst, wenn eine Kollision stattfindet, setzt du y etwas runter (auf den y-wert des Schlägers - die Höhe des Sprites) damit er nicht hängenbleibt, wenn du dich schnell drüber bewegst.
    Schwer zu erklären ;)
    So far, Schattenphoenix~
    _____________________________________________________________________________
    "Who needs a stairway to heaven...
    If there is an elevator to hell... ?
    "
    - Vergessen
    "Auch ein perfektes Chaos ist etwas vollkommenes."
    - Jean Genet
  • Benutzer online 1

    1 Besucher