Undertale Yellow script viewer

← back to main script listing

gml_Object_obj_dunes_29b_controller_Step_0

(view raw script w/o annotations or w/e)
1
switch scene
2
{
3
    case 0:
4
        if (obj_pl.x > 300)
5
        {
6
            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 }
()
7
            audio_sound_gain(obj_radio.current_song, 0, 360)
8
            flowey = instance_create(360, obj_pl.y, obj_dunes_32_flowey)
9
            timer = 40
10
            scene++
11
        }
12
        break
13
    case 1:
14
        if (!scr_timer
scr_timer

function scr_timer() //gml_Script_scr_timer { if (timer > 0) { timer-- return false; } else return true; }
())
15
            return;
16
        scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
17
        with (msg)
18
        {
19
            sndfnt = 96
20
            message[0] = "* Howdy!"
21
            message[1] = "* Gee, looks like we're#  getting close to an#  exit from this place."
22
            message[2] = "* Aside from those mines,#  time has been pretty#  friendly to us."
23
            message[3] = "* Should be a simple#  journey from here on#  ou-  "
24
            message[4] = "* Clover?"
25
            prt[0] = 348
26
            prt[1] = 348
27
            prt[2] = 348
28
            prt[3] = 348
29
            talker[0] = other.flowey
30
            position = 1
31
            if (message_current == 3)
32
            {
33
                skippable = false
34
                if (cutoff >= string_length(message[message_current]))
35
                {
36
                    other.scene++
37
                    other.timer = 60
38
                    other.flowey.is_talking = false
39
                    sndfnt = 102
40
                    portrait = false
41
                    message_current += 1
42
                    cutoff = 0
43
                }
44
            }
45
        }
46
        break
47
    case 2:
48
        if scr_timer
scr_timer

function scr_timer() //gml_Script_scr_timer { if (timer > 0) { timer-- return false; } else return true; }
()
49
        {
50
            scene++
51
            timer = 15
52
            instance_destroy(msg)
53
        }
54
        break
55
    case 3:
56
        if (!scr_timer
scr_timer

function scr_timer() //gml_Script_scr_timer { if (timer > 0) { timer-- return false; } else return true; }
())
57
            return;
58
        scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
59
        with (msg)
60
        {
61
            sndfnt = 96
62
            message[0] = "* Great."
63
            prt[0] = 351
64
            talker[0] = other.flowey
65
            position = 1
66
        }
67
        if (!global.dialogue_open)
68
            scene++
69
        break
70
    case 4:
71
        with (flowey)
72
        {
73
            sprite_index = spr_floweyleave
74
            image_speed = 0.2
75
        }
76
        timer = 20
77
        scene++
78
        break
79
    case 5:
80
        if (!scr_timer
scr_timer

function scr_timer() //gml_Script_scr_timer { if (timer > 0) { timer-- return false; } else return true; }
())
81
            return;
82
        if (!instance_exists(obj_martlet_dunes_32))
83
        {
84
            martlet = instance_create(((__view_get((0 << 0), 0)) + 320 + 40), obj_pl.y, obj_martlet_dunes_32)
85
            audio_play_sound(mus_birdsofafeather, 1, 1)
86
        }
87
        if martlet.npc_arrived
88
        {
89
            martlet.npc_arrived = false
90
            scene++
91
        }
92
        break
93
    case 6:
94
        scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
95
        with (msg)
96
        {
97
            ch_msg = 8
98
            ch[1] = "It's OK"
99
            ch[2] = "Calm down"
100
            sndfnt = 102
101
            talker[0] = other.martlet
102
            message[0] = "* Clover!"
103
            message[1] = "* You're alive! You're#  here!"
104
            message[2] = "* You're... here..."
105
            message[3] = "* I CAN'T BELIEVE MYSELF!"
106
            message[4] = "* I LEFT YOU ALL ALONE IN#  THAT CAVE!"
107
            message[5] = "* YOU HAD TO BRAVE THE#  DUNES BY YOURSELF!!"
108
            message[6] = "* I'M A HORRIBLE FRIEND!"
109
            message[7] = "* They trust me to be a#  Royal Guard and I left#  a child for dead!!"
110
            message[8] = "* Like, what is wrong#  with me?????"
111
            prt[0] = 328
112
            prt[1] = 318
113
            prt[2] = 333
114
            prt[3] = 310
115
            prt[4] = 310
116
            prt[5] = 333
117
            prt[6] = 333
118
            prt[7] = 333
119
            prt[8] = 322
120
            position = 1
121
            if (outcome == 1)
122
            {
123
                message[9] = "* I... yes."
124
                message[10] = "* Thank you."
125
                message[11] = "* You're clearly able to#  take care of yourself."
126
                prt[9] = 322
127
                prt[10] = 320
128
                prt[11] = 320
129
            }
130
            if (outcome == 2)
131
            {
132
                message[9] = "* I... okay."
133
                message[10] = "* I should take a few#  breaths and properly#  assess the situation."
134
                prt[9] = 322
135
                prt[10] = 320
136
            }
137
        }
