Große Karte scrollen

  • GM 8

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

  • Große Karte scrollen

    Moin zusammen,

    ich habe seit einigen Tagen den GM8 pro, zusammen mit der deutschen Hilfe von GM 8 6...

    Die SuFu hier im Forum habe ich benutzt, sowie die Hilfe durchgelesen, habe immer noch ein Problem:

    Ich möchte eine große Karte (Map,...) erstellen und durchscrollen, die Objekte auf der Karte sollen natürlich mitwandern. rechts im Bildschirm soll ein Panel mit allen möglichen Informationen und Schaltern... während der Spieldauer sichtbar sein. Also im Prinzip so wie bei z.B. Anno, Comand & Conquer, Railroad...

    Ich habe es mit Views probiert, bin aber völlig durcheinander. Ich brauche einen Denkanstoß wie ich überhaupt Beginne....

    Ich erwarte keinesfalls "gib mir ein fertiges Spiel, ich setze meinen Namen drunter und verdiene damit Geld". Nur die Starthilfe, wie ich durch einen Raum scrollen kann.

    mfg

    Maschine
    Eine Stimme sprach zu mir: "Lächle und sei froh, es könnte schlimmer kommen!"
    Ich lächelte und war froh, und es kam schlimmer... :heul:
  • Views sind schon der richtige Ansatz. Du benötigst nur noch ein Objekt, welchem der View folgt. Erstelle einfach ein Objekt und schreib ins end-step-event:

    GML-Quellcode

    1. x=mouse_x;
    2. y=mouse_y;

    Bei den View-Einstellungen musst du natürlich dieses Objekt einstellen, sodass der View ihm folgt.
    Das setzt du dann in den Raum, und schon kannst du, wenn du an den Rand des Views fährst, scrollen.

    © 2008 by Teamgrill Productions
  • Genau, und dann kannst du alle die Knöpfe als Objekte machen und in ihren end-step events z.B. das schreiben:

    GML-Quellcode

    1. x = view_xview[0] + 300
    2. y = view_yview[0] +200

    Jetzt wird das Objekt immer 300 pixel nach rechts und 200 nach unten entfernt von der links-obigen Ecke des Views sein.
    D.h. es wird immer sichbar bleiben.

    Willst du auf diese Drachen und -eier klicken?
    Sie werden sich freuen ;)
  • Danke für Antworten...

    gibt es eine einfache Möglichkeit ohne View, sondern nur das Hintergrundbild des Raumes zu scrollen?

    Wenn ich das Handbuch richtig verstanden habe, ist doch möglich meine Schalter, Texte usw als "Persistent Objekt" zu erstellen, die dann immer (z.B. rechts am Bildschirmrand) verbleiben?
    Eine Stimme sprach zu mir: "Lächle und sei froh, es könnte schlimmer kommen!"
    Ich lächelte und war froh, und es kam schlimmer... :heul:
  • Ich würd auf jeden Fall Views verwenden. Anders wird das sehr kompliziert. Und das

    GML-Quellcode

    1. x = view_xview[0] + 300
    2. y = view_yview[0] +200

    würd ich nicht in einzelne Objekte in den End-Step Event screiben, sondern in einem Objekt direkt alle Buttons zeichnen lassen. Sonst wird das rucklig glaub ich. Da das Objekt immer "nachspringt".
  • peini schrieb:

    Ich würd auf jeden Fall Views verwenden. Anders wird das sehr kompliziert. Und das

    GML-Quellcode

    1. x = view_xview[0] + 300
    2. y = view_yview[0] +200

    würd ich nicht in einzelne Objekte in den End-Step Event screiben, sondern in einem Objekt direkt alle Buttons zeichnen lassen. Sonst wird das rucklig glaub ich. Da das Objekt immer "nachspringt".
    Ja das geht auch, aber mehr wegen der performance.
    Wenn man den Code ins end-step event packt springen alle Objecte zum neuen Platz und drawen dann erst.
    Somit siehts richtig aus.
    Es ist aber schon besser alles komplett von einem Controler-objekt zeichnen zu lassen.
    die sache mit den view_xview[0] kann man überall einsetzen.
    Also z.b. in draw_sprite(spr_button,0,view-xview[0]+500,view-yview[0]+100)

    Willst du auf diese Drachen und -eier klicken?
    Sie werden sich freuen ;)
  • Ich begreife es nicht

    Hallo,

    Ich kann lesen und machen was ich will, es klappt nicht. Ich glaube mein Problem ist ein grundsätzliches Problem, welches sicherlich eine einfache Lösung hat.

    Einzig mein Brett vor den Kopf lässt mich die Lösung nicht finden...

    Hier noch einmal genauer mein Wunsch:

    -Spiel soll erstmal mit Auflösung 1280 X 1024 px im Fenster laufen.

    -Habe ein Background-Bild (Landkarte) 2400 X 2400 px groß. (Bildschirmauflösung(72))

    -Room-settings auf 1275 X 995 (wegen der Ränder vom Fenster).

    -Nun habe ich es in der Hilfe so verstanden, ich gebe bei "view in room" x = 0, w = 2400, y = 0, h = 2400 ein

    und bei "port on screen" x = 0, w = 800, y = 0, h = 800, um einen Ausschnitt meiner Karte von 800 x 800 px in einem 1275 x 995 gr0ßen Fenster zu haben.

    -Ergebnis: mein ganzes Fenster wird nun von einem gedehnten Kartenausschnitt belegt der aber nur die Pixel von 800 x 800 enthält.

    Habe auch andere Sachen probiert, habe nie das erwünschte Ergebnis...

    Da ich ganz davon überzeugt bin, das der GM das kann, glaube ich es liegt an einer völlig falsche Einstellung von mir.

    erbitte dringend Hilfe!

    mfg

    Maschine
    Eine Stimme sprach zu mir: "Lächle und sei froh, es könnte schlimmer kommen!"
    Ich lächelte und war froh, und es kam schlimmer... :heul:

  • Ich würd auf jeden Fall Views verwenden. Anders wird das sehr kompliziert. Und das

    GML-Quellcode

    1. x = view_xview[0] + 300
    2. y = view_yview[0] +200


    würd ich nicht in einzelne Objekte in den End-Step Event screiben, sondern in einem Objekt direkt alle Buttons zeichnen lassen. Sonst wird das rucklig glaub ich. Da das Objekt immer "nachspringt".

    häää?

    als Button zeichnen,wie?
  • Du bist nah drann.
    Aber bei "view in room" muss der Bereich sein der aus dem Raum gesehen werden sollte.
    D.h. 800, 800.
    So wie dus gemacht hast skaliert er den ganzen Raum auf deine 800*800 Pixel.
    Zudem mussen bei port on screen genau die Maße rein die der Bildschirm hat.
    Also 1275*995 aber ich würd dir ein maß von 1280*960 zu nehmen.
    Nen schirm wie deinen haben nicht ganz so viele Leute xD, diese können wenns sein muss ja auf Fullscreen schalten.

    Willst du auf diese Drachen und -eier klicken?
    Sie werden sich freuen ;)
  • ein paar shoots...

    Hallo DragonGamer,

    Habe es nun so gemacht, leuchtet auch ein, aber...











    hier meine Einstellungen:

    Meine Testkarte ist 2400 * 2400 px groß, in dem View will ich das mittlere Quadrat sehen, das Ergebnis ist in dem shoot ganz unten zu sehen.

    Wenn ich die Auflösung des Monitores (kein besonderes Model) unter settings einstelle, dann sehe ich nicht die Ränder vom Fenster...

    mfg

    Maschine



    Edit:

    Ich sehe gerade, das ich zu dusselig bin hier ein paar Bilder reinzukriegen...muß die wohl irgendwo hochladen, mal sehen wo das denn geht...
    Eine Stimme sprach zu mir: "Lächle und sei froh, es könnte schlimmer kommen!"
    Ich lächelte und war froh, und es kam schlimmer... :heul:
  • Versuchs mal bei Pic-upload.
    Hier ein kleines Example das ich gaaanz früher mal gemacht hab.
    Beinhaltet auch Minimap und sowas.
    Auf alle fälle aber funktionierende Views.


    EDIT: ich sollte mal all die Sachen die ich vor Jahren gemacht hab löschen.
    Das Ding ist teils in DnD aber hoffe es erfüllt seinen Zweck.
    Dateien
    • Minimap2.rar

      (5,01 kB, 157 mal heruntergeladen, zuletzt: )

    Willst du auf diese Drachen und -eier klicken?
    Sie werden sich freuen ;)

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

  • Moin DragonGamer,

    mein Dank wird Dir auf ewig nachschleichen....

    Deine Minimap war genau das was ich brauchte um überhaupt einen Start zu bekommen, darauf kann ich nun aufbauen, das Brett vor dem Kopf ist erstmal weg.

    Ich werde dieses Thema noch nicht beenden, ich bin sicher das ich noch Fragen dazu haben werde.

    mfg

    Maschine
    Eine Stimme sprach zu mir: "Lächle und sei froh, es könnte schlimmer kommen!"
    Ich lächelte und war froh, und es kam schlimmer... :heul:
  • Benutzer online 1

    1 Besucher