Deltarune (Chapter 3) script viewer

← back to main script listing

gml_Object_obj_shutta_photo_tenna_Draw_0

(view raw script w/o annotations or w/e)
1
if (facing == "r")
2
    reversal = 1;
3
if (facing == "l")
4
    reversal = 0;
5
facing = "d";
6
siner++;
7
siner2++;
8
if (bounce == 1)
9
{
10
    image_yscale = 2.5;
11
    image_xscale = 1.5;
12
    bounce = 2;
13
}
14
if (bounce == 2)
15
{
16
    
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("image_xscale", image_xscale, 2, 16, -2, "out");
17
    
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("image_yscale", image_yscale, 2, 16, -2, "out");
18
    bounce = 3;
19
}
20
if (bounce == 3)
21
{
22
    if (image_yscale <= 2.01)
23
    {
24
        image_yscale = 2;
25
        bounce = 0;
26
    }
27
}
28
if (preset != -1)
29
{
30
    drawtype = 0;
31
    if (preset == 0)
32
    {
33
        image_speed = 0;
34
        wobblestate = 0;
35
        wobbletime = 0;
36
        wobbleamt = 0;
37
        drawtype = 1;
38
    }
39
    if (preset == 1)
40
    {
41
        sprite_index = spr_tenna_laugh_pose;
42
        wobblestate = 1;
43
        wobbletime = 4;
44
        wobbleamt = 40;
45
    }
46
    if (preset == 2)
47
    {
48
        sprite_index = spr_tenna_point_up;
49
        wobblestate = 1;
50
        wobbletime = 4;
51
        wobbleamt = 15;
52
    }
53
    if (preset == 3)
54
    {
55
        sprite_index = spr_tenna_listening;
56
        wobblestate = 1;
57
        wobbletime = 4;
58
        wobbleamt = 30;
59
    }
60
    if (preset == 4)
61
    {
62
        sprite_index = spr_tenna_laugh_pose;
63
        wobblestate = 3;
64
        wobbletime = 3;
65
        wobbleamt = 30;
66
    }
67
    if (preset == 5)
68
    {
69
        reversal = 0;
70
        animchangetimer = 8;
71
        wobblestate = 4;
72
        wobbleamt = 40;
73
        wobbletime = 4;
74
    }
75
    if (preset == 6)
76
    {
77
        sprite_index = spr_tenna_bow;
78
        image_speed = 0.25;
79
        wobblestate = 5;
80
        wobbletime = 3;
81
        wobbleamt = 30;
82
    }
83
    preset = -1;
84
}
85
x1 = x - sprite_xoffset;
86
y1 = y - sprite_yoffset;
87
x2 = (x - sprite_xoffset) + sprite_width;
88
y2 = y - sprite_yoffset;
89
x3 = (x - sprite_xoffset) + sprite_width;
90
y3 = (y - sprite_yoffset) + sprite_height;
91
x4 = x - sprite_xoffset;
92
y4 = (y - sprite_yoffset) + sprite_height;
93
var reversalsign = 1;
94
if (reversal == 1)
95
    reversalsign = -1;
