Deltarune (Chapter 2) script viewer

← back to main script listing

gml_Object_obj_spritecomparer_Draw_0

(view raw script w/o annotations or w/e)
1
for (i = 0; i < 3; i++)
2
{
3
    xx[i] = sprite_get_xoffset(mysprite[i]);
4
    yy[i] = sprite_get_yoffset(mysprite[i]);
5
}
6
if (keyboard_check_pressed(ord("4")))
7
{
8
    checkstring = get_string("Enter sprite_index of first sprite, OR enemy name from the object", "");
9
    if (sprite_exists(asset_get_index("spr_" + checkstring + "_idle")))
10
    {
11
        sprite[0] = asset_get_index("spr_" + checkstring + "_idle");
12
        sprite[1] = asset_get_index("spr_" + checkstring + "_hurt");
13
        sprite[2] = asset_get_index("spr_" + checkstring + "_spared");
14
    }
15
    else if (sprite_exists(asset_get_index(checkstring)))
16
    {
17
        sprite[0] = asset_get_index(checkstring);
18
    }
19
    event_user(0);
20
}
21
if (keyboard_check_pressed(ord("5")))
22
{
23
    checksprite = asset_get_index(get_string("Enter sprite_index of second sprite.", ""));
24
    if (checksprite != -1)
25
        sprite[1] = checksprite;
26
    event_user(0);
27
}
28
if (keyboard_check_pressed(ord("6")))
29
{
30
    checksprite = asset_get_index(get_string("Enter sprite_index of third sprite.", ""));
31
    if (checksprite != -1)
32
        sprite[2] = checksprite;
33
    event_user(0);
34
}
35
draw_sprite_ext(mysprite[0], image_index, x - 120, y, image_xscale, image_yscale, image_angle, image_blend, 1);
36
draw_sprite_ext(mysprite[1], image_index, x + 120, y, image_xscale, image_yscale, image_angle, image_blend, 1);
37
draw_sprite_ext(mysprite[2], image_index, x + 120, y + 120, image_xscale, image_yscale, image_angle, image_blend, 1);
38
if (!keyboard_check(ord("7")))
39
    draw_sprite_ext(mysprite[0], image_index, x, y, image_xscale, image_yscale, image_angle, image_blend, 1);
40
if (!keyboard_check(ord("8")) && !hitbox_mode)
41
    draw_sprite_ext(mysprite[1], image_index, x, y, image_xscale, image_yscale, image_angle, image_blend, 1);
42
if (!keyboard_check(ord("9")) && !hitbox_mode)
43
    draw_sprite_ext(mysprite[2], image_index, x, y, image_xscale, image_yscale, image_angle, image_blend, 1);
44
if (keyboard_check_pressed(ord("H")))
45
{
46
    if (hitbox_mode == 0)
47
        hitbox_mode = 1;
48
    else
49
        hitbox_mode = 0;
50
}
51
ii = 3;
52
if (hitbox_mode)
53
    ii = 1;
54
var bboxl = sprite_get_bbox_left(mysprite[0]);
55
var bboxu = sprite_get_bbox_top(mysprite[0]);
56
var bboxr = sprite_get_bbox_right(mysprite[0]);
57
var bboxd = sprite_get_bbox_bottom(mysprite[0]);
58
draw_set_font(fnt_mainbig);
59
for (i = 0; i < ii; i++)
60
{
61
    if (i == 0)
62
        draw_set_color(c_yellow);
63
    if (i == 1)
64
        draw_set_color(c_red);
65
    draw_rectangle((x + (xx[i] * 2)) - 1, (y + (yy[i] * 2)) - 1, x + (xx[i] * 2) + 1, y + (yy[i] * 2) + 1, false);
66
    if (i == 0)
67
        draw_rectangle((x + (xx[i] * 2)) - 121, (y + (yy[i] * 2)) - 1, (x + (xx[i] * 2)) - 119, y + (yy[i] * 2) + 1, false);
68
    if (i == 1)
69
        draw_rectangle(x + (xx[i] * 2) + 119, (y + (yy[i] * 2)) - 1, x + (xx[i] * 2) + 121, y + (yy[i] * 2) + 1, false);
70
    draw_text(0, i * 20, string(xx[i]) + ", " + string(yy[i]));
71
    var height = sprite_get_height(mysprite[i]);
72
    var width = sprite_get_height(mysprite[i]);
73
    draw_set_color(c_blue);
74
    draw_rectangle(x - (xx[i] * 2), y - (yy[i] * 2), (x + (width * image_xscale)) - (xx[i] * 2), (y + (height * image_xscale)) - (yy[i] * 2), true);
75
    if (hitbox_mode)
76
    {
77
        var ix = image_xscale;
78
        var iy = image_yscale;
79
        draw_set_color(c_red);
80
        draw_set_alpha(0.5);
81
        draw_rectangle(x + (bboxl * ix), y + (bboxu * iy), x + (bboxr * ix), y + (bboxd * iy), false);
82
        draw_set_alpha(1);
83
    }
84
}
85
if (keyboard_check_pressed(ord("1")))
86
    s = 0;
87
if (keyboard_check_pressed(ord("2")))
88
    s = 1;
89
if (keyboard_check_pressed(ord("3")))
90
    s = 2;
91
var m = 5;
92
if (keyboard_check(vk_down))
93
{
94
    movetimer++;
95
    go = 0;
96
    if (movetimer >= m)
97
        go = 1;
98
    if (go && !hitbox_mode)
99
        sprite_set_offset(mysprite[s], xx[s], yy[s] - 1);
100
}
101
if (keyboard_check(vk_up))
102
{
103
    movetimer++;
104
    go = 0;
105
    if (movetimer >= m)
106
        go = 1;
107
    if (go && !hitbox_mode)
108
        sprite_set_offset(mysprite[s], xx[s], yy[s] + 1);
109
}
110
if (keyboard_check(vk_left))
111
{
112
    movetimer++;
113
    go = 0;
114
    if (movetimer >= m)
115
        go = 1;
116
    if (go && !hitbox_mode)
117
        sprite_set_offset(mysprite[s], xx[s] + 1, yy[s]);
118
}
119
if (keyboard_check(vk_right))
120
{
121
    movetimer++;
122
    go = 0;
123
    if (movetimer >= m)
124
        go = 1;
125
    if (go && !hitbox_mode)
126
        sprite_set_offset(mysprite[s], xx[s] - 1, yy[s]);
127
}
128
if (hitbox_mode)
129
{
130
    if (keyboard_check(vk_right))
131
        bboxr++;
132
    if (keyboard_check(vk_left))
133
        bboxr--;
134
    sprite_set_bbox(mysprite[0], bboxl, bboxu, bboxr, bboxd);
135
}
136
if (keyboard_check_pressed(ord("S")))
137
{
138
    snd_play(snd_save);
139
    sprite_set_bbox(sprite[0], bboxl, bboxu, bboxr, bboxd);
140
    for (i = 0; i < 3; i++)
141
        sprite_set_offset(sprite[i], xx[i], yy[i]);
142
}
143
draw_set_color(c_white);
144
draw_text(20, 280, "1 or 2 or 3:select sprite to move\nPress 4 or 5 or 6:Change sprite\nPress 7 or 8 or 9: Visibility toggle\nArrows: Adjust.\nH: Edit hitbox of Sprite1\nS: Save changes (this play session only)");
145
if (keyboard_check(ord("R")))
146
    room_restart();
147
if (keyboard_check(vk_enter))
148
    instance_create(x, y, obj_noellevictory_example);
149
if (keyboard_check_pressed(vk_insert))
150
    room_goto_next();