Page 1 of 1

[SOLVED] dialogue text blinks during transition

Posted: Sun Oct 06, 2019 5:05 pm
by bloobeary
When I use a transition between a {nw} and an extend statement, the dialog box stays onscreen, but all the text in it blinks out for a second before coming back.

Is there a way to make it not blink out and back like that?

Re: dialogue text blinks during transition

Posted: Sun Oct 06, 2019 10:37 pm
by isobellesophia
bloobeary wrote: Sun Oct 06, 2019 5:05 pm When I use a transition between a {nw} and an extend statement, the dialog box stays onscreen, but all the text in it blinks out for a second before coming back.

Is there a way to make it not blink out and back like that?
Maybe this one will work

Code: Select all

"A dialogue {nw}"
extend "With another quick dialogue"

Re: dialogue text blinks during transition

Posted: Mon Oct 07, 2019 11:42 pm
by bloobeary
Not sure what you're suggesting. Your example doesn't seem to have a transition in it.

This is what I've got:

Code: Select all


    c "{cps=10}Character talking text goes here. {/cps}{w=3}{nw}"
    
    show screen timer
    with Dissolve(.5)

    extend "{cps=10}Character continues talking here.{/cps}{w=5}{nw}"
    
It looks like triggering the Dissolve causes the text to momentarily vanish. I was hoping there was a way to keep the text visible between the end of the first line and the beginning of the extend.

Re: dialogue text blinks during transition

Posted: Thu Oct 10, 2019 11:39 am
by bloobeary
Okay, it's been many days without a usable solution to this problem. A search through the forums here shows many people running into this, and trying and failing to find a workaround.

How do I go about filing this as a bug report, so it can be fixed?

Re: dialogue text blinks during transition

Posted: Thu Oct 10, 2019 11:45 am
by rayminator
you can go here to report something that's not work properly

viewtopic.php?f=8&t=20031

Re: dialogue text blinks during transition

Posted: Thu Oct 10, 2019 7:38 pm
by philat
That's just how transitions work. Use ATL if you want the textbox to stay.

Re: dialogue text blinks during transition

Posted: Fri Oct 11, 2019 1:51 am
by bloobeary
philat wrote: Thu Oct 10, 2019 7:38 pm That's just how transitions work. Use ATL if you want the textbox to stay.
Could you be a little more specific?

Also, please note that the textbox itself stays visible. It's the text inside the box that disappears during transition.

Re: dialogue text blinks during transition

Posted: Fri Oct 11, 2019 3:07 am
by philat

Code: Select all

screen test():
    add Solid("#FFF", xysize=(50,50)) at dissolvein
   
label start:
    "blah blah {nw}"
    show screen test
    extend "blah blah2"
   
transform dissolvein:
    alpha 0
    linear 0.5 alpha 1.0

Re: dialogue text blinks during transition

Posted: Fri Oct 11, 2019 12:41 pm
by bloobeary
Yep, that worked!

Put the transform dissolvein code into screens.py, added the "at dissolvein" code to my screen, and now the text doesn't disappear.

This still seems like something that could benefit from being a program feature, though. Something you could call with a simple code tag, like {IT} for ignore transition, or {RO} for remain onscreen, or something like that.

Re: dialogue text blinks during transition

Posted: Thu Oct 14, 2021 9:00 am
by strayerror
Update: Just realised I necro-bumped this by accident as a result of finding this thread via the more recent post in the "Gripes" thread. Ooops! :oops:

It sounds like what you want is the layer-aware transitions, which are achieved by using a python dict with the with keyword as in the example below.

Code: Select all

define eileen = Character('eileen')

label start:
    scene black
    show eileen happy
    eileen 'Hello there, {nw}'
    show eileen vhappy
    with {'master': dissolve}
    extend 'my name is Eileen!'
    return
This doesn't affect the say screen at all as it resides on the "screens" layer, and {'master': dissolve} will only dissolve the "master" layer (which is where show places your image sprites by default).

P.S. Following on from your "Gripes" thread, you should be able to already achieve what you want with the proposed "{nwt]" tag, granted it's not pretty, but it should work:

Code: Select all

    eileen 'Hello there!{nw}'
    show eileen vhappy
    with {'master': dissolve}
    extend ''

Re: dialogue text blinks during transition

Posted: Thu Oct 14, 2021 2:24 pm
by bloobeary
strayerror wrote: Thu Oct 14, 2021 9:00 am Update: Just realised I necro-bumped this by accident as a result of finding this thread via the more recent post in the "Gripes" thread. Ooops! :oops:
Thank you for doing so. Once I'm back in front of my code, I'll give your suggestion a try.

Don't suppose you also know the trick to making the code play typing sounds upon user input?

Re: dialogue text blinks during transition

Posted: Fri Oct 15, 2021 3:31 am
by bloobeary
Okay, well.. I tried your suggestion out. And it sort of works.

Code: Select all

show eileen vhappy
with {'master': dissolve}
...works to keep the name from blinking during regular dialog. Thanks for that.


Using:

Code: Select all

    
eileen 'Hello there!{nw}'
show eileen vhappy
with {'master': dissolve}
 extend ""
...also works well enough. But there's no delay before the figure appears. I was wanting there to be a delay between the dialogue appearing and the character sprite.

Sticking a pause statement in thusly:

Code: Select all

eileen 'Hello there!{nw}'
pause 1    
show eileen vhappy
with {'master': dissolve}
extend ""
...causes the character name to blink off for the duration of the pause.

You did at least solve one of my problems though, so again - thank you for that.

Re: dialogue text blinks during transition

Posted: Fri Oct 15, 2021 3:52 am
by bloobeary
Okay.. I think I have found a hack that gives me the effect that I want.

Instead of using a pause statement to create the delay, I manufacture a delay within the body of the text itself by shoving a characters per second command in like this:

Code: Select all

eileen 'Hello there!{cps=1}  {/cps}{nw}'  
show eileen vhappy
with {'master': dissolve}
extend ""
By temporarily slowing down characters per second to one, I can display two empty spaces at one character per second to give myself two seconds of delay.

I'm going to mark this one solved.

Re: [SOLVED] dialogue text blinks during transition

Posted: Fri Oct 15, 2021 7:02 am
by strayerror
Glad it helped, also I think you can use the "wait" tag to introduce a delay (in seconds) mid-dialogue line, in order to avoid abusing the cps tag, like so:

Code: Select all

eileen 'Hello there!{w=2}{nw}'  
show eileen vhappy
with {'master': dissolve}
extend ""

Re: [SOLVED] dialogue text blinks during transition

Posted: Fri Oct 15, 2021 7:07 am
by bloobeary
strayerror wrote: Fri Oct 15, 2021 7:02 am I think you can use the "wait" tag to introduce a delay (in seconds) mid-dialogue
Oh, right. I forgot you could do that. I may swap that over, to be less hackish.

Cheers!

Now if I could just get that "sound when typing input" thing working.