96
if (wobblestate == 1)
97
{
98
    x1 += (abs(sin(siner / wobbletime) * wobbleamt) * reversalsign);
99
    x2 += (abs(sin(siner / wobbletime) * wobbleamt) * reversalsign);
100
    y1 -= abs(sin(siner / wobbletime) * wobbleamt);
101
    y2 += abs(sin(siner / wobbletime) * wobbleamt);
102
}
103
if (wobblestate == 2)
104
{
105
    x1 += (sin(siner / wobbletime) * 10 * reversalsign);
106
    x2 += (sin(siner / wobbletime) * 10 * reversalsign);
107
    y1 -= (sin((siner / wobbletime) * 0.9) * 14);
108
    y2 += (sin((siner / wobbletime) * 1.1) * 14);
109
}
110
if (wobblestate == 3)
111
{
112
    if (sin(siner / wobbletime) < 0)
113
        reversal = 1;
114
    else
115
        reversal = 0;
116
    var addamt = abs(sin(siner / wobbletime) * wobbleamt);
117
    var addamt2 = addamt;
118
    if (reversal == 1)
119
        addamt = -addamt;
120
    x1 += addamt;
121
    x2 += addamt;
122
    y1 -= addamt2;
123
    y2 += addamt2;
124
}
125
if (wobblestate == 4)
126
{
127
    animchangetimer++;
128
    if (animchangetimer == changespeed)
129
    {
130
        reversal = 0;
131
        sprite_index = spr_tenna_point_left;
132
        bounce = 1;
133
    }
134
    if (animchangetimer == (changespeed * 2))
135
    {
136
        reversal = 0;
137
        sprite_index = spr_tenna_point_up;
138
        x1 = x - sprite_xoffset;
139
        y1 = y - sprite_yoffset;
140
        x2 = (x - sprite_xoffset) + sprite_width;
141
        y2 = y - sprite_yoffset;
142
        x3 = (x - sprite_xoffset) + sprite_width;
143
        y3 = (y - sprite_yoffset) + sprite_height;
144
        x4 = x - sprite_xoffset;
145
        y4 = (y - sprite_yoffset) + sprite_height;
146
        bounce = 1;
147
    }
148
    if (animchangetimer == (changespeed * 3))
149
    {
150
        sprite_index = spr_tenna_point_left;
151
        reversal = 1;
152
        bounce = 1;
153
    }
154
    if (animchangetimer == (changespeed * 4))
155
    {
156
        reversal = 1;
157
        sprite_index = spr_tenna_point_up;
158
        x1 = x - sprite_xoffset;
159
        y1 = y - sprite_yoffset;
160
        x2 = (x - sprite_xoffset) + sprite_width;
161
        y2 = y - sprite_yoffset;
162
        x3 = (x - sprite_xoffset) + sprite_width;
163
        y3 = (y - sprite_yoffset) + sprite_height;
164
        x4 = x - sprite_xoffset;
165
        y4 = (y - sprite_yoffset) + sprite_height;
166
        bounce = 1;
167
        animchangetimer = 0;
168
    }
169
    var addamt = abs(sin(siner / wobbletime) * wobbleamt);
170
    var addamt2 = addamt;
171
    if (reversal == 1)
172
        addamt = -addamt;
173
    x1 += addamt;
174
    x2 += addamt;
175
    y1 -= addamt2;
176
    y2 += addamt2;
177
}
178
if (wobblestate == 5)
179
{
180
    if (image_index == (sprite_get_number(sprite_index) - 1))
181
        reversal = 1 - reversal;
182
    var addamt = abs(sin(siner / wobbletime) * wobbleamt);
183
    var addamt2 = addamt;
184
    if (reversal == 1)
185
        addamt = -addamt;
186
    x1 += addamt;
187
    x2 += addamt;
188
    y1 -= addamt2;
189
    y2 += addamt2;
190
}
191
if (reversal == 1)
192
{
193
    var remx1 = x1;
194
    var remx2 = x2;
195
    var remx3 = x3;
196
    var remx4 = x4;
197
    x1 = remx2;
198
    x2 = remx1;
199
    x3 = remx4;
200
    x4 = remx3;
201
}
202
if (drawtype == 0)
203
    draw_sprite_pos(sprite_index, image_index, x1, y1, x2, y2, x3, y3, x4, y4, 1);
204
if (drawtype == 1)
205
    draw_self();
206
var lineshow = 0;
207
if (lineshow)
208
{
209
    draw_line(x1, y1, x2, y2);
210
    draw_line(x2, y2, x3, y3);
211
    draw_line(x1, y1, x4, y4);
212
    draw_line(x4, y4, x3, y3);
213
    draw_circle(x, y, 0.5, 1);
214
    draw_text(camerax(), (cameray() + 480) - 15, "wobblestate=" + string(wobblestate));
215
}