Undertale script viewer

← back to main script listing

gml_Object_obj_flowey_bulletmaster_Step_0

(view raw script w/o annotations or w/e)
1
if (active == 1)
2
{
3
    attacktimer += 1;
4
    timer += 1;
5
    if (attacktimer >= attacktimermax)
6
    {
7
        with (obj_fx_bgen)
8
            event_user(2);
9
        attacktimer = -100;
10
        if (timer < (maxtimer - 70))
11
        {
12
            attacktimer = -100;
13
            event_user(1);
14
        }
15
    }
16
    if (timer == atimer)
17
    {
18
        fightbt = instance_create(320, 420, obj_flowey_fightbt);
19
        alarm[5] = 110;
gml_Object_obj_flowey_bulletmaster_Alarm_5.gml

with (obj_flowey_fightbt) instance_destroy();
20
        if (global.battlephase == 6)
21
        {
22
            alarm[5] = 79;
gml_Object_obj_flowey_bulletmaster_Alarm_5.gml

with (obj_flowey_fightbt) instance_destroy();
23
            atimer += 80;
24
        }
25
    }
26
    if (timer >= maxtimer && phase_s == 0 && global.battlephase < 6)
27
    {
28
        if (instance_exists(obj_flowey_fightbt))
29
        {
30
            with (obj_flowey_fightbt)
31
                instance_destroy();
32
        }
33
        phase_s = 1;
34
        alarm[4] = 155;
35
        with (obj_flowey_master)
36
        {
37
            if (mustype == 3)
38
            {
39
                caster_stop(all);
40
                caster_play(mus_endnote, 1, 1);
41
                mustype = 0;
42
            }
43
            caster_play(mus_alarm, 1, 1);
44
        }
45
        with (obj_floweyx_tv)
46
            tvmode = 1;
47
        if (global.soul_rescue == 0)
48
        {
49
            with (obj_floweypipetest)
50
                flash = 1;
51
        }
52
        if (global.soul_rescue == 1)
53
        {
54
            with (obj_floweypipetest)
55
                flash = 2;
56
        }
57
        if (global.soul_rescue == 2)
58
        {
59
            with (obj_floweypipetest_2)
60
                flash = 1;
61
        }
62
        if (global.soul_rescue == 3)
63
        {
64
            with (obj_floweypipetest_2)
65
                flash = 2;
66
        }
67
        if (global.soul_rescue == 4)
68
        {
69
            with (obj_floweypipetest_3)
70
                flash = 1;
71
        }
72
        if (global.soul_rescue == 5)
73
        {
74
            with (obj_floweypipetest_3)
75
                flash = 2;
76
        }
77
    }
78
    if (phase_s == 2)
79
    {
80
        with (obj_floweyx_tv)
81
            tvmode = 2;
82
        with (obj_vsflowey_heart)
83
            move = 0;
84
        with (obj_flowey_master)
85
        {
86
            caster_stop(all);
87
            caster_loop(mus_noise, 1, 1);
88
            event_user(6);
89
        }
90
        idealhx = 314;
91
        idealhy = 400;
92
        if (global.soul_rescue == 2)
93
            idealhy = 450;
94
        nowhx = obj_vsflowey_heart.x;
95
        nowhy = obj_vsflowey_heart.y;
96
        nowhxadd = (idealhx - nowhx) / 40;
97
        nowhyadd = (idealhy - nowhy) / 40;
98
        phase_s = 3;
99
        alarm[4] = 40;
100
    }
101
    if (phase_s == 3)
102
    {
103
        obj_vsflowey_heart.x += nowhxadd;
104
        obj_vsflowey_heart.y += nowhyadd;
105
    }
106
    if (phase_s == 4)
107
    {
108
        obj_vsflowey_heart.x = idealhx;
109
        obj_vsflowey_heart.y = idealhy;
110
        obj_vsflowey_heart.move = 1;
111
        with (obj_floweyx_tv)
112
            tvmode = 3;
113
        with (obj_flowey_master)
114
        {
115
            caster_stop(all);
116
            caster_loop(mus_soul[global.soul_rescue], 1, 1);
117
        }
118
        if (global.soul_rescue == 0)
119
            instance_create(0, 0, obj_6knife_act);
120
        if (global.soul_rescue == 1)
121
        {
122
            instance_create(room_width * 0.5, 0, obj_6glove_boss);
123
            instance_create(room_width * 0, -120, obj_6glove_boss);
124
            instance_create(room_width * 1, -120, obj_6glove_boss);
125
            instance_create(room_width * 0.5, -400, obj_6glove_boss);
126
            instance_create(room_width * 0, -520, obj_6glove_boss);
127
            instance_create(room_width * 1, -520, obj_6glove_boss);
128
            lg = instance_create(room_width * 0.5, -800, obj_6glove_boss);
129
            with (lg)
130
                event_user(6);
131
            instance_create(room_width * 0, -920, obj_6glove_boss);
132
            instance_create(room_width * 1, -920, obj_6glove_boss);
133
        }
134
        if (global.soul_rescue == 2)
135
            instance_create(0, 0, obj_6shoe_master);
136
        if (global.soul_rescue == 3)
137
            instance_create(0, 0, obj_6book_master);
138
        if (global.soul_rescue == 4)
139
        {
140
            instance_create(190, 260, obj_6pan);
141
            ppp = instance_create(415, 260, obj_6pan);
142
            ppp.spec = 1;
143
            instance_create(640, 260, obj_6pan);
144
        }
145
        if (global.soul_rescue == 5)
146
            instance_create(room_width / 2, room_height / 2, obj_6gun);
147
        if (global.soul_rescue > 5)
148
            instance_create(0, 0, obj_6knife_act);
149
        phase_s = 5;
150
    }
151
    if (phase_s == 5)
152
    {
153
        soultimer += 1;
154
        if (soultimer >= soulmax)
155
        {
156
            idealhx = 314;
157
            idealhy = 400;
158
            if (global.soul_rescue == 6)
159
                idealhy = 280;
160
            nowhx = obj_vsflowey_heart.x;
161
            nowhy = obj_vsflowey_heart.y;
162
            nowhxadd = (idealhx - nowhx) / 40;
163
            nowhyadd = (idealhy - nowhy) / 40;
164
            obj_vsflowey_heart.move = 0;
165
            with (obj_floweyx_tv)
166
                tvmode = 2;
167
            with (obj_6parent)
168
                instance_destroy();
169
            with (obj_flowey_master)
170
            {
171
                caster_stop(all);
172
                caster_loop(mus_noise, 1, 1);
173
            }
174
            phase_s = 6;
175
            alarm[4] = 20;
176
            with (obj_floweypipetest)
177
                flash = 0;
178
            with (obj_floweypipetest_2)
179
                flash = 0;
180
            with (obj_floweypipetest_3)
181
                flash = 0;
182
            if (global.soul_rescue == 6)
183
            {
184
                phase_s = 20;
185
                alarm[4] = 40;
186
            }
187
            global.battlephase += 1;
188
            if (global.battlephase >= 6)
189
                global.battlephase = 0;
190
        }
191
    }
192
    if (phase_s == 6 || phase_s == 8)
193
    {
194
        obj_vsflowey_heart.x += nowhxadd;
195
        obj_vsflowey_heart.y += nowhyadd;
196
    }
197
    if (phase_s == 7)
198
    {
199
        with (obj_flowey_master)
200
            event_user(6);
201
        phase_s = 8;
202
        alarm[4] = 20;
203
    }
204
    if (phase_s == 9)
205
    {
206
        obj_vsflowey_heart.x = idealhx;
207
        obj_vsflowey_heart.y = idealhy;
208
        obj_vsflowey_heart.move = 1;
209
        phase_s = 10;
210
    }
211
    if (phase_s == 10)
212
    {
213
        with (obj_floweyx_tv)
214
            tvmode = 0;
215
        with (obj_flowey_master)
216
            caster_stop(all);
217
        instance_create(0, 0, obj_flowey_bulletmaster);
218
        instance_destroy();
219
    }
220
    if (phase_s == 20 || phase_s == 24 || phase_s == 26)
221
    {
222
        obj_vsflowey_heart.x += nowhxadd;
223
        obj_vsflowey_heart.y += nowhyadd;
224
    }
225
    if (phase_s == 21)
226
    {
227
        obj_vsflowey_heart.x = idealhx;
228
        obj_vsflowey_heart.y = idealhy;
229
        obj_vsflowey_heart.move = 1;
230
        with (obj_floweyx_tv)
231
            tvmode = 5;
232
        caster_stop(all);
233
        instance_create(0, 0, obj_6soul_helpcutscene);
234
        with (obj_flowey_master)
235
            caster_play(mus_finale1_l, 1, 1);
236
        alarm[4] = 308;
237
        alarm[4] = 615;
238
        phase_s = 22;
239
    }
240
    if (phase_s == 23)
241
    {
242
        idealhx = 314;
243
        idealhy = 400;
244
        nowhx = obj_vsflowey_heart.x;
245
        nowhy = obj_vsflowey_heart.y;
246
        nowhxadd = (idealhx - nowhx) / 40;
247
        nowhyadd = (idealhy - nowhy) / 40;
248
        obj_vsflowey_heart.move = 0;
249
        with (obj_floweyx_tv)
250
            tvmode = 2;
251
        with (obj_flowey_master)
252
            caster_loop(mus_noise, 1, 1);
253
        phase_s = 24;
254
        alarm[4] = 20;
255
        global.battlephase = 6;
256
    }
257
    if (phase_s == 25)
258
    {
259
        with (obj_flowey_master)
260
            event_user(6);
261
        phase_s = 26;
262
        alarm[4] = 20;
263
    }
264
    if (phase_s == 27)
265
    {
266
        obj_vsflowey_heart.x = idealhx;
267
        obj_vsflowey_heart.y = idealhy;
268
        obj_vsflowey_heart.move = 1;
269
        phase_s = 10;
270
        global.msg[0] = 
* Flowey's DEFENSE
dropped to 0!Delay 44 Close MessageClose Message
scr_gettext
scr_gettext

var text_id = argument[0]; var text = ds_map_find_value(global.text_data_en, text_id); if (is_undefined(text)) text = ""; if (global.language == "ja") { var loc_text = ds_map_find_value(global.text_data_ja, text_id); if (!is_undefined(loc_text)) text = loc_text; } for (var i = 1; i <= (string_length(text) - 3); i++) { if (string_copy(text, i, 2) == "\[" && string_char_at(text, i + 3) == "]") { var sel = string_char_at(text, i + 2); var replace; if (sel == "C") replace = global.charname; else if (sel == "G") replace = string(global.gold); else if (sel == "I") replace = global.itemname[global.menucoord[1]]; else if (sel == "1" && argument_count > 1) replace = argument[1]; else if (sel == "2" && argument_count > 2) replace = argument[2]; else if (sel == "3" && argument_count > 3) replace = argument[3]; else if (sel == "4" && argument_count > 4) replace = argument[4]; else if (sel == "5" && argument_count > 5) replace = argument[5]; else if (sel == "6" && argument_count > 6) replace = argument[6]; else if (sel == "7" && argument_count > 7) replace = argument[7]; else if (sel == "8" && argument_count > 8) replace = argument[8]; else if (sel == "9" && argument_count > 9) replace = argument[9]; else replace = ""; var before = string_copy(text, 1, i - 1); var after = string_copy(text, i + 4, string_length(text)); text = before + replace + after; i += (string_length(replace) - 1); } } return text;
("obj_flowey_bulletmaster_562")
;
271
        global.msg[2] = 
Close MessageClose MessageClose Message
scr_gettext
scr_gettext

var text_id = argument[0]; var text = ds_map_find_value(global.text_data_en, text_id); if (is_undefined(text)) text = ""; if (global.language == "ja") { var loc_text = ds_map_find_value(global.text_data_ja, text_id); if (!is_undefined(loc_text)) text = loc_text; } for (var i = 1; i <= (string_length(text) - 3); i++) { if (string_copy(text, i, 2) == "\[" && string_char_at(text, i + 3) == "]") { var sel = string_char_at(text, i + 2); var replace; if (sel == "C") replace = global.charname; else if (sel == "G") replace = string(global.gold); else if (sel == "I") replace = global.itemname[global.menucoord[1]]; else if (sel == "1" && argument_count > 1) replace = argument[1]; else if (sel == "2" && argument_count > 2) replace = argument[2]; else if (sel == "3" && argument_count > 3) replace = argument[3]; else if (sel == "4" && argument_count > 4) replace = argument[4]; else if (sel == "5" && argument_count > 5) replace = argument[5]; else if (sel == "6" && argument_count > 6) replace = argument[6]; else if (sel == "7" && argument_count > 7) replace = argument[7]; else if (sel == "8" && argument_count > 8) replace = argument[8]; else if (sel == "9" && argument_count > 9) replace = argument[9]; else replace = ""; var before = string_copy(text, 1, i - 1); var after = string_copy(text, i + 4, string_length(text)); text = before + replace + after; i += (string_length(replace) - 1); } } return text;
("obj_flowey_bulletmaster_564")
;
272
        global.typer = 113;
273
        var text_x = 180;
274
        if (global.language == "ja")
275
            text_x = 112;
276
        instance_create(text_x, 300, obj_flowey_writer);
277
        with (obj_floweybodyparent)
278
            desperate = 0;
279
        with (obj_floweybodyparent)
280
            wimpy = 1;
281
        with (obj_floweyx_flipeye)
282
            memorymode = 0;
283
        with (obj_floweyx_lefteye)
284
            memorymode = 0;
285
    }
286
    if (timer > (maxtimer + 120))
287
    {
288
        if (instance_exists(obj_floweybullet_parent))
289
        {
290
            with (obj_floweybullet_parent)
291
                instance_destroy();
292
        }
293
        with (obj_floweyx_flipeye)
294
        {
295
            md = 0;
296
            con = 0;
297
        }
298
        with (obj_floweyx_lefteye)
299
        {
300
            md = 0;
301
            con = 0;
302
        }
303
    }
304
}