Set 'dissolve' transition as default transition

Discuss how to use the Ren'Py engine to create visual novels and story-based games. New releases are announced in this section.
Forum rules
This is the right place for Ren'Py help. Please ask one question per thread, use a descriptive subject like 'NotFound error in option.rpy' , and include all the relevant information - especially any relevant code and traceback messages. Use the code tag to format scripts.
Post Reply
Message
Author
Eliont
Regular
Posts: 111
Joined: Thu Aug 06, 2009 6:51 am
Completed: Begin of Evangelion, SAO - Smile of the black cat, SAO - Project "Ceramic Heart", Time for Dragons
Location: Russia
Contact:

Set 'dissolve' transition as default transition

#1 Post by Eliont »

Hello and good time of day.

show event1 at truecenter with dissolve <-- is there any way don't write 'with dissolve' in each statement?
If i want instant, i will wriite 'with None'.

May by it possible with http://www.renpy.org/doc/html/config.ht ... h_callback but i can't figure out how.

Thanks in advance.

Asceai
Eileen-Class Veteran
Posts: 1258
Joined: Fri Sep 21, 2007 7:13 am
Projects: a battle engine
Contact:

Re: Set 'dissolve' transition as default transition

#2 Post by Asceai »

I'm not sure how it would be done, but I think it needs to be attached to Show somehow - not sure if it's possible to redefine something like 'show' with user-defined statements, but if so that's a possibility - alternatively, using a renamed version of 'show' that just comes with an implicit dissolve might be a better way.

The reason you wouldn't want to just blanket inject dissolve transitions everywhere with the callback is that implicit 'withs' are called in a lot of places, like for every block of text, and it ends up not producing the results you want anyway.

I agree that we want something like this because I find myself using dissolve for expression changes and things like that and needing to 'with dissolve' everything is a pain.

EDIT: Oh, I forgot about config.show. Interested to see if it and renpy.transition can be combined to get the desired effect..

EDIT 2: Okay, this is a start:

Code: Select all

init python:
    def replacement_show(*args, **kwargs):
        renpy.transition(dissolve)
        return renpy.show(*args, **kwargs)
    config.show = replacement_show
It is not a complete solution. In particular, the text box does a dissolve fade-in when show is used. Ideally the dissolve in will take place before and the text box will just appear. Not currently sure how to do this.

Eliont
Regular
Posts: 111
Joined: Thu Aug 06, 2009 6:51 am
Completed: Begin of Evangelion, SAO - Smile of the black cat, SAO - Project "Ceramic Heart", Time for Dragons
Location: Russia
Contact:

Re: Set 'dissolve' transition as default transition

#3 Post by Eliont »

Thanks, it works.

Code: Select all

    def replacement_show(*args, **kwargs):
        renpy.transition(Dissolve(1))
        renpy.show(*args, **kwargs)
        renpy.pause(1.5, hard=True)
        return 
    config.show = replacement_show
    
    def replacement_hide(*args, **kwargs):
        renpy.transition(Dissolve(1))
        renpy.hide(*args, **kwargs)
        renpy.pause(1.5, hard=True)
        return 
    config.hide = replacement_hide  
But textbox don't dissolve - it appear and disappear instantly. Is there any way to apply transition to window?

User avatar
Donmai
Eileen-Class Veteran
Posts: 1960
Joined: Sun Jun 10, 2012 1:45 am
Completed: Toire No Hanako, Li'l Red [NaNoRenO 2013], The One in LOVE [NaNoRenO 2014], Running Blade [NaNoRenO 2016], The Other Question, To The Girl With Sunflowers
Projects: Slumberland
Location: Brazil
Contact:

Re: Set 'dissolve' transition as default transition

#4 Post by Donmai »

http://lemmasoft.renai.us/forums/viewto ... 55#p310555
You will need Ren'Py 6.17 or later.
Image
No, sorry! You must be mistaking me for someone else.
TOIRE NO HANAKO (A Story About Fear)

Post Reply

Who is online

Users browsing this forum: Majestic-12 [Bot]