138
        if (!global.dialogue_open)
139
            scene++
140
        break
141
    case 7:
142
        scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
143
        with (msg)
144
        {
145
            ch_msg = 10
146
            ch[1] = "Forgive"
147
            ch[2] = "..."
148
            sndfnt = 102
149
            talker[0] = other.martlet
150
            message[0] = "* The crash just happened#  so fast."
151
            message[1] = "* When I saw what had#  happened to you, I#  panicked!"
152
            message[2] = "* I flew over the sandy#  landscape and found#  this town."
153
            message[3] = "* I soon realized that I#  couldn't risk getting#  other monsters involved."
154
            message[4] = "* They might've#  questioned me and I#  cannot keep secrets!"
155
            message[5] = "* They could've turned us#  in to the more sinister#  Royal Guards!"
156
            message[6] = "* So I uh..."
157
            message[7] = "* Sat by a cactus for an#  hour, thinking of what#  a piece of garbage I am."
158
            message[8] = "* I then got the courage#  to travel back to you#  and apologize but..."
159
            message[9] = "* Here you were."
160
            message[10] = "* So... I'm deeply sorry!"
161
            prt[0] = 333
162
            prt[1] = 333
163
            prt[2] = 338
164
            prt[3] = 317
165
            prt[4] = 320
166
            prt[5] = 333
167
            prt[6] = 323
168
            prt[7] = 329
169
            prt[8] = 320
170
            prt[9] = 317
171
            prt[10] = 317
172
            position = 1
173
            if (outcome == 1)
174
            {
175
                message[11] = "* Thank you, Clover!"
176
                message[12] = "* You're very kind!"
177
                prt[11] = 320
178
                prt[12] = 318
179
            }
180
            if (outcome == 2)
181
            {
182
                message[11] = "* ..."
183
                message[12] = "* Um..."
184
                prt[11] = 322
185
                prt[12] = 323
186
            }
187
        }
188
        if (!global.dialogue_open)
189
            scene++
190
        break
191
    case 8:
192
        scr_text
scr_text

function scr_text() //gml_Script_scr_text { if (!instance_exists(obj_dialogue)) msg = instance_create(x, y, obj_dialogue) }
()
193
        with (msg)
194
        {
195
            sndfnt = 102
196
            talker[0] = other.martlet
197
            message[0] = "* Anyway, we should move#  on."
198
            message[1] = "* I decided that I won't#  leave your side now!"
199
            message[2] = "* I'll follow wherever#  you lead!"
200
            message[3] = "* You just endured some#  crazy Underground#  shenanigans, though."
201
            message[4] = "* I'd understand if you#  need to rest for a bit."
202
            message[5] = "* If you wanna hang#  around, that's great!"
203
            message[6] = "* I didn't get to#  sightsee at all on the#  way over here."
204
            message[7] = "* Well then, friend.#  Shall we be off?"
205
            prt[0] = 328
206
            prt[1] = 313
207
            prt[2] = 313
208
            prt[3] = 320
209
            prt[4] = 320
210
            prt[5] = 328
211
            prt[6] = 328
212
            prt[7] = 337
213
            position = 1
214
        }
215
        if (!global.dialogue_open)
216
            scene++
217
        break
218
    case 9:
219
        with (martlet)
220
        {
221
            x_dest[0] = obj_pl.x - 20
222
            y_dest[0] = obj_pl.y
223
            end_direction = "right"
224
            can_walk = true
225
            if npc_arrived
226
                other.scene++
227
        }
228
        break
229
    case 10:
230
        with (instance_create(martlet.x, martlet.y, obj_martlet_follower))
231
            npc_reset = true
232
        global.party_member = 1170
233
        instance_destroy(martlet)
234
        audio_sound_gain(mus_birdsofafeather, 0, 200)
235
        audio_sound_gain(obj_radio.current_song, 1, 800)
236
        scene++
237
        break
238
    case 11:
239
        instance_destroy()
240
        global.dunes_flag[16] = 1
241
        scr_cutscene_end
scr_cutscene_end

function scr_cutscene_end() //gml_Script_scr_cutscene_end { global.cutscene = false obj_pl.alarm[0] = 1 }
()
242
        break
243
}