Undertale Yellow script viewer

← back to main script listing

gml_GlobalScript___background_get_element

(view raw script w/o annotations or w/e)
1
function __background_get_element(arg0)
2
{
3
    var __bind = arg0;
4
    var __result;
5
    __result[0] = -1;
6
    __result[1] = -1;
7
    __result[2] = -1;
8
    var __fgstring = "Compatibility_Foreground_";
9
    var __bgstring = "Compatibility_Background_";
10
    var __fglen = string_length(__fgstring);
11
    var __bglen = string_length(__bgstring);
12
    var __layerlist = layer_get_all();
13
    var __layerlistlength = array_length_1d(__layerlist);
14
    var __layerid = -1;
15
    var __isforeground = false;
16
    for (var __i = 0; __i < __layerlistlength; __i++)
17
    {
18
        var __layername = layer_get_name(__layerlist[__i]);
19
        if (string_pos(__fgstring, __layername) > 0)
20
        {
21
            var __slotchr = string_char_at(__layername, __fglen + 1);
22
            if (__slotchr == "")
23
                continue;
24
            var __slot = real(__slotchr);
25
            if (__slot == __bind)
26
            {
27
                __layerid = __layerlist[__i];
28
                __isforeground = true;
29
                break;
30
            }
31
        }
32
        else if (string_pos(__bgstring, __layername) > 0)
33
        {
34
            var __slotchr = string_char_at(__layername, __bglen + 1);
35
            if (__slotchr == "")
36
            {
37
            }
38
            else
39
            {
40
                var __slot = real(__slotchr);
41
                if (__slot == __bind)
42
                {
43
                    __layerid = __layerlist[__i];
44
                    __isforeground = false;
45
                    break;
46
                }
47
            }
48
        }
49
    }
50
    if (__layerid != -1)
51
    {
52
        var __els = layer_get_all_elements(__layerid);
53
        var __elslength = array_length_1d(__els);
54
        for (var __i = 0; __i < __elslength; __i++)
55
        {
56
            if (layer_get_element_type(__els[__i]) == 1)
57
            {
58
                __result[0] = __els[__i];
59
                __result[1] = __layerid;
60
                __result[2] = __isforeground;
61
            }
62
        }
63
    }
64
    else
65
    {
66
        var __newback = __background_set_element(__bind, false, false, -1, 0, 0, true, true, 1, 1, false, 0, 0, 16777215, 1);
67
        __result[0] = __newback[0];
68
        __result[1] = __newback[1];
69
        __result[2] = false;
70
    }
71
    return __result;
72
}