view seitlich stehen bleiben lassen

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

  • view seitlich stehen bleiben lassen

    Bin gerade dabei meinen ersten Boss zu programmieren.
    Ich habe ein Objekt geschaffen welches den Boss aktiviert sobald der Spieler es berührt. Dieses Objekt soll auch den View zu einer bestimmten seitlichen Position fahren und da bleiben solange der Boss noch lebt.
    Der View soll also weiterhinn auf und ab dem Spieler folgen aber nicht mehr seitlich.
    Wie löse ich dieses Problem mit geringem aufwand?
  • also wenn du das ganze mit der einstellung im view (in den room proberties) machst, empfehle ich dir das ins Step Event vom Spieler / Boss / ... zu machen:

    GML-Quellcode

    1. view_xview[view] = deinwert;

    EDIT²: Eventuell auch im Draw-Event!!
    view ist die View die du verwendest (meistens 0)
    deinwert ist die x-Position, wo dein View hängen bleiben soll
    (hoffe es funktioniert)
    und wenn nicht, dann musst du das ganze selbst in GML machen:
    (in den proberties kein objekt zum folgen auswählen)
    und im step event vom spieler:

    GML-Quellcode

    1. view_yview[view] = x-240;
    2. if ( /* BOSS AKTIV */ )
    3. {view_xview[view] = deinwert;}
    4. else {view_xview[view] = x-320}

    320 und 240, das ist die größe deines Views durch zwei (damit dein bjekt inner mitte ist)
    die normale größe liegt bei 640 mal 480
    das ganze geht noch "komfortabler", aber das is mir jetzt zu blöde xD

    mehr kann ich dir nicht sagen ;)

    EDIT: was geändert!!!
    zu "deinwert": das ist die x-position, wo dein view hängenbleiben soll, wenn du es so machen willst, wie ich verstanden habe, kannst du das SO machen:

    GML-Quellcode

    1. view_xhalt = x;
    (im Spieler-Objekt)
    das ganze musst du im Collision (oder wo auch immer) -Event mit dem Boss reintun
    EDIT²: achso, hab ich ganz vergessen xD
    du musst dann das "deinwert" durch "view_xhalt" ersetzen

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von copyboy ()

  • Erstmals danke dass Du Dir die Zeit genommen hast, mir bei dem Problem zu helfen.
    Dein erster Tipp hat leider nicht funktioniert. So wollte ich das Problem ursprünglich auch mal lösen, das wäre einfach und irgendwie auch logisch. Komisch dass es nicht klappt.

    Danach hab ich beim Step-Event des Spielers deinen Code eingegeben und die Werte angepasst. Leider funktioniert das auch nicht. Sobald ich kein Objekt zum folgen anwähle ist der View sonstwo beim beginn des Spiels.

    Dein nachtrag mit "view_xhalt = x;" hat mich sehr verwirrt, weil ich nicht ganz weiss was ich damit anfangen soll.
    Soll ich das in das Objekt einfügen dass den Boss aktiviert (objekt wird bei berührung gelöscht). Oder muss ich das irgendwie bei dem vorherigen Code bei der Zeile mit Dein Wert einfügen?

    Für was ist denn dieses xhalt? Habe dazu nichts gefunden.

    Habe jetzt nochmal folgendes probiert:

    view_yview[view] = x-240;
    if ( /* BOSS AKTIV */ )
    {view_xview[view] = deinwert;}
    else {view_xview[view] = x-320}

    und bei deinwert eine x-position angegeben und das ganze in den begin step event des spieler gepackt. der view folgt aber rnicht dem spieler sondern fährt diogonal hinunter wenn ich mit dem spieler nach rechts gehe. Wenn der spieler den boss aktiviert fahrt der view auf wenn ich nach rechts auf gehe und ab nach links. warum? :heul:

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von Gluesniffer ()

  • Benutzer online 1

    1 Besucher