V4.2 "Aufgerufene Aktionen werden jetzt immer sofort ausgeführt"

  • #1, by LebosteinMonday, 11. May 2015, 14:08 9 years ago
    Aufgerufene Aktionen werden jetzt immer sofort ausgeführt, und nicht erst nachdem die aufrufende Aktion beendet oder pausiert ist (bei vorhandenen Spielen bleibt das bisherige Verhalten bestehen).

    Wo kann man das denn einstellen? Im XML-File habe ich das neue Attribut GameExecuteCalledActionImmediately="F" gesehen, im Editor finde ich die Einstellung aber nicht. Oder ist das so gewollt?

    Key Killer

    621 Posts


  • #2, by AlexMonday, 11. May 2015, 15:26 9 years ago
    es gibt dazu keine Einstellung, da das etwas sehr spezielles ist und bei neuen Spielen sowieso entsprechend gesetzt wird. Wenn du es bei einem bestehenden Projekt ändern willst, dann musst du GameExecuteCalledActionImmediately="T" setzen (oder im Explorer auf true).

    Great Poster

    378 Posts

  • #3, by LebosteinMonday, 11. May 2015, 15:36 9 years ago
    OK, Danke. Sowas hab ich mir schon gedacht, wollte aber sicher gehen.

    Key Killer

    621 Posts

  • #4, by LebosteinMonday, 11. May 2015, 16:07 9 years ago
    Hmm.... wenn ich das umstelle, werden keine Befehlsaktionen mehr ausgelöst. Woran könnte das liegen? Ich mache Skriptaufrufe, die das betreffen könnte, aber nicht innerhalb meines Coin-Interfaces. Es scheint, als ob "ecexute on saved command" nicht funktioniert

    Key Killer

    621 Posts

  • #5, by LebosteinTuesday, 12. May 2015, 08:44 9 years ago
    Ich habs rausgefunden. Scheinbar verhalten sich auch die internen Skriptaufrufe in Visionaire nun ein klein wenig anders. Wenn man mit einem Coin-Interface einen Befehl gibt (also beim Loslassen der Maustaste über einem Verb-Button), werden ja 2 interne Aktionen zugleich ausgelöst, nämlich "Linksklick auf Interfacebutton" und "Linke Maustaste losgelassen".

    Nun sah das bei mir so aus:

    "Linksklick auf Interfacebutton"
    --> Befehl auf gespeichertes Objekt anwenden

    "Linke Maustaste losgelassen"
    --> Hauptinterface verstecken
    --> Gespeichertes Objekt löschen

    Mit der alten Einstellung ("F") funktioniert das, mit der neuen ("T") nicht mehr. Irgendwie scheinen die Action Parts unter "Linke Maustaste losgelassen" eher durchlaufen zu werden als unter "Linksklick auf Interfacebutton", so dass das gespeicherte Objekt gelöscht wird, bevor der Befehl darauf angewendent wird. Dann passiert natürlich nichts, weil kein Befehl mehr gespeichert ist. Mit einer kleinen Pause klappt es aber wieder:

    "Linke Maustaste losgelassen"
    --> Hauptinterface verstecken
    --> Pause für 10 Millisekunden
    --> Gespeichertes Objekt löschen

    Key Killer

    621 Posts

  • #6, by AlexWednesday, 13. May 2015, 13:52 9 years ago
    hier muss noch irgendwo was anderes im Spiel sein. Die Einstellung GameExecuteCalledActionImmediately betrifft einzig und allein das Aufrufen einer anderen Aktion ("Aktion starten" Aktionsteil).

    Great Poster

    378 Posts

  • #7, by LebosteinWednesday, 13. May 2015, 14:18 9 years ago
    Du hast natürlich Recht. Der Block unter "Linke Maustaste losgelassen" steht bei mir ein einem separaten Aktionsteil, weil er von verschiedenen Stellen aus aufgerufen wird. Das wird es erklären.

    Key Killer

    621 Posts