#------------- # TRANSITIONS #------------- # Sprite/Screen transitions # Ease-in and Ease-out dissolves. Makes sprite fades slightly better presented, so use these in place of dissolves. Continue to use regular dissolves for things like scene transitions. # This motherfucker contains UNDOCUMENTED time_warp parameters because you apparently have to # look at source code to even use the damn argument. define eidissolve = Dissolve(0.5, time_warp=_ease_in_time_warp) # Ease-in Dissolve define eodissolve = Dissolve(0.5, time_warp=_ease_out_time_warp) # Ease-out Dissolve # Same as above but takes an argument like regular Dissolve() init python: def eiDissolve(t): return Dissolve(t, time_warp=_ease_in_time_warp) def eoDissolve(t): return Dissolve(t, time_warp=_ease_out_time_warp) def eDissolve(t): return Dissolve(t, time_warp=_ease_time_warp) # No-delay dissolves. Use when you don't want the game logic to hold up when using a dissolve transition # There's no such thing as a no-delay dissolve function for variable input, they have to be defined. # 1s indicates that the transition lasts 1 second. qrt indicates it lasts a quarter of a second. define eidissolve_nd = { "master" : eidissolve } define eodissolve_nd = { "master" : eodissolve } define eidissolve_1s_nd = { "master" : eiDissolve(1.0) } define eodissolve_1s_nd = { "master" : eoDissolve(1.0) } define dissolve_nd = { "master" : dissolve } define dissolve_1s_nd = { "master" : Dissolve(1) } define dissolve_qrt_nd = { "master" : Dissolve(0.25) } define eidissolve_qrt_nd = { "master" : eiDissolve(0.25) } define edissolve_long = { "master" : eDissolve(10) } define trans_scratchy_half = ImageDissolve("trans_scratchy", 0.5, ramplen=8) define trans_scratchy = ImageDissolve("trans_scratchy", 1.0, ramplen=8) define trans_scratchy_1half = ImageDissolve("trans_scratchy", 1.5, ramplen=8) define trans_scratchy_2s = ImageDissolve("trans_scratchy", 2.0, ramplen=8) define trans_scratchy_3s = ImageDissolve("trans_scratchy", 3.0, ramplen=8) define trans_circlefade = ImageDissolve("trans_circlefade", 2.0, ramplen=128, reverse=True) define trans_wet = ImageDissolve("trans_wet", 2.0, ramplen=4) define trans_wet_1s = ImageDissolve("trans_wet", 1.0, ramplen=4) define trans_wet_1half = ImageDissolve("trans_wet", 1.5, ramplen=4) define trans_scratchy_nd = { "master" : trans_scratchy } define trans_wet_1half_nd = { "master" : trans_wet_1half } define trans_scratchy_2s_nd = { "master" : trans_scratchy_2s } define trans_scratchy_3s_nd = { "master" : trans_scratchy_3s } define trans_circlefade_nd = { "master" : trans_circlefade } # Screen shakers # These are ATL defined transitions, so still use it with the 'with' statement. transform xpunch(i=1.5, s=1, new_widget=None, old_widget=None): delay (s * 0.24) # 8 * 0.035 new_widget events True yanchor 0.5 ypos 0.5 block: linear (0.035*s) zoom 1 + 0.01+(0.01*i) xanchor 0.0 xpos 0.0 linear (0.035*s) zoom 1 + 0.009+(0.009*i) xanchor 1.0 xpos 1.0 linear (0.035*s) zoom 1 + 0.008+(0.008*i) xanchor 0.0 xpos 0.0 linear (0.035*s) zoom 1 + 0.006+(0.006*i) xanchor 1.0 xpos 1.0 linear (0.035*s) zoom 1 + 0.005+(0.005*i) xanchor 0.0 xpos 0.0 linear (0.035*s) zoom 1 + 0.003+(0.003*i) xanchor 1.0 xpos 1.0 linear (0.035*s) zoom 1 + 0.002+(0.002*i) xanchor 0.0 xpos 0.0 linear (0.035*s) zoom 1 xanchor 0.5 xpos 0.5 transform ypunch(i=1.5, s=1, new_widget=None, old_widget=None): delay (s * 0.24) new_widget events True xanchor 0.5 xpos 0.5 block: linear (0.035*s) zoom 1 + 0.01+(0.015*i) yanchor 0.0 ypos 0.0 linear (0.035*s) zoom 1 + 0.009+(0.014*i) yanchor 1.0 ypos 1.0 linear (0.035*s) zoom 1 + 0.008+(0.012*i) yanchor 0.0 ypos 0.0 linear (0.035*s) zoom 1 + 0.006+(0.011*i) yanchor 1.0 ypos 1.0 linear (0.035*s) zoom 1 + 0.005+(0.008*i) yanchor 0.0 ypos 0.0 linear (0.035*s) zoom 1 + 0.003+(0.005*i) yanchor 1.0 ypos 1.0 linear (0.035*s) zoom 1 + 0.002+(0.003*i) yanchor 0.0 ypos 0.0 linear (0.035*s) zoom 1 yanchor 0.5 ypos 0.5 transform xpunchstrong(i=1.5, s=1, new_widget=None, old_widget=None): delay (s * 0.24) new_widget events True yanchor 0.5 ypos 0.5 block: linear (0.03*s) zoom 1 + 0.01+(0.06*i) xanchor 0.5 xpos 0.5 linear (0.03*s) zoom 1 + 0.009+(0.02*i) xanchor 1.0 xpos 1.0 linear (0.03*s) zoom 1 + 0.008+(0.008*i) xanchor 0.0 xpos 0.0 linear (0.03*s) zoom 1 + 0.006+(0.006*i) xanchor 1.0 xpos 1.0 linear (0.03*s) zoom 1 + 0.005+(0.005*i) xanchor 0.0 xpos 0.0 linear (0.03*s) zoom 1 + 0.003+(0.003*i) xanchor 1.0 xpos 1.0 linear (0.03*s) zoom 1 + 0.002+(0.002*i) xanchor 0.0 xpos 0.0 linear (0.03*s) zoom 1 xanchor 0.5 xpos 0.5 transform ypunchstrong(i=1.5, s=1, new_widget=None, old_widget=None): delay (s * 0.24) new_widget events True xanchor 0.5 xpos 0.5 block: linear (0.03*s) zoom 1 + 0.01+(0.12*i) yanchor 0.5 ypos 0.5 linear (0.03*s) zoom 1 + 0.009+(0.04*i) yanchor 1.0 ypos 1.0 linear (0.03*s) zoom 1 + 0.008+(0.016*i) yanchor 0.0 ypos 0.0 linear (0.03*s) zoom 1 + 0.006+(0.012*i) yanchor 1.0 ypos 1.0 linear (0.03*s) zoom 1 + 0.005+(0.010*i) yanchor 0.0 ypos 0.0 linear (0.03*s) zoom 1 + 0.003+(0.006*i) yanchor 1.0 ypos 1.0 linear (0.03*s) zoom 1 + 0.002+(0.004*i) yanchor 0.0 ypos 0.0 linear (0.03*s) zoom 1 yanchor 0.5 ypos 0.5 transform xpunchlong(i=1.0, s=1, new_widget=None, old_widget=None): delay (s * 0.42) new_widget events True yanchor 0.5 ypos 0.5 block: linear (0.03*s) zoom 1 + 0.02+(0.02*i) xanchor 0.0 xpos 0.0 linear (0.03*s) zoom 1 + 0.019+(0.019*i) xanchor 1.0 xpos 1.0 linear (0.03*s) zoom 1 + 0.017+(0.017*i) xanchor 0.0 xpos 0.0 linear (0.03*s) zoom 1 + 0.015+(0.015*i) xanchor 1.0 xpos 1.0 linear (0.03*s) zoom 1 + 0.013+(0.013*i) xanchor 0.0 xpos 0.0 linear (0.03*s) zoom 1 + 0.011+(0.011*i) xanchor 1.0 xpos 1.0 linear (0.03*s) zoom 1 + 0.01+(0.01*i) xanchor 0.0 xpos 0.0 linear (0.03*s) zoom 1 + 0.009+(0.009*i) xanchor 1.0 xpos 1.0 linear (0.03*s) zoom 1 + 0.008+(0.008*i) xanchor 0.0 xpos 0.0 linear (0.03*s) zoom 1 + 0.006+(0.006*i) xanchor 1.0 xpos 1.0 linear (0.03*s) zoom 1 + 0.005+(0.005*i) xanchor 0.0 xpos 0.0 linear (0.03*s) zoom 1 + 0.003+(0.003*i) xanchor 1.0 xpos 1.0 linear (0.03*s) zoom 1 + 0.002+(0.002*i) xanchor 0.0 xpos 0.0 linear (0.03*s) zoom 1 xanchor 0.5 xpos 0.5 transform ypunchlong(i=1.0, s=1, new_widget=None, old_widget=None): delay (s * 0.42) new_widget events True xanchor 0.5 xpos 0.5 block: linear (0.03*s) zoom 1 + 0.02+(0.035*i) yanchor 0.0 ypos 0.0 linear (0.03*s) zoom 1 + 0.019+(0.033*i) yanchor 1.0 ypos 1.0 linear (0.03*s) zoom 1 + 0.017+(0.032*i) yanchor 0.0 ypos 0.0 linear (0.03*s) zoom 1 + 0.015+(0.029*i) yanchor 1.0 ypos 1.0 linear (0.03*s) zoom 1 + 0.013+(0.025*i) yanchor 0.0 ypos 0.0 linear (0.03*s) zoom 1 + 0.011+(0.021*i) yanchor 1.0 ypos 1.0 linear (0.03*s) zoom 1 + 0.01+(0.02*i) yanchor 0.0 ypos 0.0 linear (0.03*s) zoom 1 + 0.009+(0.018*i) yanchor 1.0 ypos 1.0 linear (0.03*s) zoom 1 + 0.008+(0.016*i) yanchor 0.0 ypos 0.0 linear (0.03*s) zoom 1 + 0.006+(0.012*i) yanchor 1.0 ypos 1.0 linear (0.03*s) zoom 1 + 0.005+(0.01*i) yanchor 0.0 ypos 0.0 linear (0.03*s) zoom 1 + 0.003+(0.006*i) yanchor 1.0 ypos 1.0 linear (0.03*s) zoom 1 + 0.002+(0.004*i) yanchor 0.0 ypos 0.0 linear (0.03*s) zoom 1 yanchor 0.5 ypos 0.5 transform xpunchstronglong(i=1.0, s=1, new_widget=None, old_widget=None): delay (s * 0.42) new_widget events True yanchor 0.5 ypos 0.5 block: linear (0.03*s) zoom 1 + 0.02+(0.12*i) xanchor 0.5 xpos 0.5 linear (0.03*s) zoom 1 + 0.019+(0.040*i) xanchor 1.0 xpos 1.0 linear (0.03*s) zoom 1 + 0.017+(0.03*i) xanchor 0.0 xpos 0.0 linear (0.03*s) zoom 1 + 0.015+(0.015*i) xanchor 1.0 xpos 1.0 linear (0.03*s) zoom 1 + 0.013+(0.013*i) xanchor 0.0 xpos 0.0 linear (0.03*s) zoom 1 + 0.011+(0.011*i) xanchor 1.0 xpos 1.0 linear (0.03*s) zoom 1 + 0.01+(0.01*i) xanchor 0.0 xpos 0.0 linear (0.03*s) zoom 1 + 0.009+(0.009*i) xanchor 1.0 xpos 1.0 linear (0.03*s) zoom 1 + 0.008+(0.008*i) xanchor 0.0 xpos 0.0 linear (0.03*s) zoom 1 + 0.006+(0.006*i) xanchor 1.0 xpos 1.0 linear (0.03*s) zoom 1 + 0.005+(0.005*i) xanchor 0.0 xpos 0.0 linear (0.03*s) zoom 1 + 0.003+(0.003*i) xanchor 1.0 xpos 1.0 linear (0.03*s) zoom 1 + 0.002+(0.002*i) xanchor 0.0 xpos 0.0 linear (0.03*s) zoom 1 xanchor 0.5 xpos 0.5 transform ypunchstronglong(i=1.0, s=1, new_widget=None, old_widget=None): delay (s * 0.42) new_widget events True xanchor 0.5 xpos 0.5 block: linear (0.03*s) zoom 1 + 0.02+(0.24*i) yanchor 0.5 ypos 0.5 linear (0.03*s) zoom 1 + 0.019+(0.08*i) yanchor 1.0 ypos 1.0 linear (0.03*s) zoom 1 + 0.017+(0.06*i) yanchor 0.0 ypos 0.0 linear (0.03*s) zoom 1 + 0.015+(0.030*i) yanchor 1.0 ypos 1.0 linear (0.03*s) zoom 1 + 0.013+(0.026*i) yanchor 0.0 ypos 0.0 linear (0.03*s) zoom 1 + 0.011+(0.022*i) yanchor 1.0 ypos 1.0 linear (0.03*s) zoom 1 + 0.01+(0.02*i) yanchor 0.0 ypos 0.0 linear (0.03*s) zoom 1 + 0.009+(0.018*i) yanchor 1.0 ypos 1.0 linear (0.03*s) zoom 1 + 0.008+(0.016*i) yanchor 0.0 ypos 0.0 linear (0.03*s) zoom 1 + 0.006+(0.012*i) yanchor 1.0 ypos 1.0 linear (0.03*s) zoom 1 + 0.005+(0.01*i) yanchor 0.0 ypos 0.0 linear (0.03*s) zoom 1 + 0.003+(0.006*i) yanchor 1.0 ypos 1.0 linear (0.03*s) zoom 1 + 0.002+(0.004*i) yanchor 0.0 ypos 0.0 linear (0.03*s) zoom 1 yanchor 0.5 ypos 0.5