diff --git a/game/scripts/gui/say.rpy b/game/scripts/gui/say.rpy index fc4bb2ea..ff9dfdb8 100644 --- a/game/scripts/gui/say.rpy +++ b/game/scripts/gui/say.rpy @@ -8,6 +8,21 @@ screen nvl(dialogue, items=None): # def text_inner_thought(string, pattern=re.compile(r"\(([^)]+)\)")): # return re.findall(pattern, string) +# default _next_say_who = None + +# init python: +# def next_who(*args, **kwargs): +# # Unfortunately does not work because '_last_say_who' is a lie. It points to the currently run statement. +# if not hasattr(renpy.store, "_next_say_who", ): +# return + +# global _next_say_who + +# scry = renpy.scry().next() +# _next_say_who = scry.who.__name__ if scry and scry.who else None + +# config.all_character_callbacks.append(next_who) + screen say(who, what, side_image=None, icon=None): style_prefix "say" layer "interface" @@ -20,7 +35,7 @@ screen say(who, what, side_image=None, icon=None): id "textbox" style "textbox" - at gui_show_hide + at gui_say_show_hide # Ren'py hard crashes without textbox windows, # this is the workaround that just works. @@ -190,7 +205,7 @@ transform gui_perspective_hover: easein 0.1 matrixtransform ScaleMatrix(1.05, 1.05, 1.05) easeout 0.1 matrixtransform ScaleMatrix(1.0, 1.0, 1.0) -transform gui_show_hide: +transform gui_say_show_hide: show_cancels_hide False on start: alpha 0 @@ -200,6 +215,26 @@ transform gui_show_hide: on hide: easeout 0.1 zoom 0.95 alpha 0 +# transform gui_say_show_hide: +# show_cancels_hide False +# on show: +# function gui_say_show +# # on hide: +# # easeout 0.1 zoom 0.95 alpha 0 + +# init python: +# def gui_say_show(trans, st, at): +# if at > 0.1: +# return None + +# if _last_say_who == _next_say_who: +# return None + +# warper = _warper.easein(at / 0.1) +# trans.alpha = renpy.atl.interpolate(warper, 0.0, 1.0, renpy.atl.PROPERTIES["alpha"]) +# trans.zoom = renpy.atl.interpolate(warper, 1.05, 1.0, renpy.atl.PROPERTIES["zoom"]) +# return 0.01 + transform gui_choice_show_hide: show_cancels_hide False on start: