Deltarune (Chapter 2) script viewer

← back to main script listing

gml_Object_obj_lancergotchi_Step_0

(view raw script w/o annotations or w/e)
1
sleeptimer++;
2
if (movecon == 0 || movecon == 1)
3
{
4
    if (con == 0)
5
    {
6
        if (movecon == 0)
7
        {
8
            hspeed = -4;
9
            sprite_index = lsprite;
10
        }
11
        if (movecon == 1)
12
        {
13
            hspeed = 4;
14
            sprite_index = rsprite;
15
        }
16
        con = 1;
17
        contimer = 0;
18
        contimermax = 30;
19
        flipchance = choose(0, 1, 2);
20
        if (flipchance == 2)
21
        {
22
            sprite_index = choose(dsprite, spr_lancer_ut_flip);
23
            image_speed = 0.25;
24
        }
25
    }
26
    if (con == 1)
27
    {
28
        stop = 0;
29
        contimer++;
30
        if (x < minx)
31
            stop = 1;
32
        if (x > maxx)
33
            stop = 1;
34
        if (contimer > contimermax)
35
            stop = 1;
36
        if (stop == 1)
37
        {
38
            hspeed = 0;
39
            sprite_index = choose(dsprite, dsprite, spr_lancer_ut_flip);
40
            image_speed = 0.25;
41
            alarm[0] = 30;
gml_Object_obj_lancergotchi_Alarm_0.gml

remmovecon = movecon; movecon = floor(random(5)); if (movecon == remmovecon) movecon = floor(random(5)); con = 0; if (sleeptimer >= 900) movecon = 10;
42
            con = 2;
43
        }
44
    }
45
}
46
if (movecon == 2 || movecon == 3)
47
{
48
    if (con == 0)
49
    {
50
        if (movecon == 3)
51
        {
52
            vspeed = -8;
53
            gravity = 1;
54
            y -= 4;
55
            hspeed = random_range(-4, 4);
56
        }
57
        spincount = 0;
58
        spintimer = 0;
59
        spinmax = 8;
60
        con = 1;
61
        sprite_index = dsprite;
62
    }
63
    if (con == 1)
64
    {
65
        if (y >= maxy)
66
        {
67
            gravity = 0;
68
            vspeed = 0;
69
        }
70
        if (x <= minx)
71
        {
72
            x += 4;
73
            hspeed = -hspeed;
74
        }
75
        if (x >= maxx)
76
        {
77
            x -= 4;
78
            hspeed = -hspeed;
79
        }
80
        spintimer++;
81
        if (spintimer >= 3)
82
        {
83
            if (sprite_index == dsprite)
84
                sprite_index = lsprite;
85
            else if (sprite_index == lsprite)
86
                sprite_index = usprite;
87
            else if (sprite_index == usprite)
88
                sprite_index = rsprite;
89
            else if (sprite_index == rsprite)
90
                sprite_index = dsprite;
91
            spincount++;
92
            spintimer = 0;
93
        }
94
        if (spincount >= 8)
95
        {
96
            hspeed = 0;
97
            vspeed = 0;
98
            gravity = 0;
99
            con = 2;
100
            alarm[0] = 30;
gml_Object_obj_lancergotchi_Alarm_0.gml

remmovecon = movecon; movecon = floor(random(5)); if (movecon == remmovecon) movecon = floor(random(5)); con = 0; if (sleeptimer >= 900) movecon = 10;
101
        }
102
    }
103
}
104
if (movecon == 4)
105
{
106
    if (con == 0)
107
    {
108
        sprite_index = spr_lancer_wave;
109
        image_index = 0;
110
        image_speed = 0.5;
111
        wavetimer = 0;
112
        con = 1;
113
    }
114
    if (con == 1)
115
    {
116
        wavetimer++;
117
        if (wavetimer >= 16)
118
            image_speed = 0;
119
        if (wavetimer >= 40)
120
        {
121
            alarm[0] = 2;
gml_Object_obj_lancergotchi_Alarm_0.gml

remmovecon = movecon; movecon = floor(random(5)); if (movecon == remmovecon) movecon = floor(random(5)); con = 0; if (sleeptimer >= 900) movecon = 10;
122
            con = 2;
123
        }
124
    }
125
}
126
if (movecon == 10)
127
{
128
    sprite_index = spr_lancer_sleep;
129
    image_speed = 0.1;
130
    speed = 0;
131
    hspeed = 0;
132
    gravity = 0;
133
}
134
if (movecon == 11)
135
{
136
    sprite_index = spr_cutscene_20_lancer_stone;
137
    image_speed = 0;
138
    speed = 0;
139
    hspeed = 0;
140
    gravity = 0;
141
}
142
if (global.submenu != 4 || global.interact != 5)
143
    instance_destroy();