1-
21extends Control
32
4- # Member variables
5- var trans = ["linear" , "sine" , "quint" , "quart" , "quad" , "expo" , "elastic" , "cubic" , "circ" , "bounce" , "back" ]
6- var eases = ["in" , "out" , "in_out" , "out_in" ]
7- var modes = ["move" , "color" , "scale" , "rotate" , "callback" , "follow" , "repeat" , "pause" ]
3+ const trans_list = ["Linear" , "Sine" , "Quint" , "Quart" , "Quad" , "Expo" , "Elastic" , "Cubic" , "Circ" , "Bounce" , "Back" ]
4+ const eases_list = ["In" , "Out" , "InOut" , "OutIn" ]
5+ const modes_list = ["Move" , "Color" , "Scale" , "Rotate" , "Callback" , "Follow" , "Repeat" , "Pause" ]
86
97var state = {
108 trans = Tween .TRANS_LINEAR ,
119 eases = Tween .EASE_IN ,
1210}
1311
12+ onready var trans = $ Trans
13+ onready var eases = $ Eases
14+ onready var modes = $ Modes
15+ onready var tween = $ Tween
16+ onready var timeline = $ Timeline
17+ onready var color_from_picker = $ Colors/ColorFrom/Picker
18+ onready var color_to_picker = $ Colors/ColorTo/Picker
19+ onready var sprite = $ Tween/Area/Sprite
20+ onready var follow = $ Tween/Area/Follow
21+ onready var follow_2 = $ Tween/Area/Follow2
22+ onready var size = $ Tween/Area .get_size ()
1423
1524func _ready ():
16- for index in range (trans .size ()):
17- get_node ("trans/" + trans [index ]).connect ("pressed" , self , "on_trans_changed" , [trans [index ], index ])
25+ for index in range (trans_list .size ()):
26+ trans . get_node (trans_list [index ]).connect ("pressed" , self , "on_trans_changed" , [trans_list [index ], index ])
1827
19- for index in range (eases .size ()):
20- get_node ("eases/" + eases [index ]).connect ("pressed" , self , "on_eases_changed" , [eases [index ], index ])
28+ for index in range (eases_list .size ()):
29+ eases . get_node (eases_list [index ]).connect ("pressed" , self , "on_eases_changed" , [eases_list [index ], index ])
2130
22- for index in range (modes .size ()):
23- get_node ("modes/" + modes [index ]).connect ("pressed" , self , "on_modes_changed" , [modes [index ]])
31+ for index in range (modes_list .size ()):
32+ modes . get_node (modes_list [index ]).connect ("pressed" , self , "on_modes_changed" , [modes_list [index ]])
2433
25- get_node ( "colors/color_from/picker" ) .set_pick_color (Color ( 1 , 0 , 0 , 1 ) )
26- get_node ( "colors/color_from/picker" ) .connect ("color_changed" , self , "on_color_changed" )
34+ color_from_picker .set_pick_color (Color . red )
35+ color_from_picker .connect ("color_changed" , self , "on_color_changed" )
2736
28- get_node ( "colors/color_to/picker" ) .set_pick_color (Color ( 0 , 1 , 1 , 1 ) )
29- get_node ( "colors/color_to/picker" ) .connect ("color_changed" , self , "on_color_changed" )
37+ color_to_picker .set_pick_color (Color . cyan )
38+ color_to_picker .connect ("color_changed" , self , "on_color_changed" )
3039
31- get_node ( "trans/linear" ) .set_pressed (true )
32- get_node ( "eases/in" ) .set_pressed (true )
33- get_node ( "modes/move" ) .set_pressed (true )
34- get_node ( "modes/repeat" ) .set_pressed (true )
40+ $ Trans/Linear .set_pressed (true )
41+ $ Eases/In .set_pressed (true )
42+ $ Modes/Move .set_pressed (true )
43+ $ Modes/Repeat .set_pressed (true )
3544
3645 reset_tween ()
3746
3847
3948func on_trans_changed (trans_name , index ):
40- for index in range (trans .size ()):
41- var pressed = trans [index ] == trans_name
42- var btn = get_node ("trans/" + trans [index ])
49+ for index in range (trans_list .size ()):
50+ var pressed = trans_list [index ] == trans_name
51+ var btn = trans . get_node (trans_list [index ])
4352
4453 btn .set_pressed (pressed )
4554 set_mouse_filter (Control .MOUSE_FILTER_IGNORE if pressed else Control .MOUSE_FILTER_PASS )
@@ -49,9 +58,9 @@ func on_trans_changed(trans_name, index):
4958
5059
5160func on_eases_changed (ease_name , index ):
52- for index in range (eases .size ()):
53- var pressed = eases [index ] == ease_name
54- var btn = get_node ("eases/" + eases [index ])
61+ for index in range (eases_list .size ()):
62+ var pressed = eases_list [index ] == ease_name
63+ var btn = eases . get_node (eases_list [index ])
5564
5665 btn .set_pressed (pressed )
5766 set_mouse_filter (Control .MOUSE_FILTER_IGNORE if pressed else Control .MOUSE_FILTER_PASS )
@@ -61,14 +70,13 @@ func on_eases_changed(ease_name, index):
6170
6271
6372func on_modes_changed (mode_name ):
64- var tween = get_node ("tween" )
6573 if mode_name == "pause" :
66- if get_node ( "modes/pause" ) .is_pressed ():
74+ if $ Modes/Pause .is_pressed ():
6775 tween .stop_all ()
68- get_node ( " timeline" ) .set_mouse_filter (Control .MOUSE_FILTER_PASS )
76+ timeline .set_mouse_filter (Control .MOUSE_FILTER_PASS )
6977 else :
7078 tween .resume_all ()
71- get_node ( " timeline" ) .set_mouse_filter (Control .MOUSE_FILTER_IGNORE )
79+ timeline .set_mouse_filter (Control .MOUSE_FILTER_IGNORE )
7280 else :
7381 reset_tween ()
7482
@@ -78,41 +86,35 @@ func on_color_changed(_color):
7886
7987
8088func reset_tween ():
81- var tween = get_node ("tween" )
8289 var pos = tween .tell ()
8390 tween .reset_all ()
8491 tween .remove_all ()
8592
86- var sprite = get_node ("tween/area/sprite" )
87- var follow = get_node ("tween/area/follow" )
88- var follow_2 = get_node ("tween/area/follow_2" )
89- var size = get_node ("tween/area" ).get_size ()
90-
91- if get_node ("modes/move" ).is_pressed ():
93+ if $ Modes/Move .is_pressed ():
9294 tween .interpolate_method (sprite , "set_position" , Vector2 (0 , 0 ), Vector2 (size .x , size .y ), 2 , state .trans , state .eases )
9395 tween .interpolate_property (sprite , "position" , Vector2 (size .x , size .y ), Vector2 (0 , 0 ), 2 , state .trans , state .eases , 2 )
9496
95- if get_node ( "modes/color" ) .is_pressed ():
96- tween .interpolate_method (sprite , "set_modulate" , get_node ( "colors/color_from/picker" ) .get_pick_color (), get_node ( "colors/color_to/picker" ) .get_pick_color (), 2 , state .trans , state .eases )
97- tween .interpolate_property (sprite , "modulate" , get_node ( "colors/color_to/picker" ) .get_pick_color (), get_node ( "colors/color_from/picker" ) .get_pick_color (), 2 , state .trans , state .eases , 2 )
97+ if $ Modes/Color .is_pressed ():
98+ tween .interpolate_method (sprite , "set_modulate" , color_from_picker .get_pick_color (), color_to_picker .get_pick_color (), 2 , state .trans , state .eases )
99+ tween .interpolate_property (sprite , "modulate" , color_to_picker .get_pick_color (), color_from_picker .get_pick_color (), 2 , state .trans , state .eases , 2 )
98100 else :
99- sprite .set_modulate (Color ( 1 , 1 , 1 , 1 ) )
101+ sprite .set_modulate (Color . white )
100102
101- if get_node ( "modes/scale" ) .is_pressed ():
103+ if $ Modes/Scale .is_pressed ():
102104 tween .interpolate_method (sprite , "set_scale" , Vector2 (0.5 , 0.5 ), Vector2 (1.5 , 1.5 ), 2 , state .trans , state .eases )
103105 tween .interpolate_property (sprite , "scale" , Vector2 (1.5 , 1.5 ), Vector2 (0.5 , 0.5 ), 2 , state .trans , state .eases , 2 )
104106 else :
105- sprite .set_scale (Vector2 ( 1 , 1 ) )
107+ sprite .set_scale (Vector2 . ONE )
106108
107- if get_node ( "modes/rotate" ) .is_pressed ():
109+ if $ Modes/Rotate .is_pressed ():
108110 tween .interpolate_method (sprite , "set_rotation_degrees" , 0 , 360 , 2 , state .trans , state .eases )
109111 tween .interpolate_property (sprite , "rotation_degrees" , 360 , 0 , 2 , state .trans , state .eases , 2 )
110112
111- if get_node ( "modes/callback" ) .is_pressed ():
113+ if $ Modes/Callback .is_pressed ():
112114 tween .interpolate_callback (self , 0.5 , "on_callback" , "0.5 second's after" )
113115 tween .interpolate_callback (self , 0.2 , "on_callback" , "1.2 second's after" )
114116
115- if get_node ( "modes/follow" ) .is_pressed ():
117+ if $ Modes/Follow .is_pressed ():
116118 follow .show ()
117119 follow_2 .show ()
118120
@@ -125,38 +127,31 @@ func reset_tween():
125127 follow .hide ()
126128 follow_2 .hide ()
127129
128- tween .set_repeat (get_node ( "modes/repeat" ) .is_pressed ())
130+ tween .set_repeat ($ Modes/Repeat .is_pressed ())
129131 tween .start ()
130132 tween .seek (pos )
131133
132- if get_node ( "modes/pause" ) .is_pressed ():
134+ if $ Modes/Pause .is_pressed ():
133135 tween .stop_all ()
134136 # get_node("timeline").set_ignore_mouse(false)
135- get_node ( " timeline" ) .set_value (0 )
137+ timeline .set_value (0 )
136138 else :
137139 tween .resume_all ()
138140 # get_node("timeline").set_ignore_mouse(true)
139141
140142
141143func _on_tween_step (_object , _key , elapsed , _value ):
142- var timeline = get_node ("timeline" )
143-
144- var tween = get_node ("tween" )
145144 var runtime = tween .get_runtime ()
146-
147145 var ratio = 100 * (elapsed / runtime )
148146 timeline .set_value (ratio )
149147
150148
151149func _on_timeline_value_changed (value ):
152- if ! get_node ( "modes/pause" ) .is_pressed ():
150+ if ! $ Modes/Pause .is_pressed ():
153151 return
154-
155- var tween = get_node ("tween" )
156152 var runtime = tween .get_runtime ()
157153 tween .seek (runtime * value / 100 )
158154
159155
160156func on_callback (arg ):
161- var label = get_node ("tween/area/label" )
162- label .add_text ("on_callback -> " + arg + "\n " )
157+ $ Tween/Area/Label .add_text ("on_callback -> " + arg + "\n " )
0 commit comments