Maniac Mansion Mania Forum

MMM-Werkzeugkiste => Technik => Newbies => Thema gestartet von: Kinkilla am 21. Mai 2016, 18:51:46

Titel: "Fade Ins" in Cutscenes
Beitrag von: Kinkilla am 21. Mai 2016, 18:51:46
Hey Leute
 Folgendes Problem: Ich versuche während einer Cutscene (Gui ist nicht sichtbar, Überspringen mit ESC) einen Raumübergang hinzuzufügen.Damit meine ich dass bei [ags]player.EnterRoom(ANGABEN);[/ags] der übergang nicht sofort geschehen soll, sondern einen art Fade In eingeblendet werden soll
 LG Kinkilla
Titel: Re: "Fade Ins" in Cutscenes
Beitrag von: Kiwa am 22. Mai 2016, 12:48:50
Es wäre jetzt gut zu wissen was genau du mit "Fade in" meinst.

Generell gibt es bei AGS 2 Möglichkeiten bzw. Zeitpunkte eine Funktion beim Raumwechsel aufzurufen.

Bei der ersten Möglichkeit wird die Funktion "room_Load" aufgerufen. Dazu musst du im AGS Editor unten rechts bei den Funktionen einen Doppelklick bei "Enters room before fade in" machen. AGS erstellt dann die "room_Load" Funktion im Skript und dort kannst du reinschreiben was passieren soll.
Hierbei ist zu beachten das die Funktion "room_Load" aufgerufen wird BEVOR der player im Raum sichtbar bzw. vorhanden ist.

Bei der zweiten Möglichkeit wird die Funktion "room_AfterFadeIn" aufgerufen. Dazu bei "Enters room after fade in" ein doppelklick machen und AGS erstellt die Funktion. In die Funktion wieder das reinschreiben was passieren soll.
Diese Funktion wird aufgerufen NACHDEM der player im Raum ist und damit auch sichtbar ist.

Der zeitliche Unterschied beträgt nur wenige Milisekunden, ist aber meist deutlich sichtbar.

Das funktioniert auch bei Cutscenen. Du kannst aber den player vor dem Raumwechsel auch unsichtbar machen und zum richtigen Zeitpunkt wieder sichtbar. Das kann manchmal einfacher sein, je nachdem was du vor hast. Eine weitere Möglichkeit wäre ein zusätzlicher Raum, in dem du etwas ablaufen lassen kannst.

Was in deinem Fall das Beste ist musst du aber selber Entscheiden da nur du den genauen Ablauf kennst. Ich hoffe etwas geholfen zu haben.
Titel: Re: "Fade Ins" in Cutscenes
Beitrag von: Kinkilla am 22. Mai 2016, 15:21:34
War ein bisschen ungenau geschildert  :)
Bei  "player.EnterRoom (RoomID,x,y,FaceDir);" erscheint der neue Raum Sofort
Ich möchte aber das der Bildschirm langsam schwarz ausgeblendet wird und dann wieder eingeblendet wird im neuen Raum
Genau so wie bei einen normalen Raumwechsel (Durch offene Tür)
 Hoffe es war genauer  :-X
Titel: Re: "Fade Ins" in Cutscenes
Beitrag von: Cmdr am 22. Mai 2016, 16:34:27
Probier doch mal:

[ags]
...
FadeOut(1);
player.EnterRoom (RoomID,x,y,FaceDir);
[/ags]

und im neuen Raum dann:

[ags]
function room_AfterFadeIn()
{
  FadeIn(1);
  ...
}
[/ags]
Titel: Re: "Fade Ins" in Cutscenes
Beitrag von: Kinkilla am 22. Mai 2016, 17:13:35
Super hat funktioniert
 Danke  ;D
Titel: Re: "Fade Ins" in Cutscenes
Beitrag von: KhrisMUC am 24. Mai 2016, 11:36:24
Oder auch

[ags]  SetNextScreenTransition(eTransitionFade);[/ags]