wenn ich am anfang eines raumes in befor fadein StartCutscene (1); eingebe und 3 räume weiter in After fadein Encutscene (); eingebe beendet er er nur den 1 raum und nicht alle bis zum dritten wenn ich Esc drücke........?
MFG Daniel
StartCutscene / EndCutscene
-
- Süßwasserpirat
- Beiträge: 258
- Registriert: 22.09.2002, 21:28
- Kontaktdaten:
ja es gibt einen dialog und ab den 3. raum ist das intro zu ende und man steigt ins spiel ein
es soll noch eine weiter cutscene ins spiel kommen aber ist noch nicht denn ich wollte ersteinmal die 1. zum laufen kriegen! Kann das sein das alle scripts der drei räume in einem script seien müssen oder kann man das mit der fuktion if (taste esc) gehe zu raum 3...?
es soll noch eine weiter cutscene ins spiel kommen aber ist noch nicht denn ich wollte ersteinmal die 1. zum laufen kriegen! Kann das sein das alle scripts der drei räume in einem script seien müssen oder kann man das mit der fuktion if (taste esc) gehe zu raum 3...?
-
- Süßwasserpirat
- Beiträge: 258
- Registriert: 22.09.2002, 21:28
- Kontaktdaten:
RunDialog und NewRoom sind "abschließende" Befehle
Das Abbrechen der CutScene bedeutet intern, dass die Engine mit gamespeed 10000 die Befehle abarbeitet, der Bidschirm wird dabei nicht aktualisiert. Läuft die CutScene normal fehlerfrei, dann auch beim Abbrechen.
Allerdings! ...
In CutScenes dürfen nur Dialoge verwendet werden, die nur 1 Option haben, weil AGS nicht entscheiden kann, welche von mehreren Optionen der Spieler auswählen würde.
Kommentiere den RunDialog-Befehl einmal aus und probier's dann. Wenn es korrekt abbricht, dann liegt es am Dialog. Wie gesagt: Keinen Dialog einbauen, bei dem der Spieler von verschiedenen Antworten/Fragen eine aussuchen kann.
Du solltest auch wissen, dass der RunDialog-Befehl ähnlich wie der NewRoom-Befehl erst am Ende des aktuellen Scripts ausgeführt wird:
// irgendwelche Aktionen
RunDialog...
// weitere Aktionen
Zuerst werden "irgendwelche Aktionen" ausgeführt, dann "weitere Aktionen" und nach all diesem erst der RunDialog.
Nach RunDialog gehört also zwangsäufig die abschließende }.
Du brauchst daher im Dialog-Ende einen run-script Befehl, wodurch dialog_request aufgerufen wird. Dorthin kannst du dann die "weitere Aktionen" schreiben, bspw. auch das NewRoom.
Auch nach dem NewRoom gehört die abschließende }, denn alle Befehle danach werden schon vorher ausgeführt. Aus diesem Grund ist es gar nicht möglich, in ein Script die ganze CutScene zu schreiben, wenn sie Raumwechsel beinhaltet.
Viel Erfolg beim Fehlersuchen. Gerne darfst du mir das room script auch zeigen, dann helfe ich dir konkreter bei der Fehlersuche.
Allerdings! ...
In CutScenes dürfen nur Dialoge verwendet werden, die nur 1 Option haben, weil AGS nicht entscheiden kann, welche von mehreren Optionen der Spieler auswählen würde.
Kommentiere den RunDialog-Befehl einmal aus und probier's dann. Wenn es korrekt abbricht, dann liegt es am Dialog. Wie gesagt: Keinen Dialog einbauen, bei dem der Spieler von verschiedenen Antworten/Fragen eine aussuchen kann.
Du solltest auch wissen, dass der RunDialog-Befehl ähnlich wie der NewRoom-Befehl erst am Ende des aktuellen Scripts ausgeführt wird:
// irgendwelche Aktionen
RunDialog...
// weitere Aktionen
Zuerst werden "irgendwelche Aktionen" ausgeführt, dann "weitere Aktionen" und nach all diesem erst der RunDialog.
Nach RunDialog gehört also zwangsäufig die abschließende }.
Du brauchst daher im Dialog-Ende einen run-script Befehl, wodurch dialog_request aufgerufen wird. Dorthin kannst du dann die "weitere Aktionen" schreiben, bspw. auch das NewRoom.
Auch nach dem NewRoom gehört die abschließende }, denn alle Befehle danach werden schon vorher ausgeführt. Aus diesem Grund ist es gar nicht möglich, in ein Script die ganze CutScene zu schreiben, wenn sie Raumwechsel beinhaltet.
Viel Erfolg beim Fehlersuchen. Gerne darfst du mir das room script auch zeigen, dann helfe ich dir konkreter bei der Fehlersuche.
-
- Süßwasserpirat
- Beiträge: 258
- Registriert: 22.09.2002, 21:28
- Kontaktdaten:
Dank Skyhawk bin ich auf eine Idee gekommen, wie eine CutScene mit Dialog auf einfache Weise eingebaut werden kann:
Es werden für dieselbe Interaction 2 Aktionen als RunScript angelegt. Im ersten Scriptteil wird alles reingeschrieben, was vor dem Dialog geschehen soll. Dieser Teil endet mit dem Befehl RunDialog (...);
Das nächste RunScript enthält alle Aktionen, die nach dem Dialog ausgeführt werden sollen.
Für NewRoom funktioniert das allerdings nicht.
Es werden für dieselbe Interaction 2 Aktionen als RunScript angelegt. Im ersten Scriptteil wird alles reingeschrieben, was vor dem Dialog geschehen soll. Dieser Teil endet mit dem Befehl RunDialog (...);
Das nächste RunScript enthält alle Aktionen, die nach dem Dialog ausgeführt werden sollen.
Für NewRoom funktioniert das allerdings nicht.