Undertale Yellow script viewer

← back to main script listing

gml_Object_obj_factory_02_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
        break
7
    case 1:
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
        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.current_song, 750)
10
        cutscene_sfx_play(snd_beep, 1)
11
        break
12
    case 2:
13
        cutscene_wait(0.5)
14
        break
15
    case 3:
16
        cutscene_camera_move(270, 570, 2)
17
        break
18
    case 4:
19
        cutscene_wait(1.5)
20
        break
21
    case 5:
22
        cutscene_sfx_play(snd_generator_start, 1)
23
        obj_steamworks_factory_02_face.sprite_index = spr_steamworks_38_face_hello
24
        break
25
    case 6:
26
        cutscene_wait(2)
27
        break
28
    case 7:
29
        cutscene_music_start(65, 0)
30
        break
31
    case 8:
32
        if (obj_steamworks_factory_02_face.sprite_index != spr_steamworks_38_face_talking)
33
        {
34
            obj_steamworks_factory_02_face.sprite_index = spr_steamworks_38_face_talking
35
            obj_steamworks_factory_02_face.image_index = 0
36
        }
37
        cutscene_dialogue_special("swirl", 65280)
38
        with (msg)
39
        {
40
            message[0] = "* Gooood morning Steamworks#  employees!!!"
41
            message[1] = "* Hope you're ready for another#  day of pa-ro-duc-tivity!!!"
42
            message[2] = "* Today we are boxing and#  shipping goods out into the#  Underground!!!"
43
            position = 0
44
        }
45
        break
46
    case 9:
47
        cutscene_follower_into_actor()
48
        break
49
    case 10:
50
        cutscene_npc_walk(actor_follower, 360, actor_follower.y, 4, "y", "up", -4, 220, 730, 220, 680)
51
        break
52
    case 11:
53
        cutscene_dialogue()
54
        with (msg)
55
        {
56
            talker[0] = 1161
57
            message[0] = "* Uh, hello?"
58
            message[1] = "* Are you sentient or a#  pre-recording?"
59
            prt[0] = 381
60
            prt[1] = 370
61
        }
62
        break
63
    case 12:
64
        cutscene_dialogue_special("swirl", 65280)
65
        with (msg)
66
        {
67
            message[0] = "* Hello new hire!"
68
            message[1] = "* Yes, I am fully sentient!"
69
            message[2] = "* Trapped in this two-dimensional#  rectangle for all eternity!!!"
70
            position = 0
71
        }
72
        break
73
    case 13:
74
        cutscene_dialogue()
75
        with (msg)
76
        {
77
            talker[0] = 1161
78
            message[0] = "* Right..."
79
            message[1] = "* Can you unlock all the#  doors in this factory?"
80
            message[2] = "* We're in a hurry."
81
            prt[0] = 382
82
            prt[1] = 370
83
            prt[2] = 377
84
        }
85
        break
86
    case 14:
87
        cutscene_dialogue_special("swirl", 65280)
88
        with (msg)
89
        {
90
            message[0] = "* Sorry but each morning we do a#  little thing called:"
91
            message[1] = "* EARN! YOUR!! FREEDOM!!!"
92
            message[2] = "* Complete a full shipment and#  you'll be on your way!"
93
            if (message_current == 1)
94
                mode = "shake"
95
            else if (message_current == 2)
96
                mode = "swirl"
97
            position = 0
98
        }
99
        break
100
    case 15:
101
        cutscene_dialogue()
102
        with (msg)
103
        {
104
            talker[0] = 1161
105
            message[0] = "* What kind of policy is#  that???"
106
            prt[0] = 368
107
        }
108
        break
109
    case 16:
110
        cutscene_dialogue_special("shake", 65280)
111
        with (msg)
112
        {
113
            message[0] = "* When there's a quota to meet,#  ethics go out the window!!"
114
            message[1] = "* Haven't you worked a job#  before???"
115
            if (message_current == 1)
116
                mode = "swirl"
117
            position = 0
118
        }
119
        break
120
    case 17:
121
        cutscene_dialogue()
122
        with (msg)
123
        {
124
            talker[0] = 1161
125
            message[0] = "* Of course but I don't#  work here!"
126
            prt[0] = 384
127
        }
128
        break
129
    case 18:
130
        cutscene_dialogue_special("shake", 65280)
131
        with (msg)
132
        {
133
            message[0] = "* So you're trespassing???"
134
            message[1] = "* In that case...  "
135
            if (message_current == 1)
136
            {
137
                skippable = false
138
                if can_skip
139
                {
140
                    global.dialogue_open = false
141
                    instance_destroy()
142
                    other.scene++
143
                }
144
            }
145
            position = 0
146
        }
147
        break
148
    case 19:
149
        cutscene_dialogue()
150
        with (msg)
