Deltarune script viewer

← back to main script listing

gml_Object_obj_fireworks_manager_Step_0

(view raw script w/o annotations or w/e)
1
if (is_active)
2
{
3
    time += 1;
4
    var spawn = (time % 60) == 0;
5
    var _y = room_height * 0.5;
6
    var _x = current_time % room_width;
7
    if (global.chapter == 2)
8
    {
9
        if (room == room_dw_cyber_post_music_boss_slide)
10
        {
11
            if (obj_mainchara.x <= 2320 && obj_mainchara.x > 1080)
12
            {
13
                if (i_ex(obj_cyber_shadowMaker_fireworks))
14
                {
15
                    if (!obj_cyber_shadowMaker_fireworks.is_active)
16
                        obj_cyber_shadowMaker_fireworks.is_active = true;
17
                }
18
                spawn = (time % 40) == 0;
19
                _y = room_height - 220;
20
                _x = (obj_mainchara.x - 200) + random(100);
21
            }
22
            else
23
            {
24
                if (i_ex(obj_cyber_shadowMaker_fireworks))
25
                {
26
                    if (obj_cyber_shadowMaker_fireworks.is_active)
27
                    {
28
                        obj_cyber_shadowMaker_fireworks.is_active = false;
29
                        obj_cyber_shadowMaker_fireworks.inactive_cleanup = true;
30
                    }
31
                }
32
                spawn = -1;
33
            }
34
        }
35
        if (room == room_dw_city_postbaseball_1 || room == room_dw_city_postbaseball_2)
36
        {
37
            spawn = (time % 50) == 40;
38
            _y = 800 - random(80);
39
            _x = max(1000, camerax() + random(640));
40
            if (_x > (room_width - 200))
41
                _x = room_width - 200;
42
            if (right_h())
43
                _x += 320;
44
            if (obj_mainchara.y <= 500)
45
                _y = 300 + random(40);
46
            if (room == room_dw_city_postbaseball_1)
47
            {
48
                if (obj_mainchara.x < 900)
49
                    spawn = 0;
50
                else
51
                    is_active = 1;
52
            }
53
            else
54
            {
55
                _y = 300;
56
                _x = camerax() + random(700) + 200;
57
            }
58
            if (global.interact != 0)
59
                spawn = 0;
60
        }
61
    }
62
    if (spawn)
63
    {
64
        var c = instance_create(_x, _y, obj_firework);
65
        c.mySprite = fireworksprite[fireworkcount];
66
        fireworkcount++;
67
        if (fireworkcount > 2)
68
            fireworkcount = 0;
69
        c.colorProfile = choose(UnknownEnum.Value_0, UnknownEnum.Value_2, UnknownEnum.Value_1);
70
        if (c.colorProfile == UnknownEnum.Value_1)
71
            c.image_blend = make_colour_hsv(irandom(255), 100, 255);
72
    }
73
}
74
75
enum UnknownEnum
76
{
77
    Value_0,
78
    Value_1,
79
    Value_2
80
}