I hope everyone is having a great day!
I recently updated my project to the newest version of Ren'Py (8.2.0)
Since using this version I have noticed some changes to the behaviour of ATLs.
In short, the ATLs (transforms) are applied to elements in the say screen and the SideImage. However, every time dialogue is displayed the say screen reruns the animation regardless of whether it is the same character speaking or alternating.
Here's the code I have set up for the SideImage().
Code: Select all
transform side_image_change_transform(old, new):
animation
subpixel True
show_cancels_hide True ## Not sure if this does anything for this
choice:
contains:
old
yalign 1.0 yanchor 1.0 alpha 1.0
ease_quad 0.25 yanchor 0.0 alpha 0.0
contains:
new
yalign 1.0 yanchor 0.0 alpha 0.0
ease_quad 0.25 yanchor 1.0 alpha 1.0
choice:
contains:
old
yalign 1.0 xanchor 0.0 alpha 1.0
ease_quad 0.25 xanchor 1.0 alpha 0.0
contains:
new
yalign 1.0 xanchor 1.0 alpha 0.0
ease_quad 0.25 xanchor 0.0 alpha 1.0
on hide:
new
yalign 1.0 yanchor 1.0 alpha 1.0
ease_quad 0.25 yanchor 0.0 alpha 0.0
transform side_image_same_transform(old, new):
animation
old
new with Dissolve(0.05, alpha=True, mipmap=False)
define config.side_image_change_transform = side_image_change_transform
define config.side_image_same_transform = side_image_same_transform
Code: Select all
transform say_box_appear(delay=0.0):
animation ## I've added this, but I'm unsure if this even does anything for this particular matter.
on show: ## Each time the screen is updated this part of the animation is executed.
yoffset 100.0
easeout 0.15 yoffset 0.0
on replace, replaced: ## This does nothing...
yoffset 0.0
easeout 0.15 yoffset 15.0
easein 0.15 yoffset 0.0
on hide: ## Each time the screen is updated this part of the animation is executed.
pause delay
yoffset 0.0
easeout 0.2 yoffset 500.0
screen say(who, what):
style_prefix "say"
if not renpy.variant("small"):
add SideImage() align (0.5, 1.0) xpos -240 xanchor 0.0 yoffset 1300.0
window:
id "window"
background Transform("gui/textbox_style_A.png", xalign=0.5)
at say_box_appear(0.15)
if who is not None:
window:
id "namebox"
style "namebox"
text who.upper() id "who":
xalign 1.0
text_align 1.0
xanchor 1.0
text what id "what" outlines [(0, "#000D", 1, 1)]
As for the side image, when it's changing characters the 'hide' event is executed resulting in a ghosting effect when the side image changes to another character.
Here's a quick video to demonstrate the issues I'm facing.
I've tried playing around with some variables, but nothing these aren't causing any problems or rectifying the issue.
I can't quite figure out a solution to fix this. I've had other animations in other screens start behaving strangely as well i.e. animation (ATL/transform) constantly being reran.
Just wondering if any one has or is having this same issue and if you have any solutions or pointers. That would be greatly appreciated.
Thank you in advance.