151
        {
152
            talker[0] = 1161
153
            message[0] = "* Fine, we'll do the job!"
154
            message[1] = "* Clover, this bot might#  have connections to#  Axis."
155
            message[2] = "* Seems we gotta do what#  it says to avoid#  unwanted attention."
156
            message[3] = "* You can work this thing#  right?"
157
            message[4] = "* Push the start button#  and we'll get it over#  with."
158
            prt[0] = 377
159
            prt[1] = 370
160
            prt[2] = 377
161
            prt[3] = 370
162
            prt[4] = 370
163
            if (message_current == 1)
164
                obj_ceroba_npc.npc_direction = "right"
165
        }
166
        break
167
    case 20:
168
        cutscene_npc_direction(obj_ceroba_npc, "up")
169
        break
170
    case 21:
171
        cutscene_wait(0.5)
172
        break
173
    case 22:
174
        cutscene_sfx_play(snd_beep, 1)
175
        break
176
    case 23:
177
        cutscene_wait(0.5)
178
        break
179
    case 24:
180
        cutscene_instance_create(0, 0, obj_factory_02_conveyor_puzzle)
181
        break
182
    case 25:
183
        obj_factory_02_conveyor_puzzle.conveyor_spawn_item = true
184
        obj_conveyor_belt.image_speed = 1
185
        cutscene_advance()
186
        break
187
    case 26:
188
        if (!instance_exists(obj_factory_02_conveyor_item))
189
        {
190
            audio_sound_gain(cutscene_music, 0, 150)
191
            cutscene_wait(1)
192
        }
193
        break
194
    case 27:
195
        cutscene_wait(1)
196
        break
197
    case 28:
198
        obj_conveyor_belt.image_speed = 0
199
        obj_conveyor_belt.image_index = 0
200
        cutscene_dialogue_special("shake", 65280)
201
        with (msg)
202
        {
203
            message[0] = "* WHAT ARE YOU DOING???"
204
            message[1] = "* Put red items in red boxes and#  blue in blue boxes!"
205
            message[2] = "* Three strikes and yoooou're#  out!!!"
206
            if (message_current == 1)
207
                mode = "swirl"
208
            position = 0
209
        }
210
        break
211
    case 29:
212
        cutscene_dialogue()
213
        with (msg)
214
        {
215
            talker[0] = 1161
216
            message[0] = "* Your machine's broken."
217
            message[1] = "* The second conveyor#  belt doesn't move."
218
            prt[0] = 377
219
            prt[1] = 371
220
        }
221
        break
222
    case 30:
223
        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 }
(cutscene_music, 500)
224
        cutscene_advance()
225
        break
226
    case 31:
227
        cutscene_wait(1.5)
228
        break
229
    case 32:
230
        cutscene_dialogue_special("default", 65280)
231
        with (msg)
232
        {
233
            message[0] = "* No."
234
            position = 0
235
        }
236
        break
237
    case 33:
238
        cutscene_dialogue()
239
        with (msg)
240
        {
241
            talker[0] = 1161
242
            message[0] = "* ...Yes?"
243
            message[1] = "* It's broke-"
244
            prt[0] = 371
245
            prt[1] = 377
246
            if (message_current == 1)
247
            {
248
                skippable = false
249
                if (cutoff >= string_length(message[message_current]))
250
                {
251
                    global.dialogue_open = false
252
                    instance_destroy()
253
                    other.scene++
254
                }
255
            }
256
        }
257
        break
258
    case 34:
259
        cutscene_dialogue_special("default", 65280)
260
        with (msg)
261
        {
262
            message[0] = "* No."
263
            position = 0
264
        }
265
        break
266
    case 35:
267
        cutscene_dialogue()
268
        with (msg)
269
        {
270
            talker[0] = 1161
271
            message[0] = "* ..."
272
            message[1] = "* Screw this."
273
            prt[0] = 384
274
            prt[1] = 384
275
        }
276
        break
277
    case 36:
278
        cutscene_npc_walk(actor_follower, 220, 645, 3, "x", "up")
279
        break
280
    case 37:
281
        cutscene_wait(0.25)
282
        break
283
    case 38:
284
        obj_ceroba_npc.action_sprite = true
285
        obj_ceroba_npc.sprite_index = spr_ceroba_up_run
286
        obj_ceroba_npc.image_index = 0
287
        obj_ceroba_npc.image_speed = 0
288
        cutscene_sfx_play(snd_playerjump, 1)
289
        break
290
    case 39:
291
        obj_ceroba_npc.vspeed = -5
292
        obj_ceroba_npc.y += obj_ceroba_npc.vspeed
293
        if (obj_ceroba_npc.y < 590)
294
            scene++
295
        break
296
    case 40:
297
        obj_ceroba_npc.vspeed = 2
298
        obj_ceroba_npc.y += obj_ceroba_npc.vspeed
