-
Woran kann es liegen, dass manchmal Wld_SendTrigger-Aufrufe nicht auslösen?
Beispiel:
Code:
Wld_SendTrigger ("EVT_OC_MAINGATE01_01");
wird in einem Dialog ausgelöst, wenn das Tor zum Alten Lager offen ist, um es zu schließen. Das passiert in einer Höhle außerhalb des Lagers. Über die Winde funktioniert es aber.
Während beispielsweise
Code:
Wld_SendTrigger ("EVT_LORENFAHRT_MINE");
im Eisgebiet wunderbar funktioniert, um die Lorenfahrt zu starten, was auch passiert, wenn der Held weit entfernt ist (falls es irgendwie mit der Entfernung zu tun haben sollte).
Von den Einstellungen her hab ich bei den Movern jetzt auf Anhieb nichts gesehen, was dafür spricht, dass es beim einen geht und beim anderen nicht, also ActivationFilter und FireBehavior sehen identisch aus
-
Zitat von Bonne6
Woran kann es liegen, dass manchmal Wld_SendTrigger-Aufrufe nicht auslösen?
Beispiel:
Code:
Wld_SendTrigger ("EVT_OC_MAINGATE01_01");
wird in einem Dialog ausgelöst, wenn das Tor zum Alten Lager offen ist, um es zu schließen. Das passiert in einer Höhle außerhalb des Lagers. Über die Winde funktioniert es aber.
Während beispielsweise
Code:
Wld_SendTrigger ("EVT_LORENFAHRT_MINE");
im Eisgebiet wunderbar funktioniert, um die Lorenfahrt zu starten, was auch passiert, wenn der Held weit entfernt ist (falls es irgendwie mit der Entfernung zu tun haben sollte).
Von den Einstellungen her hab ich bei den Movern jetzt auf Anhieb nichts gesehen, was dafür spricht, dass es beim einen geht und beim anderen nicht, also ActivationFilter und FireBehavior sehen identisch aus
hi bonne,
das habe ich auch schon beobachtet. bei dialogen ist mir aufgefallen, den befehl wld_sendtrigger am anfang des scriptes auszulösen, dann wird er auf jeden fall ausgelöst. wenn man erst einen dialog oder ai_ befehle ausführen lässt, habe ich es auch schon gehabt, dass der trigger nicht ausgelöst wird. keine wirkliche lösung aber kannst es ja mal probieren.
Das Wappen -Eine fantastische Spielwelt erwartet dich- -bis zu 100 Stunden Spielzeit-
-
Zitat von aebo
hi bonne,
das habe ich auch schon beobachtet. bei dialogen ist mir aufgefallen, den befehl wld_sendtrigger am anfang des scriptes auszulösen, dann wird er auf jeden fall ausgelöst. wenn man erst einen dialog oder ai_ befehle ausführen lässt, habe ich es auch schon gehabt, dass der trigger nicht ausgelöst wird. keine wirkliche lösung aber kannst es ja mal probieren.
Das ist ja merkwürdig, ich habe mal irgendwo genau das Gegenteil gelesen.
Ich weiß es zwar nicht mehr so genau, aber sinngemäß stand dort etwas in der Art:
- Befehle mir "wld_" sollten möglichst am Ende ausgeführt werden.
Auch ich hatte schon solche Probleme.
Letztlich habe ich sie meistens gelöst, indem ich die Position des Befehls geändert habe.
Im Allgemeinen schiebe ich sie immer ans Ende.
Manchmal füge ich in Dialogen noch eine Choice ein, mit "Ende"...dort lasse ich dann den Trigger auslösen, falls es anders nicht funktioniert.
Würde mich auch interressieren, was nun besser ist und woran es liegt, dass es manchmal nicht klappt.
MfG
Geändert von TheBigLeBRUCEky (03.02.2018 um 12:49 Uhr)
-
Zitat von aebo
hi bonne,
das habe ich auch schon beobachtet. bei dialogen ist mir aufgefallen, den befehl wld_sendtrigger am anfang des scriptes auszulösen, dann wird er auf jeden fall ausgelöst. wenn man erst einen dialog oder ai_ befehle ausführen lässt, habe ich es auch schon gehabt, dass der trigger nicht ausgelöst wird. keine wirkliche lösung aber kannst es ja mal probieren.
Zitat von TheBigLeBRUCEky
Das ist ja merkwürdig, ich habe mal irgendwo genau das Gegenteil gelesen.
Ich weiß es zwar nicht mehr so genau, aber sinngemäß stand dort etwas in der Art:
- Befehle mir "wld_" sollten möglichst am Ende ausgeführt werden.
Auch ich hatte schon solche Probleme.
Letztlich habe ich sie meistens gelöst, indem ich die Position des Befehls geändert habe.
Im Allgemeinen schiebe ich sie immer ans Ende.
Manchmal füge ich in Dialogen noch eine Choice ein, mit "Ende"...dort lasse ich dann den Trigger auslösen, falls es anders nicht funktioniert.
Würde mich auch interressieren, was nun besser ist und woran es liegt, dass es manchmal nicht klappt.
MfG
Den zweiten Ansatz in abgewandelter Form (Triggerschleife) nutze ich oft als Ausweg, z.b. auch für Teleport von NPCs und Tagesablauf-Wechsel, wenn die NPCs sonst rumspacken. Ist aber immer etwas umständlicher, als direkt im Dialog, wo es ja eigentlich genauso funktionieren sollte. Werde mal ausprobieren, ob es mit Umpositionieren geht. Mich würde halt interessieren, warum es aktuell nicht funktioniert...
-
Zitat von Bonne6
Den zweiten Ansatz in abgewandelter Form (Triggerschleife) nutze ich oft als Ausweg, z.b. auch für Teleport von NPCs und Tagesablauf-Wechsel, wenn die NPCs sonst rumspacken. Ist aber immer etwas umständlicher, als direkt im Dialog, wo es ja eigentlich genauso funktionieren sollte. Werde mal ausprobieren, ob es mit Umpositionieren geht. Mich würde halt interessieren, warum es aktuell nicht funktioniert...
Ich nutze auch meistens eine Triggerschleife dafür.
Manchmal bietet sich aber eine Dialogoption an, z.B. wenn es der letzte Dia ist oder man nach dem Dia mit den Npc kämpfen soll.
Es gibt ja auch noch andere Möglichkeiten, aber, wem erzähle ich das.^^
MfG
-
Zitat von Bonne6
Code:
Wld_SendTrigger ("EVT_OC_MAINGATE01_01");
wird in einem Dialog ausgelöst, wenn das Tor zum Alten Lager offen ist, um es zu schließen. Das passiert in einer Höhle außerhalb des Lagers. Über die Winde funktioniert es aber.
Da würde ich mal prüfen ob es nur genau ein Objekt mit Namen "EVT_OC_MAINGATE01_01" gibt.
Die Winde ist ja wahrscheinlich direkt im Spacer mit dem Tor Verknüpft.
Bei Skriptaufruf Wld_SendTrigger ("EVT_OC_MAINGATE01_01"); werden nicht alle Objekte mit diesem Namen getriggert sondern nur eines.
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
|