Undertale Yellow script viewer

← back to main script listing

gml_Object_obj_flowey_flashback_room_final_controller_Step_0

(view raw script w/o annotations or w/e)
1
if (live_call())
2
    return global.live_result;
3
if (room == rm_battle_flashback_final)
4
{
5
    if (draw_alpha_white > 0)
6
    {
7
        draw_alpha_white -= 0.05;
8
        exit;
9
    }
10
    else if (instance_exists(obj_flowey_battle_ow_controller))
11
    {
12
        obj_flowey_battle_ow_controller.spawn_vines = true;
13
    }
14
    if (obj_pl.x >= layer_remove_x_next)
15
    {
16
        layer_remove_x_next += layer_remove_x_inc;
17
        instance_create_depth(0, 0, -9999, obj_flowey_battle_screen_glitch);
18
        if (ds_list_size(layer_list) > 1)
19
        {
20
            layer_set_visible(ds_list_find_value(layer_list, 0), false);
21
            layer_set_visible(ds_list_find_value(layer_list, 1), true);
22
            ds_list_delete(layer_list, 0);
23
        }
24
        else
25
        {
26
            fade_out = true;
27
            layer_remove_x_next = 999999;
28
        }
29
    }
30
    if (fade_out == true)
31
    {
32
        draw_alpha += 0.016666666666666666;
33
        if (draw_alpha >= 2)
34
        {
35
            if (!instance_exists(obj_player_npc) && scene == 0)
36
            {
37
                scene++;
38
                var actor_clover = instance_create(obj_pl.x, obj_pl.y, obj_player_npc);
39
                with (actor_clover)
40
                {
41
                    action_sprite = true;
42
                    if (obj_pl.is_sprinting)
43
                    {
44
                        sprite_index = spr_pl_run_right;
45
                        image_speed = 0.3;
46
                    }
47
                    else
48
                    {
49
                        sprite_index = spr_pl_right;
50
                        image_speed = 0.2;
51
                    }
52
                }
53
            }
54
        }
55
    }
56
    if (obj_pl.x < 2496)
57
    {
58
        audio_sound_gain(global.battle_music, 1 - (obj_pl.x / 2496), 1);
59
    }
60
    else
61
    {
62
        audio_stop_sound(global.battle_music);
63
        obj_flowey_battle_ow_controller.spawn_vines = false;
64
        obj_flowey_battle_ow_controller.persistent = true;
65
    }
66
}
67
switch (scene)
68
{
69
    case 1:
70
        if (abs(175 - obj_player_npc.y) > 10)
71
            obj_player_npc.y += (sign(175 - obj_pl.y) * 3);
72
        cutscene_wait(2);
73
        break;
74
    case 2:
75
        var msg = instance_create_depth(0, 0, -999, obj_dialogue_flowey_distant);
76
        with (msg)
77
        {
78
            message[0] = "* Clover?";
79
            message[1] = "* Where did you go, buddy?";
80
            message[2] = "* Get b a c k   h   e    r     e ";
81
        }
82
        scene++;
83
        break;
84
    case 3:
85
        if (!global.dialogue_open)
86
            cutscene_advance();
87
        break;
88
    case 4:
89
        cutscene_wait(1);
90
        break;
91
    case 5:
92
        obj_player_npc.persistent = true;
93
        persistent = true;
94
        room = rm_battle_flashback_final_2;
95
        global.player_can_run = false;
96
        obj_player_npc.x = 160;
97
        obj_player_npc.action_sprite = false;
98
        draw_alpha = 0;
99
        fade_out = false;
100
        scene++;
101
        break;
102
    case 6:
103
        cutscene_npc_walk(1168, 800, obj_player_npc.y, 3, "x", "right");
104
        break;
105
    case 7:
106
        cutscene_wait(1);
107
        break;
108
    case 8:
109
        cutscene_camera_move(850, obj_player_npc.y, 1);
110
        break;
111
    case 9:
112
        cutscene_wait(1);
113
        break;
114
    case 10:
115
        instance_destroy(obj_flowey_1_controller_base);
116
        cutscene_end();
117
        break;
118
}