Undertale script viewer

← back to main script listing

gml_Object_obj_bed_watcher_Draw_0

(view raw script w/o annotations or w/e)
1
draw_sprite(sprite_index, image_index, x, y);
2
if (keyboard_check_pressed(vk_left) || control_check_pressed(0) || control_check_pressed(1))
3
{
4
    if (con > 7 && con < 30)
5
        con = 30;
6
}
7
if (con == 5)
8
{
9
    depth = 100000;
10
    limbx = 0;
11
    limby = 0;
12
    global.phasing = 1;
13
    global.interact = 1;
14
    siner = 0;
15
    con = 6;
16
    alarm[4] = 20;
17
    xx = x + 16;
18
    yy = y + 11;
19
    getx = obj_mainchara.x;
20
    gety = obj_mainchara.y;
21
    tox = (xx - getx) / 20;
22
    toy = (yy - gety) / 20;
23
    ivol = caster_get_volume(global.currentsong);
24
    vol = ivol;
25
}
26
if (con == 6)
27
{
28
    vol -= 0.05;
29
    caster_set_volume(global.currentsong, vol);
30
    global.interact = 1;
31
    global.facing = 1;
32
    obj_mainchara.image_index += 0.25;
33
    obj_mainchara.x += tox;
34
    obj_mainchara.y += toy;
35
}
36
if (con == 7)
37
{
38
    caster_pause(global.currentsong);
39
    obj_mainchara.image_index = 0;
40
    obj_mainchara.x = floor(obj_mainchara.x);
41
    obj_mainchara.y = floor(obj_mainchara.y);
42
    con = 8;
43
    alarm[4] = 150;
44
    alarm[4] = 150;
45
}
46
if (con == 9)
47
{
48
    con = 10;
49
    win = 1;
50
    alarm[4] = 100;
51
    alarm[4] = 100;
52
}
53
if (con == 11)
54
{
55
    con = 12;
56
    alarm[4] = 340;
57
}
58
if (con == 12)
59
{
60
    limbx += 0.1;
61
    limby = sin(limbx / 4) * 2;
62
}
63
if (con == 13)
64
{
65
    con = 13.1;
66
    alarm[4] = 70;
67
}
68
if (con == 14.1)
69
{
70
    con = 14;
71
    alarm[4] = 20;
72
}
73
if (con == 14)
74
    limby += 1;
75
if (con == 15)
76
{
77
    con = 16;
78
    alarm[4] = 30;
79
}
80
if (con == 17)
81
{
82
    con = 18;
83
    alarm[4] = 8;
84
}
85
if (con == 18)
86
{
87
    tuck = 1;
88
    limby -= 3;
89
}
90
if (con == 19)
91
{
92
    siner = 0;
93
    con = 20;
94
    alarm[4] = 30;
95
}
96
if (con == 21)
97
{
98
    con = 22;
99
    alarm[4] = 15;
100
}
101
if (con == 22)
102
{
103
    limbx += 1;
104
    limby -= 0.8;
105
}
106
if (con == 23)
107
{
108
    con = 24;
109
    alarm[4] = 20;
110
}
111
if (con == 25)
112
{
113
    con = 26;
114
    alarm[4] = 40;
115
}
116
if (con == 26 || con == 27 || con == 28)
117
{
118
    siner += 1;
119
    limby += (sin(siner / 3) / 1.5);
120
}
121
if (con == 27)
122
{
123
    win = 0;
124
    con = 28;
125
}
126
if (con == 30)
127
{
128
    caster_resume(global.currentsong);
129
    depth = 100000;
130
    win = 0;
131
    tuck = 2;
132
    global.facing = 3;
133
    obj_mainchara.image_speed = 0.25;
134
    obj_mainchara.hspeed = -3;
135
    alarm[4] = 13;
136
    con = 31;
137
}
138
if (con == 31)
139
{
140
    if (vol < ivol)
141
        vol += 0.08;
142
    else
143
        vol = ivol;
144
    caster_set_volume(global.currentsong, vol);
145
}
146
if (con == 32)
147
{
148
    scr_depth
scr_depth

depth = 50000 - ((y * 10) + (sprite_height * 10));
();
149
    obj_mainchara.image_speed = 0;
150
    global.facing = 0;
151
    obj_mainchara.hspeed = 0;
152
    with (obj_mainchara)
153
        uncan = 0;
154
    global.interact = 0;
155
    global.phasing = 0;
156
    con = 0;
157
}
158
if (bedy < 30)
159
{
160
    depth = 100;
161
    draw_sprite_ext(obj_mainchara.sprite_index, 0, obj_mainchara.x, obj_mainchara.y, 1, 1, 0, obj_mainchara.image_blend, 1);
162
}
163
if (tuck == 1)
164
{
165
    bedy -= 4;
166
    if (bedy <= 4)
167
        bedy = 4;
168
}
169
if (tuck == 2)
170
{
171
    win = 0;
172
    bedy += 4;
173
    if (bedy >= 30)
174
    {
175
        bedy = 30;
176
        depth = 100000;
177
        draw_sprite_ext(obj_mainchara.sprite_index, 0, obj_mainchara.x, obj_mainchara.y, 1, 1, 0, obj_mainchara.image_blend, 1);
178
        tuck = 0;
179
    }
180
}
181
if (win == 1)
182
{
183
    if (walpha < 1)
184
        walpha += 0.02;
185
}
186
else if (walpha > 0)
187
{
188
    walpha -= 0.1;
189
}
190
draw_sprite_part(spr_bed_dark_sheet, 0, 0, 0, 46, 39 - bedy, x + 2, y + 13 + bedy);
191
draw_sprite_ext(spr_watchingman, 0, x - 20, y - 15, 1, 1, 0, c_white, walpha);
192
draw_sprite_part_ext(spr_watchingman_limb, 0, 50 - limbx, 0, limbx, 20, x - 14, y + 20 + limby, 1, 1, c_white, walpha);