Stacking Sequencing Commands

Announcements, support questions, and discussion for the Dialogue System.
Post Reply
marthmarth
Posts: 15
Joined: Sun Dec 26, 2021 9:30 pm

Stacking Sequencing Commands

Post by marthmarth »

I have a Conversation where I use setPortrait(Actor, pic=#) to make Actors disappear or reappear during the conversation. (Making the # portrait into a empty PNG)

It seems to work well, but I'm trying to wrap it in a Fade (out) command so that the portrait doesn't cut away so abruptly.
Fade(out(SetPortrait(Actor, pic=2)));
This did not work. Is there a better way to disappear/reappear portraits during a conversation either in Excel or the Dialogue Manager, or a way to add a Fade to a setPortrait sequencer?
User avatar
Tony Li
Posts: 22154
Joined: Thu Jul 18, 2013 1:27 pm

Re: Stacking Sequencing Commands

Post by Tony Li »

Hi,

A couple of notes:
  • Sequencer commands can't be nested.
  • The Fade() command fades the entire screen.
  • Just a side note: Fade(stay) is like Fade(out) except it keeps the screen faded until you Fade(in).
If you want to fade the entire screen, you can use this sequence:

Code: Select all

Fade(out)->Message(DoneFading);
SetPortrait(Actor, pic=2)@Message(DoneFading);
Fade(in)@Message(DoneFading)
The first line fades out to black over 1 second (the default values). When it's done, it sends the message "DoneFading" to the sequencer. You can send any message you want; it's just a string of your choosing.

The second line waits until the sequencer receives the message "DoneFading". Then it changes the portrait image.

The third line also waits for "DoneFading". Then it fades back in.
marthmarth
Posts: 15
Joined: Sun Dec 26, 2021 9:30 pm

Re: Stacking Sequencing Commands

Post by marthmarth »

Tony Li wrote: Mon Dec 27, 2021 7:27 am Hi,
I see! What I'm doing is trying to fade just the portrait (or panel) in an active conversation, while other portraits remain, rather than the entire scene. It's not super important at this stage though tbh.

Though in playing with this I've discovered another slight problem.

Step 1: Import my Excel Dialogue
Step 2: add my Sequences for setPortrait(Actor, pic=2)
Step 3: dialogue works fine

Then let's say I make some Excel edits to the dialogue, typos and such, and re-Import. At that point, all of my "Point and Click" scripts or sequences are cleared.

Is there a way to write a sequence into the excel itself, like when I do [panel=2], so that I don't have to remake the sequences and stuff every time I update the excel?
Example.excel (pic 2 is an empty PNG, so the actor 'disappears')

Actor 1: Okay bye! [panel = 1]
Actor 2: setPortrait(Actor 1, pic=2) See you later! [panel=0]
User avatar
Tony Li
Posts: 22154
Joined: Thu Jul 18, 2013 1:27 pm

Re: Stacking Sequencing Commands

Post by Tony Li »

Hi,
marthmarth wrote: Fri Dec 31, 2021 1:18 pmWhat I'm doing is trying to fade just the portrait (or panel) in an active conversation, while other portraits remain, rather than the entire scene.
You can put Animators on the portrait image GameObjects and use AnimatorPlay() or AnimatorTrigger() sequencer commands to trigger animations that fade in & out.
marthmarth wrote: Fri Dec 31, 2021 1:18 pmIs there a way to write a sequence into the excel itself, like when I do [panel=2], so that I don't have to remake the sequences and stuff every time I update the excel?
No. Excel really isn't the best tool for dialogue. If you want to stick with text-based editing, check out the JLC format importer. For outline-based editing, you can use the built-in editor in Outline mode or the Aurora Toolset. If you want to switch to node-based editing, you have a lot of choices: built-in editor, articy:draft, Chat Mapper, Celtx, Twine, Yarn, etc.
Post Reply