Ergebnis 1 bis 8 von 8

Thema: Ereignis mit Ereignis aufhalten Problem

  1. #1

    Ereignis mit Ereignis aufhalten Problem

    Ich habe folgendes Problem:
    Ich habe bei einem Ereignis eingestellt, das es sich auf etwas zubewegt und bei jedem Schritt eine Variable erhöht wird.
    Wenn diese Variable auf 13 steht (Es sind 13 Schritte bis zum Ziel)
    Kommt eine Nachricht.
    Nun hab ich gemacht, das man das bewegende Ereignis mit einem Stein aufhalten kann, das das Ziel nicht erreicht wird.
    Das Problem ist aber, das selbst wenn das Ereignis aufgehalten wird, sich die Variable trotzdem auf 13 erhöht und die Nachricht kommt.
    Wie kann ich die Variable stoppen lassen, wenn man das sich bewegende Ereignis aufhält?

  2. #2
    Indem Du, wenn Du den Stein davor teleportierst, einen Schalter (dürfte in dt. Makerversion ja Schalter heißen) aktivierst und die Variable unter eine Bedingung dieses Schalters setzt. Klartext heißt das, Du hältst das Ereignis zwar an, jedoch nicht den Code. Der läuft weiter, deswegen der Schalter.

  3. #3
    Daran habe ich natürlich auch schon gedacht, aber man muss den Stein mehrmals schieben um das Ereignis aufzuhalten und man kann das Ereignis nicht nur an einer Stelle sondern an mehreren Stellen auf dem Weg des Ereignisses aufhalten. Wenn ich also einen Tab machen würde, könnte man den Stein ja nur ein einziges mal schieben.

  4. #4
    Hm, mach doch bei dem Ereignis noch zusätzlich eine Abfrage:
    Variablen a und b = x- und y-koordinaten des Events,
    Schritt wird gemacht,
    wenn x/y-Koordinate höher/tiefer ist
    ->Folge, Variable wird erhöht
    ansonsten: nicht.
    oder du machst das wie cilence gesagt hat
    da brauchst du diese Abfrage aber auch:
    Abfrage von x- und y-koordinaten des Stein-Events
    wenn x und y auf der gewünschten stelle sind
    ->Folge: Switch aktiviert.

    LG
    cenny

  5. #5
    Ich verstehe schon was du meinst, nun ist es aber so, das das Ereignis verschlungene Wege läuft und somit das Ganze sehr kompliziert wäre für jede Änderung von X oder Y wieder jedesmal eine 4 neue Bedingungen zu machen (wegen Stein und Ereignis) Ich müsste ja erstmal X und Y vom Ereignis abfragen und gleichzeitig Bedingung ob sich der Stein vor oder nach dem Eregnis auf einem der jeweiligen Teilstrecken befindet.
    Außerdem will ich später noch mehr solche Ereignisse mit verschlungenen Wegen machen, die man auch an diversen Stellen mit einem Stein aufhalten kann.

  6. #6
    Wieso, so kompliziert ist das doch nicht. Na ja, doch schon, aber viel einfacher gehts glaub ich nicht.
    Weil wenn du das Event machst
    <>"Step (Richtung Einfügen)"
    <>Variable xyz+1
    dann erhöht der die Variable so oder so.
    Also würde ich eben die X Koordinate abfragen, die in einer weiteren Variable speichern, dann hast du X1 und X2, die sind dann beide die X-Koordinaten des sich von selbst bewegenden Events (nicht des Steins). So, jezz das Move Event, natürlich mit "ignore if can't be moved", sonst bleibt alles stecken xD. Dann Fragst du X1 wieder ab. Und dann überprüfst du mit einer Bedingung, ob X1=X2 ist. wenn nicht, dann Variable up. Ansonsten nichts. Das gleiche machst du dann wenn nötig mit Y
    Jetzt ist es egal, wo der Stein ist, wenn der Stein dm Ding im Weg ist, dann bewegt es sich nicht weiter und die Variablen werden nicht mehr erhöht.
    Um es möglichst einfach zu machen und übersichtlich, würde ich das Event mit vielen Seiten machen, für jeden Schritt eine Seite. Dann kannst du die Bedingungen und den ganzen Kram einfach reinkopieren, lediglich das Move Event verändern.

  7. #7
    Also, erstmal:
    was ich irgendwie nicht verstehe ist, warum man für das bewegende Ereignis zweimal die X Koordiante abfragen muss.
    Mit vielen Seiten verstehe ich es so, das man immer auf der nächsten Seite abfragen muss ob Var. Schritt über x ist, damit es auf der Seite weitergeht mit einem Schritt und Vari wieder erhöht wird.
    Aber wieso ist es dann egal, wo sich der Stein befindet?
    Ich meine ich habs ja schon am Anfang so gemacht, das das bewegende Ereignis aufgehalten wird, aber die Variable hat sich ja immer weiter erhöht.

  8. #8
    Die X-Koordinate fragst du ein zweites Mal ab, um eben zu gucken, ob Das Event noch immer da steht wo es ist oder nicht.
    Du sicherst den ersten Standpunkt mit X1 ab, ermittelst X2, dann vergleichst du die mit einer Bedingung. Wenn die ungleich sind, heißt das, dass sich das Event bewegt hat.
    Dein Fehler war wohl, dass du einfach den Variablenbefehl einfach ohne Bedingung hinter den Move Event-Befehl gesetzt hast. So ist das klar, dass die Variable immer weiter erhöht wird, das Move-Event wird einfach ignoriert. Die Bedingung ist eben da, damit die Variable nur erhöht wird, wenn auch wirklich das Event sich fortbewegt hat. Und der Stein kann an beliebiger Stelle im Weg stehen, weil sich das Event einfach nicht mehr weiterbewegen kann. Dadurch wird der Standpunkt nicht verändert->keine Variablenveränderung->keine Erhöhung der Variable, die für dich wichtig ist.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •