Deltarune (Chapter 4) script viewer

← back to main script listing

gml_Object_obj_giant_hammer_Other_24

(view raw script w/o annotations or w/e)
1
if ((con == 0 && timer > 8) || con != 0)
2
{
3
    fakex += fakehspeed;
4
    if (fakehspeed < 0)
5
        fakehspeed += 0.6;
6
    else
7
        fakehspeed = 0;
8
}
9
if (con == 0)
10
{
11
    timer++;
12
    if (timer == 3)
13
        snd_play(motor_upper_quick);
14
    var a = lerp(900, 490, timer / 20);
15
    var b = lerp(120, 50, timer / 20);
16
    var c = lerp(240, 100, timer / 20);
17
    image_angle = lerp(200, a, timer / 20);
18
    if (timer < 21)
19
    {
20
        image_alpha += 0.04;
21
        x = lerp(xstart, xstart - b, timer / 20);
22
        y = lerp(ystart, ystart - c, timer / 20);
23
    }
24
    if (timer == 20)
25
    {
26
        timer = 0;
27
        con = 1;
28
        fadecon = 1;
29
        snd_play(snd_punchheavythunder);
30
        snd_play(snd_break2);
31
    }
32
}
33
if (con == 1)
34
{
35
    timer++;
36
    if (timer == 3)
37
        breakcon = 1;
38
    var a = lerp(0, 260, timer / 9);
39
    image_angle = lerp(500, a, timer / 9);
40
    if (timer < 6)
41
    {
42
        x = lerp(xstart - 50, xstart, timer / 6);
43
        y = lerp(ystart - 100, ystart + 100, timer / 6);
44
    }
45
    if (timer >= 9)
46
    {
47
        timer = 0;
48
        con = 2;
49
    }
50
}
51
if (con == 2)
52
{
53
    timer++;
54
    if (timer > 5)
55
        image_alpha -= 0.2;
56
    if (image_alpha < 0)
57
        instance_destroy();
58
}
59
if (fadecon == 1)
60
{
61
    fakealpha += 0.2;
62
    if (fakealpha > 1.2)
63
        fadecon = 2;
64
}
65
if (fadecon == 2)
66
{
67
    fakealpha -= 0.2;
68
    if (fakealpha < 0)
69
        fadecon = 0;
70
}
71
if (type == 2 && con == 2)
72
{
73
}
74
else
75
{
76
    var a = 
scr_afterimage
scr_afterimage

function
scr_afterimage()
{ 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; return afterimage; }
();
77
    a.fadeSpeed = 0.08;
78
    a.image_alpha = image_alpha;
79
}
80
if (breakcon == 1)
81
{
82
    breakcon = 2;
83
    with (obj_spearblocker)
84
    {
85
        piece1 = instance_create(x + lengthdir_x(32, image_angle - 35), y + lengthdir_y(32, image_angle - 35), obj_spearblocker_piece);
86
        piece1.image_angle = image_angle;
87
        piece1.image_index = 1;
88
        piece2 = instance_create(x + lengthdir_x(32, image_angle + 35), y + lengthdir_y(32, image_angle + 35), obj_spearblocker_piece);
89
        piece2.image_angle = image_angle;
90
        piece2.image_index = 0;
91
        piece3 = instance_create(x + lengthdir_x(30, 45), y + lengthdir_y(30, 45), obj_spearblocker_piece);
92
        piece3.sprite_index = spr_green_circle_piece;
93
        piece3.image_angle = 0;
94
        piece4 = instance_create(x + lengthdir_x(30, 135), y + lengthdir_y(30, 135), obj_spearblocker_piece);
95
        piece4.sprite_index = spr_green_circle_piece;
96
        piece4.image_angle = 90;
97
        piece5 = instance_create(x + lengthdir_x(30, 225), y + lengthdir_y(30, 225), obj_spearblocker_piece);
98
        piece5.sprite_index = spr_green_circle_piece;
99
        piece5.image_angle = 180;
100
        piece6 = instance_create(x + lengthdir_x(30, 315), y + lengthdir_y(30, 315), obj_spearblocker_piece);
101
        piece6.sprite_index = spr_green_circle_piece;
102
        piece6.image_angle = 270;
103
        if (idealdir == 180)
104
        {
105
            piece1.vspeed = -9 - random(6);
106
            piece1.hspeed = 1 + random(2);
107
            piece2.vspeed = 5 + random(6);
108
            piece2.hspeed = 1 + random(2);
109
            piece3.vspeed = -9 - random(6);
110
            piece3.hspeed = 1 + random(2);
111
            piece4.vspeed = -9 - random(6);
112
            piece4.hspeed = 1 + random(2);
113
            piece5.vspeed = 5 + random(6);
114
            piece5.hspeed = 1 + random(2);
115
            piece6.vspeed = 5 + random(6);
116
            piece6.hspeed = 1 + random(2);
117
        }
118
        if (idealdir == 0)
119
        {
120
            piece1.vspeed = -9 - random(6);
121
            piece1.hspeed = -1 - random(2);
122
            piece2.vspeed = 5 + random(6);
123
            piece2.hspeed = -1 - random(2);
124
            piece3.vspeed = -9 - random(6);
125
            piece3.hspeed = -1 - random(2);
126
            piece4.vspeed = -9 - random(6);
127
            piece4.hspeed = -1 - random(2);
128
            piece5.vspeed = 5 + random(6);
129
            piece5.hspeed = -1 - random(2);
130
            piece6.vspeed = 5 + random(6);
131
            piece6.hspeed = -1 - random(2);
132
        }
133
        if (idealdir == 90)
134
        {
135
            piece1.vspeed = 1 - random(6);
136
            piece1.hspeed = 9 + random(5);
137
            piece2.vspeed = 1 - random(6);
138
            piece2.hspeed = -9 + random(5);
139
            piece3.vspeed = 1 - random(6);
140
            piece3.hspeed = 9 + random(5);
141
            piece4.vspeed = 1 - random(6);
142
            piece4.hspeed = -9 + random(5);
143
            piece5.vspeed = 1 - random(6);
144
            piece5.hspeed = -9 + random(5);
145
            piece6.vspeed = 1 - random(6);
146
            piece6.hspeed = 9 + random(5);
147
        }
148
        if (idealdir == 270)
149
        {
150
            piece1.vspeed = 1 - random(6);
151
            piece1.hspeed = 9 + random(5);
152
            piece2.vspeed = 1 - random(6);
153
            piece2.hspeed = -9 + random(5);
154
            piece3.vspeed = 1 - random(6);
155
            piece3.hspeed = 9 + random(5);
156
            piece4.vspeed = 1 - random(6);
157
            piece4.hspeed = -9 + random(5);
158
            piece5.vspeed = 1 - random(6);
159
            piece5.hspeed = -9 + random(5);
160
            piece6.vspeed = 1 - random(6);
161
            piece6.hspeed = 9 + random(5);
162
        }
163
        instance_destroy();
164
    }
165
    with (obj_spearshot)
166
        instance_destroy();
167
    
scr_heartcolor
scr_heartcolor

function
scr_heartcolor(arg0)
{ __heartcolor = arg0; if (__heartcolor == "red" || __heartcolor == 0) { with (obj_heart) { color = 0; sprite_index = spr_dodgeheart; } } if (__heartcolor == "yellow" || __heartcolor == 1) { with (obj_heart) { color = 1; sprite_index = spr_yellowheart; } obj_grazebox.sprite_index = spr_grazeappear_yellow; } }
("red");
168
}