Deltarune (Chapter 4) script viewer

← back to main script listing

gml_Object_obj_ch4_PDC14A_noelle_desaturate_Step_0

(view raw script w/o annotations or w/e)
1
if (con < 0)
2
    exit;
3
if (con == 0)
4
{
5
    con = 1;
6
    alarm[0]
 = 1;
gml_Object_obj_ch4_PDC14A_noelle_desaturate_Alarm_0.gml

con++;
7
    var marker_index = 0;
8
    for (var i = 0; i < instance_number(obj_marker); i++)
9
    {
10
        var marker = instance_find(obj_marker, i);
11
        if (marker.visible == 1)
12
        {
13
            var is_exception = false;
14
            for (var j = 0; j < array_length_1d(marker_exceptions); j++)
15
            {
16
                if (marker.sprite_index == marker_exceptions[j])
17
                {
18
                    is_exception = true;
19
                    break;
20
                }
21
            }
22
            if (is_exception)
23
            {
24
                continue;
25
            }
26
            else
27
            {
28
                marker_objects[marker_index] = marker;
29
                marker_index++;
30
            }
31
        }
32
    }
33
    marker_objects = 
scr_sort_by_depth
scr_sort_by_depth

function
scr_sort_by_depth(arg0, arg1)
{ if (arg1) { array_sort(arg0, function(arg0, arg1) { return arg0.depth - arg1.depth; }); } else { array_sort(arg0, function(arg0, arg1) { return arg1.depth - arg0.depth; }); } return arg0; } function scr_sort_by_depth_old(arg0, arg1) { var _array = arg0; var _ascending = arg1; var _array_length = array_length(arg0); var _loopStart = 1; var _depth_array; for (i = 0; i < _array_length; i++) _depth_array[i] = _array[i].depth; var _tempValue = 0; var _loopAgain = true; while (_loopAgain == true) { _loopAgain = false; for (i = _loopStart; i < _array_length; i++) { if (i == _loopStart) _loopStart = _array_length - 1; if (_depth_array[i] == _depth_array[i - 1]) { if (_ascending == (real(_array[i].id) > real(_array[i - 1].id))) continue; } if (_ascending == (_depth_array[i] < _depth_array[i - 1]) || _depth_array[i] == _depth_array[i - 1]) { _loopAgain = true; _tempValue = _depth_array[i - 1]; _depth_array[i - 1] = _depth_array[i]; _depth_array[i] = _tempValue; _tempValue = _array[i - 1]; _loopStart = min(_loopStart, max(i - 1, 1)); _array[i - 1] = _array[i]; _array[i] = _tempValue; } } } return _array; }
(marker_objects, false);
34
    marker_index = 0;
35
    var snowflake_index = 0;
36
    for (var i = 0; i < array_length_1d(marker_objects); i++)
37
    {
38
        var marker = marker_objects[i];
39
        if (marker.y == 60)
40
        {
41
            snowflakes[snowflake_index] = marker;
42
            snowflake_index++;
43
        }
44
        else
45
        {
46
            marker_sprites[marker_index][0] = marker.sprite_index;
47
            marker_sprites[marker_index][1] = marker.image_index;
48
            marker_sprites[marker_index][2] = new Vector2(marker.x, marker.y);
49
            marker_sprites[marker_index][3] = marker.image_speed;
50
            marker_sprites[marker_index][4] = marker.image_alpha;
51
            marker_sprites[marker_index][5] = marker.image_blend;
52
            marker_index++;
53
        }
54
    }
55
}
56
if (con == 2)
57
{
58
    con = 3;
59
    for (var i = 0; i < array_length_1d(marker_objects); i++)
60
        marker_objects[i].visible = 0;
61
}
62
if (snowflakes_start)
63
{
64
    snowflakes_start = false;
65
    for (var i = 0; i < array_length_1d(snowflakes); i++)
66
    {
67
        var target_speed = choose(0.25, 0.3) + choose(-0.03, -0.02, -0.01, 0);
68
        var target_time = 60 + choose(-5, -2, 2, 5);
69
        with (snowflakes[i])
70
            
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("image_speed", 0, target_speed, target_time);
71
    }
72
}
73
if (snowflakes_stop)
74
{
75
    snowflakes_stop = false;
76
    for (var i = 0; i < array_length_1d(snowflakes); i++)
77
    {
78
        var target_speed = choose(0.03, 0.04, 0.05, 0.07);
79
        var target_time = 60 + choose(-5, -2, 2, 5);
80
        with (snowflakes[i])
81
            
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("image_speed", image_speed, target_speed, target_time);
82
    }
83
}
84
if (snowflakes_stop_fast)
85
{
86
    snowflakes_stop_fast = false;
87
    for (var i = 0; i < array_length_1d(snowflakes); i++)
88
    {
89
        with (snowflakes[i])
90
            image_speed = 0;
91
    }
92
}
93
if (con == 10)
94
{
95
    con = 11;
96
    alarm[0]
 = 31;
gml_Object_obj_ch4_PDC14A_noelle_desaturate_Alarm_0.gml

con++;
97
    
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("palette_index", 1, 0, 30);
98
}
99
if (con == 12)
100
{
101
    con = -1;
102
    for (var i = 0; i < array_length_1d(marker_objects); i++)
103
        marker_objects[i].visible = 1;
104
}