Undertale Yellow script viewer

← back to main script listing

gml_Object_obj_battle_flashback_final_2_controller_Step_0

(view raw script w/o annotations or w/e)
1
if live_call()
2
    return global.live_result;
3
switch scene
4
{
5
    case 0:
6
        if (obj_pl.x >= 870)
7
        {
8
            scr_cutscene_start
scr_cutscene_start

function scr_cutscene_start() //gml_Script_scr_cutscene_start { global.cutscene = true obj_pl.state = gml_Script_scr_frozen_state obj_pl.image_index = 0 obj_pl.image_speed = 0 }
()
9
            scene++
10
        }
11
        break
12
    case 1:
13
        var dialogue = instance_create_depth((camera_get_view_x(view_camera[0]) + 140), (camera_get_view_y(view_camera[0]) + 80), -9999, obj_dialogue_withered_floweys)
14
        with (dialogue)
15
        {
16
            message[0] = "* h-hello?"
17
            message[1] = "* where am i?"
18
        }
19
        scene++
20
        break
21
    case 2:
22
        if (!instance_exists(obj_dialogue_withered_floweys))
23
            scene++
24
        break
25
    case 3:
26
        cutscene_wait(1)
27
        break
28
    case 4:
29
        sprite_index = -4
30
        visible = true
31
        draw_alpha_flowey += 0.1
32
        if (draw_alpha_flowey >= 1)
33
            scene++
34
        break
35
    case 5:
36
        cutscene_wait(0.5)
37
        break
38
    case 6:
39
        cutscene_camera_move(980, obj_pl.y, 1)
40
        break
41
    case 7:
42
        scr_cutscene_end
scr_cutscene_end

function scr_cutscene_end() //gml_Script_scr_cutscene_end { global.cutscene = false obj_pl.alarm[0] = 1 }
()
43
        scene++
44
        break
45
    case 8:
46
        if (obj_pl.x > (camera_get_view_x(view_camera[0]) + 160))
47
        {
48
            instance_destroy(obj_camera)
49
            camera_set_view_target(view_camera[0], 1031)
50
            scene++
51
        }
52
        break
53
    case 9:
54
        if (obj_pl.x > 1020)
55
        {
56
            with (obj_radio)
57
            {
58
                bgm = mus_the_wandering
59
                event_user(0)
60
            }
61
            scene++
62
        }
63
        break
64
    case 10:
65
        var _fx_haze = layer_get_fx("distort_effect")
66
        var distort_amount_current = (fx_get_parameter(_fx_haze, "g_Distort1Amount")) + 0.2
67
        if (distort_amount_current < 3)
68
        {
69
            fx_set_parameter(_fx_haze, "g_Distort1Amount", distort_amount_current)
70
            fx_set_parameter(_fx_haze, "g_Distort2Amount", distort_amount_current)
71
        }
72
        if (obj_pl.x > 5670)
73
        {
74
            scr_audio_fade_out
scr_audio_fade_out

function scr_audio_fade_out(argument0, argument1) //gml_Script_scr_audio_fade_out { var snd = argument0 var fade_len = argument1 if (!audio_is_playing(snd)) return false; audio_sound_gain(snd, 0, fade_len) if instance_exists(obj_audio_fade_helper) { with (obj_audio_fade_helper) { if (audio_to_fade == snd) return false; } } with (instance_create(0, 0, obj_audio_fade_helper)) audio_to_fade = snd }
(obj_radio.bgm, 1000)
75
            scr_cutscene_start
scr_cutscene_start

function scr_cutscene_start() //gml_Script_scr_cutscene_start { global.cutscene = true obj_pl.state = gml_Script_scr_frozen_state obj_pl.image_index = 0 obj_pl.image_speed = 0 }
()
76
            instance_create(obj_pl.x, obj_pl.y, obj_player_npc)
77
            obj_player_npc.action_sprite = true
78
            obj_player_npc.sprite_index = spr_pl_right
79
            obj_player_npc.image_speed = 0.2
80
            cutscene_advance()
81
        }
82
        break
83
    case 11:
84
        cutscene_wait(2)
85
        break
86
    case 12:
87
        obj_player_npc.y += ((sign(170 - obj_pl.y)) * 1)
88
        if (abs(obj_player_npc.y - 170) <= 2)
89
        {
90
            obj_player_npc.y = 170
91
            cutscene_advance()
92
        }
93
        break
94
    case 13:
95
        cutscene_wait(3)
96
        break
97
    case 14:
98
        depth = 1000
99
        if (flowey_bg_alpha < 1)
100
            flowey_bg_alpha += 0.05
101
        else
102
        {
103
            cutscene_advance()
104
            var effect = audio_effect_create((1 << 0))
105
            effect.mix = 0.5
106
            effect.time = 0.1
107
            audio_bus_main.effects[0] = effect
108
        }
109
        break
110
    case 15:
111
        cutscene_wait(5)
112
        if (irandom(8) == 1)
113
        {
114
            var laugh = audio_play_sound(choose(23, 630), 1, 0, random_range(0.3, 0.5), 0, random_range(0.6, 1.2))
115
            audio_sound_set_track_position(laugh, random_range(0, audio_sound_length(laugh)))
116
            audio_sound_gain(laugh, 0, 300)
117
        }
118
        break
119
    case 16:
120
        if ((!audio_is_playing(mus_f_newlaugh)) && (!audio_is_playing(snd_flowey_laugh)))
121
        {
122
            audio_bus_main.effects[0] = undefined
123
            obj_player_npc.npc_direction = "right"
124
            obj_player_npc.action_sprite = false
125
            cutscene_advance()
126
        }
127
        break
128
    case 17:
129
        cutscene_wait(1)
130
        break
131
    case 18:
132
        cutscene_camera_move(5750, obj_pl.y, 1)
133
        break
134
    case 19:
135
        cutscene_wait(1)
136
        break
137
    case 20:
138
        dialogue = instance_create_depth((camera_get_view_x(view_camera[0]) + 100), (camera_get_view_y(view_camera[0]) + 80), -9999, obj_dialogue_withered_floweys)
139
        with (dialogue)
140
            message[0] = "* what have i done."
141
        scene++
142
        break
143
    case 21:
144
        if (!instance_exists(obj_dialogue_withered_floweys))
145
            scene++
146
        break
147
    case 22:
148
        loop_count = 7
149
        if cutscene_wait(1)
150
        {
151
            obj_player_npc.action_sprite = true
152
            obj_player_npc.sprite_index = spr_pl_run_left
153
            obj_player_npc.image_index = 0
154
            obj_player_npc.image_speed = 0
155
        }
156
        break
157
    case 23:
158
        if (!audio_is_playing(mus_floweynew_yellow))
159
        {
160
            audio_sound_gain(mus_floweynew_yellow, 1, 0)
161
            flow_mus = audio_play_sound(mus_floweynew_yellow, 1, 0)
162
        }
163
        obj_player_npc.x += 2
164
        obj_player_npc.image_index += 0.5
165
        cutscene_wait(0.2)
166
        break
167
    case 24:
168
        audio_stop_sound(mus_floweynew_yellow)
169
        loop_count--
170
        if (loop_count > 0)
171
            scene = 23
172
        else
173
            cutscene_advance()
174
        break
175
    case 25:
176
        cutscene_instance_create(0, 0, obj_screen_shatter_effect)
177
        flowey_bg_alpha = 0
178
        break
179
    case 26:
180
        if (!instance_exists(obj_screen_shatter_effect))
181
        {
182
            depth = 0
183
            draw_alpha = 1
184
            persistent = true
185
            cutscene_change_room(233, 160, 1490, 0.1)
186
            if (!texture_is_ready("BattleHotlandFloweyPaper"))
187
                texture_prefetch("BattleHotlandFloweyPaper")
188
            if (!texture_is_ready("BattleHotlandFloweyGray"))
189
                texture_prefetch("BattleHotlandFloweyGray")
190
            if (!texture_is_ready("BattleHotlandFloweyClay"))
191
                texture_prefetch("BattleHotlandFloweyClay")
192
            if (!texture_is_ready("BattleHotlandFloweyMechanical"))
193
                texture_prefetch("BattleHotlandFloweyMechanical")
194
            if (!texture_is_ready("BattleHotlandFloweyLowpoly"))
195
                texture_prefetch("BattleHotlandFloweyLowpoly")
196
            if (!texture_is_ready("BattleHotlandFloweyYarn"))
197
                texture_prefetch("BattleHotlandFloweyYarn")
198
            if (!texture_is_ready("BattleHotlandFloweyOrganic"))
199
                texture_prefetch("BattleHotlandFloweyOrganic")
200
        }
201
        break
202
    case 27:
203
        instance_destroy(obj_flowey_battle_ow_controller)
204
        obj_pl.image_alpha = 1
205
        cutscene_wait(4)
206
        break
207
    case 28:
208
        draw_alpha -= 0.1
209
        if (draw_alpha <= 0)
210
            scene++
211
        break
212
    case 29:
213
        cutscene_end()
214
        break
215
}
216
217
if (flowey_bg_alpha > 0)
218
    flowey_bg_offset -= 0.1
219
if (room == rm_battle_flashback_final_2 && instance_exists(106520) && obj_pl.x > (106520.bbox_right + 20))
220
    106520.y = 160