Undertale script viewer

← back to main script listing

gml_Object_obj_maddum_drawer_Draw_0

(view raw script w/o annotations or w/e)
1
if (mode == 0)
2
{
3
    rotter += 1;
4
    rotter += (speedmod / 2);
5
    rot = sin(rotter / 6) * 30;
6
    rot *= rotmod;
7
    draw_sprite_ext(spr_maddum_base, image_index, x + 5, y + 75, 2, 2, -rot, c_white, 1);
8
    draw_sprite_ext(spr_maddum_torso, image_index, x, y + 35 + (rot / 4), 2, 2, rot / 2, c_white, 1);
9
    draw_sprite_ext(spr_maddum_leg, image_index, x + 5, y + 65, 2, 2, rot / 3, c_white, 1);
10
    draw_sprite_ext(spr_maddum_head, global.faceemotion, x - (rot / 3), y + (rot / 3), 2, 2, rot, c_white, 1);
11
}
12
else
13
{
14
    draw_sprite_ext(spr_maddum_base, image_index, x + partx[0], y + party[0], 2, 2, partrot[0], c_white, 1);
15
    draw_sprite_ext(spr_maddum_torso, image_index, x + partx[1], y + party[1], 2, 2, partrot[1], c_white, 1);
16
    draw_sprite_ext(spr_maddum_leg, image_index, x + partx[2], y + party[2], 2, 2, partrot[2], c_white, 1);
17
    draw_sprite_ext(spr_maddum_head, global.faceemotion, x + partx[3], y + party[3], 2, 2, partrot[3], c_white, 1);
18
}
19
if (mode == 1)
20
{
21
    check = 1;
22
    fakegrav += 0.5;
23
    for (i = 0; i < 4; i += 1)
24
    {
25
        go[i] = 1;
26
        if ((party[i] + y) < (global.idealborder[2] - 25))
27
        {
28
            party[i] += fakegrav;
29
        }
30
        else
31
        {
32
            party[i] = global.idealborder[2] - 20 - y;
33
            check += 1;
34
            go[i] = 0;
35
        }
36
    }
37
    if (go[0] == 1)
38
    {
39
        partx[0] += 2;
40
        partrot[0] += 2;
41
    }
42
    if (go[1] == 1)
43
    {
44
        partx[1] += 4;
45
        partrot[1] += 5;
46
    }
47
    if (go[2] == 1)
48
    {
49
        partx[2] -= 1;
50
        partrot[2] -= 3;
51
    }
52
    if (go[3] == 1)
53
    {
54
        partx[3] -= 3;
55
        partrot[3] -= 9;
56
    }
57
    if (check == 4)
58
        mode = 3;
59
}
60
if (mode == 2)
61
{
62
    dingus += 1;
63
    for (i = 0; i < 4; i += 1)
64
    {
65
        partx[i] -= (partx[i] - opartx[i]) / 4;
66
        party[i] -= (party[i] - oparty[i]) / 4;
67
        partrot[i] -= (partrot[i] - opartrot[i]) / 4;
68
    }
69
    if (dingus > 20)
70
    {
71
        dingus = 0;
72
        mode = 0;
73
        check = 0;
74
    }
75
}