Deltarune (Chapter 3) script viewer

← back to main script listing

gml_Object_obj_board_dodgetile_Step_0

(view raw script w/o annotations or w/e)
1
if (tilecon == 1 && obj_mainchara_board.movingnow == 0)
2
{
3
    timer++;
4
    if (timer == 5)
5
        tilecon = 1.1;
6
}
7
if (tilecon == 1.1)
8
{
9
    wheel = instance_create(0, 0, obj_board_quizwheel);
10
    wheel.maxslices = wheelchoices;
11
    wheel.slicetext[0] = "SWEET";
12
    wheel.slicetext[1] = "SPICY";
13
    wheel.slicetext[2] = "MILD";
14
    wheel.slicetext[3] = "OOOO MOMMY~";
15
    wheel.daddy = id;
16
    tilecon = -1;
17
}
18
if (tilecon == 2)
19
{
20
    timer = 0;
21
    growtangle = instance_create(x + 16, y + 16, obj_growtangle);
22
    growtangle.maxxscale = 1.4;
23
    growtangle.maxyscale = 1.4;
24
    growtangle.depth = obj_mainchara_board.depth - 60;
25
    heart = instance_create(growtangle.x - 6, growtangle.y - 8, obj_heart);
26
    heart.sprite_index = spr_board_heart;
27
    heart.depth = obj_mainchara_board.depth - 80;
28
    tilecon = 2.1;
29
}
30
if (tilecon == 2.1)
31
{
32
    obj_grazebox.sprite_index = spr_board_grazeappear;
33
    obj_grazebox.sizexoff = -2;
34
    obj_grazebox.sizeyoff = -2;
35
    for (var i = 0; i < 5; i++)
36
    {
37
        var foundInst = 0;
38
        while (foundInst == 0)
39
        {
40
            var inst = instance_find(obj_board_enemy_parent_old, irandom(instance_number(obj_board_enemy_parent_old) - 1));
41
            with (inst)
42
            {
43
                var isonscreen = false;
44
                if (x >= 128 && x < 512 && y >= 64 && y < 320)
45
                    isonscreen = true;
46
                var tooclose = false;
47
                var toocloseobj = collision_rectangle(x - 64, y - 64, x + 96, y + 96, obj_mainchara_board, 0, 0);
48
                if (toocloseobj != -4)
49
                    tooclose = true;
50
                if (isonscreen && !tooclose)
51
                {
52
                    other.enemylist[i] = inst;
53
                    foundInst = 1;
54
                }
55
            }
56
        }
57
    }
58
    if (enemylist[0] == enemylist[1] || enemylist[0] == enemylist[2] || enemylist[0] == enemylist[3] || enemylist[0] == enemylist[4])
59
        enemylist[0] = 0;
60
    if (enemylist[1] == enemylist[0] || enemylist[1] == enemylist[2] || enemylist[1] == enemylist[3] || enemylist[1] == enemylist[4])
61
        enemylist[1] = 0;
62
    if (enemylist[2] == enemylist[1] || enemylist[2] == enemylist[0] || enemylist[2] == enemylist[3] || enemylist[2] == enemylist[4])
63
        enemylist[2] = 0;
64
    if (enemylist[3] == enemylist[1] || enemylist[3] == enemylist[2] || enemylist[3] == enemylist[0] || enemylist[3] == enemylist[4])
65
        enemylist[3] = 0;
66
    if (enemylist[4] == enemylist[1] || enemylist[4] == enemylist[2] || enemylist[4] == enemylist[3] || enemylist[4] == enemylist[0])
67
        enemylist[4] = 0;
68
    var enemyCount = 0;
69
    for (var i = 0; i < 5; i++)
70
    {
71
        if (enemylist[i] != 0)
72
            enemyCount++;
73
    }
74
    
scr_debug_print
scr_debug_print

function
scr_debug_print(arg0)
{ } function print_message(arg0) { } function debug_print(arg0) { } function scr_debug_clear_all() { }
("enemyCount=" + string(enemyCount));
75
    for (var i = 0; i < 5; i++)
76
    {
77
        if (enemylist[i] != 0)
78
        {
79
            with (enemylist[i])
80
                con = 1;
81
        }
82
    }
83
    if (enemyCount < 4)
84
        instance_create(x, y, obj_board_enemy_offscreenevent);
85
    tilecon = 3;
86
}
87
if (tilecon == 3)
88
{
89
    image_alpha = lerp(image_alpha, 0, 0.1);
90
    timer++;
91
    if (timer == 120)
92
    {
93
        growtangle.growcon = 3;
94
        tilecon = 4;
95
    }
96
}
97
if (tilecon == 4)
98
{
99
    with (obj_board_enemy_parent_old)
100
    {
101
        if (con != 0)
102
            con = 3;
103
    }
104
    with (obj_board_collidebullet)
105
        active = 0;
106
    if (!i_ex(obj_growtangle))
107
    {
108
        with (obj_heart)
109
            
scr_afterimagefast
scr_afterimagefast

function
scr_afterimagefast()
{ afterimage = instance_create(x, y, obj_afterimage); afterimage.sprite_index = sprite_index; afterimage.image_index = image_index; afterimage.image_blend = image_blend; afterimage.image_speed = 0; afterimage.depth = depth; afterimage.image_xscale = image_xscale; afterimage.image_yscale = image_yscale; afterimage.image_angle = image_angle; afterimage.fadeSpeed = 0.08; return afterimage; }
();
110
        safe_delete(obj_heart);
111
        tilecon = 99;
112
    }
113
}
114
if (tilecon == 99)
115
{
116
    tilecon = 0;
117
    tiledone = 1;
118
    obj_board_controller.phase = 0;
119
}