299
        if (obj_ceroba_npc.y > 603)
300
            scene++
301
        break
302
    case 41:
303
        obj_ceroba_npc.vspeed = 0
304
        obj_ceroba_npc.action_sprite = false
305
        obj_ceroba_npc.npc_direction = "up"
306
        scr_screenshake
scr_screenshake

function scr_screenshake(argument0, argument1) //gml_Script_scr_screenshake { if instance_exists(obj_screenshake_player) return; with (instance_create(__view_get((9 << 0), 0).x, __view_get((9 << 0), 0).y, obj_screenshake_player)) { alarm[0] intensity = argument1 } }
(1, 1)
307
        cutscene_sfx_play(snd_undertale_thud, 1)
308
        break
309
    case 42:
310
        cutscene_wait(1)
311
        break
312
    case 43:
313
        cutscene_npc_direction(obj_ceroba_npc, "down")
314
        break
315
    case 44:
316
        cutscene_dialogue()
317
        with (msg)
318
        {
319
            talker[0] = 1161
320
            message[0] = "* Clover, you box the#  goods and I'll toss 'em#  into the chute."
321
            message[1] = "* Teamwork, right? "
322
            message[2] = "* Something like that."
323
            message[3] = "* Let's give it a shot!"
324
            prt[0] = 370
325
            prt[1] = 377
326
            prt[2] = 371
327
            prt[3] = 370
328
        }
329
        break
330
    case 45:
331
        obj_ceroba_npc.npc_direction = "right"
332
        cutscene_wait(1)
333
        break
334
    case 46:
335
        cutscene_music_start(218, 100)
336
        obj_factory_02_conveyor_puzzle.conveyor_puzzle_activate = true
337
        break
338
    case 47:
339
        break
340
    case 48:
341
        cutscene_wait(0.5)
342
        break
343
    case 49:
344
        cutscene_camera_move(640, 570, 3)
345
        break
346
    case 50:
347
        with (obj_steamworks_factory_02_door)
348
        {
349
            image_speed = 0.5
350
            image_index = 0
351
        }
352
        audio_play_sound(snd_rumble, 1, 1)
353
        cutscene_advance()
354
        break
355
    case 51:
356
        if (obj_steamworks_factory_02_door.image_index >= (obj_steamworks_factory_02_door.image_number - 1))
357
        {
358
            obj_steamworks_factory_02_door.image_index = obj_steamworks_factory_02_door.image_number - 1
359
            obj_steamworks_factory_02_door.image_speed = 0
360
            obj_steamworks_factory_02_door.solid = false
361
            audio_stop_sound(snd_rumble)
362
            audio_play_sound(snd_mart_impact_3, 1, 0)
363
            cutscene_advance()
364
        }
365
        break
366
    case 52:
367
        cutscene_screenshake(0.5, 2)
368
        break
369
    case 53:
370
        cutscene_wait(1)
371
        break
372
    case 54:
373
        cutscene_dialogue()
374
        with (msg)
375
        {
376
            talker[0] = 1161
377
            message[0] = "* Hey alright! Good work,#  Clover!"
378
            message[1] = "* Onto whatever awaits us#  next..."
379
            prt[0] = 372
380
            prt[1] = 371
381
        }
382
        break
383
    case 55:
384
        cutscene_wait(0.5)
385
        break
386
    case 56:
387
        obj_ceroba_npc.x = obj_pl.x + 20
388
        obj_ceroba_npc.y = obj_pl.y
389
        obj_ceroba_npc.npc_direction = "left"
390
        cutscene_actor_into_follower()
391
        break
392
    case 57:
393
        draw_alpha += 0.1
394
        if (draw_alpha >= 1)
395
            cutscene_advance()
396
        break
397
    case 58:
398
        cutscene_wait(0.5)
399
        break
400
    case 59:
401
        instance_destroy(obj_camera)
402
        camera_set_view_target(view_camera[0], 1031)
403
        if (obj_steamworks_factory_02_face.sprite_index != spr_steamworks_38_face_talking)
404
        {
405
            obj_steamworks_factory_02_face.sprite_index = spr_steamworks_38_face_talking
406
            obj_steamworks_factory_02_face.image_index = 0
407
        }
408
        cutscene_advance()
409
        break
410
    case 60:
411
        draw_alpha -= 0.1
412
        if (draw_alpha <= 0)
413
            cutscene_advance()
414
        break
415
    case 61:
416
        cutscene_wait(0.5)
417
        break
418
    case 62:
419
        scr_radio_restart
scr_radio_restart

function scr_radio_restart() //gml_Script_scr_radio_restart { with (obj_radio) event_user(0) }
()
420
        audio_sound_gain(obj_radio.current_song, 1, 0)
421
        global.sworks_flag[36] = 1
422
        cutscene_end()
423
        break
424
    default:
425
426
}