This works okay, but if I use a wait tag in the dialogue like {w=1.0}, the ATL animation starts again when the text scrolls to the wait tag, so the textbox will ease in from the bottom again partway through the dialogue.
Does anyone know a good way to circumvent this, or just a plain better way to get the same effect?
I'm honestly stumped, so I'm considering just making the dialogue window background clear and manually showing the window background as an image to fake it...
Here's my say screen right now:
Code: Select all
screen say(who, what, side_image=None, two_window=False, who_window_style= "say_who_window"):
if newSpeaker: #if a new character is speaking, do this
# Decide if we want to use the one-window or two-window variant.
if not two_window:
# The one window variant.
window:
id "window"
at winFade #here's the ATL transform
has vbox:
style "say_vbox"
if who:
text who id "who"
text what id "what"
else:
# The two window variant.
vbox:
style "say_two_window_vbox"
at winFade #here's the ATL transform
window:
ypos 347
id "window"
has vbox:
style "say_vbox"
text what id "what"
if who:
window:
xpos -10
ypos -82
style "say_who_window"
text who:
id "who"
else: #otherwise like normal
...Code: Select all
transform winFade:
on show:
xalign .5 ypos 860
alpha 0.0
easein 0.3 alpha 1.0 ypos 768
on hide:
easein 0.3 alpha 0.0 ypos 860