Deltarune (Chapter 5) script viewer

← back to main script listing

gml_Object_obj_ch5_LW07_thrashfit_sprite_Draw_0

(view raw script w/o annotations or w/e)
1
if (!_enabled)
2
    exit;
3
if (!sprite_exists(_sprite))
4
{
5
    if (!surface_exists(_surface))
6
        _surface = surface_create(camera_get_view_width(0), camera_get_view_height(0));
7
    surface_set_target(_surface);
8
    draw_clear_alpha(c_black, 0);
9
    draw_set_color(c_white);
10
    draw_sprite(_shoes_sprite, global.flag[UnknownEnum.Value_1425], 0, 0);
11
    draw_sprite(spr_susie_outfit_pants, global.flag[UnknownEnum.Value_1423], 0, 0);
12
    draw_sprite(_shirt_sprite, global.flag[UnknownEnum.Value_1422], 0, 0);
13
    draw_sprite(_hair_sprite, global.flag[UnknownEnum.Value_1421], 0, 0);
14
    surface_reset_target();
15
    _sprite = sprite_create_from_surface(_surface, 0, 0, sprite_get_width(spr_susie_outfit_feet_preview), sprite_get_height(spr_susie_outfit_feet_preview), false, true, 0, 0);
16
    sprite_set_offset(_sprite, sprite_get_width(_sprite) / 2, 0);
17
    if (global.flag[UnknownEnum.Value_1424] > 0)
18
    {
19
        surface_set_target(_surface);
20
        draw_clear_alpha(c_black, 0);
21
        draw_set_color(c_white);
22
        draw_sprite(spr_susie_outfit_accessory, global.flag[UnknownEnum.Value_1424], 0, 5);
23
        surface_reset_target();
24
        _sprite_hat = sprite_create_from_surface(_surface, 0, 0, sprite_get_width(spr_susie_outfit_accessory), sprite_get_height(spr_susie_outfit_accessory), false, true, 0, 0);
25
        sprite_set_offset(_sprite_hat, sprite_get_width(_sprite_hat) / 2, 5);
26
    }
27
    surface_free(_surface);
28
}
29
else if (_print_mode)
30
{
31
    gpu_set_blendenable(false);
32
    gpu_set_colorwriteenable(false, false, false, true);
33
    draw_set_alpha(0);
34
    d_rectangle(x - 20, y - 100, x + 40, y + 8, 0);
35
    draw_set_alpha(1);
36
    gpu_set_blendenable(true);
37
    gpu_set_colorwriteenable(true, true, true, true);
38
    gpu_set_blendmode_ext(bm_dest_alpha, bm_inv_dest_alpha);
39
    gpu_set_alphatestenable(true);
40
    draw_sprite_ext(_sprite, 0, x, _y_pos, _x_scale, 2, 0, c_white, 1);
41
    if (_hat_enabled)
42
    {
43
        if (_sprite_hat != -4)
44
            draw_sprite_ext(_sprite_hat, 0, x, _y_pos, _x_scale, 2, 0, c_white, 1);
45
    }
46
    gpu_set_alphatestenable(false);
47
    gpu_set_blendmode(bm_normal);
48
}
49
else
50
{
51
    draw_sprite_ext(_sprite, 0, x, y, _x_scale, 2, 0, c_white, 1);
52
    if (_hat_enabled)
53
    {
54
        if (_sprite_hat != -4)
55
            draw_sprite_ext(_sprite_hat, 0, x, y, _x_scale, 2, 0, c_white, 1);
56
    }
57
    if (_flash_mode)
58
    {
59
        d3d_set_fog(true, c_white, 0, 1);
60
        draw_sprite_ext(_sprite, 0, x, y, _x_scale, 2, 0, c_white, _flash_alpha);
61
        if (_hat_enabled)
62
        {
63
            if (_sprite_hat != -4)
64
                draw_sprite_ext(_sprite_hat, 0, x, y, _x_scale, 2, 0, c_white, _flash_alpha);
65
        }
66
        d3d_set_fog(false, c_black, 0, 0);
67
    }
68
}
69
70
enum UnknownEnum
71
{
72
    Value_1421 = 1421,
73
    Value_1422,
74
    Value_1423,
75
    Value_1424,
76
    Value_1425
77
}