Erst Spielstein bewegen, anschließend Textausgabe

  • GM 8

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

  • Erst Spielstein bewegen, anschließend Textausgabe

    Hallo,
    ich versuche mich grad an einem Testspiel das a la Monopoly funktionieren soll, ich möchte dass ein Spielstein nach dem Würfeln, nachdem er angeklickt wird auf ein auf ein bestimmtes Feld springt und dann eine Textaugabe erfolgt.

    Das hab ich in ein step event von meinem obj_stone geschrieben:

    Quellcode

    1. if (x==128) && (y==0)
    2. {
    3. show_message("Bahnhof 3");
    4. x+=1;
    5. }



    Leider kommt die Textausgabe direkt nachdem man den Stein anklickt und dieser springt erst nachdem das Textfenster geschlossen wurde auf das besagte Feld. Wie kann ich das ändern?


    Ich gehe davon aus dass es was ziemlich banales ist und entschuldige mich schon mal im voraus dafür extra einen thread eröffnet zu haben,sorry. :S
  • Hi,

    ich schätze mal das hat was mit der Art und Weise zu tun, wie du den Stein bewegst.

    Ich habs hiermit mal getestet, und das funktioniert soweit.

    GML-Quellcode

    1. //Bewegung
    2. x+=1
    3. //deine Abfrage
    4. if (x==128) //&& (y==0)
    5. {
    6. show_message("Bahnhof 3");
    7. x+=100;//mach nen großen Schritt
    8. }

    Fazit: Mit dem Schnipsel Code lässt sich deine Problem nicht beheben. Wir brauchen schon etwas mehr!

    Greetz
    Es gibt viel zu tun, packen wir´s an !!!
    Für Rechtschreibfehler sind die verantwortlich, die sie entdecken :P.
  • Der Stein bewegt sich schon, wird aber erst am Ende des Steps an der neuen Position gezeichnet. show_message wird also vorher ausgeführt und pausiert das Programm. Eine Möglichkeit ist, mit screen_redraw() den Rauminhalt neu zu zeichnen, bevor die Nachricht ausgegeben wird.
  • Nekaida schrieb:

    Der Stein bewegt sich schon, wird aber erst am Ende des Steps an der neuen Position gezeichnet. show_message wird also vorher ausgeführt und pausiert das Programm. Eine Möglichkeit ist, mit screen_redraw() den Rauminhalt neu zu zeichnen, bevor die Nachricht ausgegeben wird.


    sreen_redraw() und sleep() haben den gewünschten Effekt herbei geführt. Vielen lieben Dank!!

    und ebenso Danke an Black-Mask für die Mühe! :)
  • Benutzer online 1

    1 Besucher