Deltarune (Chapter 2) script viewer

← back to main script listing

gml_Object_obj_werewerewire_enemy_Step_0

(view raw script w/o annotations or w/e)
1
if (global.monster[myself] == 1)
2
{
3
    if (
scr_isphase
scr_isphase

function
scr_isphase(arg0)
{ __isphase = 0; if (arg0 == "menu" && global.myfight == 0) __isphase = 1; if (arg0 == "acting" && global.myfight == 3) __isphase = 1; if (arg0 == "victory" && global.myfight == 7) __isphase = 1; if (arg0 == "attack" || arg0 == "fight") { if (global.myfight == 1) __isphase = 1; } if (arg0 == "spell" || arg0 == "item") { if (global.myfight == 4) __isphase = 1; } if (arg0 == "enemytalk" || arg0 == "balloon") { if (global.mnfight == 1) __isphase = 1; } if (arg0 == "enemyattack" || arg0 == "bullets") { if (global.mnfight == 2) __isphase = 1; } return __isphase; }
("enemytalk") && talked == 0)
4
    {
5
        
scr_randomtarget
scr_randomtarget

function
scr_randomtarget()
{ abletotarget = 1; if (global.charcantarget[0] == 0 && global.charcantarget[1] == 0 && global.charcantarget[2] == 0) abletotarget = 0; mytarget = choose(0, 1, 2); if (abletotarget == 1) { while (global.charcantarget[mytarget] == 0) mytarget = choose(0, 1, 2); } else { mytarget = 3; } global.targeted[mytarget] = 1; if (global.chapter >= 2 && mytarget != 3) { if (global.charcantarget[0]) global.targeted[0] = 1; if (global.charcantarget[1]) global.targeted[1] = 1; if (global.charcantarget[2]) global.targeted[2] = 1; mytarget = 4; } }
();
6
        if (!instance_exists(obj_darkener))
7
            instance_create(0, 0, obj_darkener);
8
        instance_create(x - 102, y + 18, obj_werewire_zzt_balloon);
9
        snd_play(snd_electric_talk);
10
        talked = 1;
11
        talktimer = 0;
12
    }
13
    if (talked == 1 && 
scr_isphase
scr_isphase

function
scr_isphase(arg0)
{ __isphase = 0; if (arg0 == "menu" && global.myfight == 0) __isphase = 1; if (arg0 == "acting" && global.myfight == 3) __isphase = 1; if (arg0 == "victory" && global.myfight == 7) __isphase = 1; if (arg0 == "attack" || arg0 == "fight") { if (global.myfight == 1) __isphase = 1; } if (arg0 == "spell" || arg0 == "item") { if (global.myfight == 4) __isphase = 1; } if (arg0 == "enemytalk" || arg0 == "balloon") { if (global.mnfight == 1) __isphase = 1; } if (arg0 == "enemyattack" || arg0 == "bullets") { if (global.mnfight == 2) __isphase = 1; } return __isphase; }
("enemytalk"))
14
    {
15
        rtimer = 0;
16
        if (!i_ex(obj_werewire_zzt_balloon))
17
            global.mnfight = 2;
18
        if (
scr_isphase
scr_isphase

function
scr_isphase(arg0)
{ __isphase = 0; if (arg0 == "menu" && global.myfight == 0) __isphase = 1; if (arg0 == "acting" && global.myfight == 3) __isphase = 1; if (arg0 == "victory" && global.myfight == 7) __isphase = 1; if (arg0 == "attack" || arg0 == "fight") { if (global.myfight == 1) __isphase = 1; } if (arg0 == "spell" || arg0 == "item") { if (global.myfight == 4) __isphase = 1; } if (arg0 == "enemytalk" || arg0 == "balloon") { if (global.mnfight == 1) __isphase = 1; } if (arg0 == "enemyattack" || arg0 == "bullets") { if (global.mnfight == 2) __isphase = 1; } return __isphase; }
("bullets"))
19
        {
20
            if (!instance_exists(obj_moveheart))
21
                
scr_moveheart
scr_moveheart

function
scr_moveheart()
{ global.inv = 0; if (global.chapter == 2 && instance_exists(obj_gigaqueen_enemy)) return instance_create(o_boxingcontroller.x + 4, o_boxingcontroller.y - 120, obj_moveheart); else return instance_create(obj_herokris.x + 10, obj_herokris.y + 40, obj_moveheart); }
();
22
            if (!instance_exists(obj_growtangle))
23
                instance_create(__view_get(e__VW.XView, 0) + 320, __view_get(e__VW.YView, 0) + 170, obj_growtangle);
24
        }
25
    }
26
    if (
scr_isphase
scr_isphase

function
scr_isphase(arg0)
{ __isphase = 0; if (arg0 == "menu" && global.myfight == 0) __isphase = 1; if (arg0 == "acting" && global.myfight == 3) __isphase = 1; if (arg0 == "victory" && global.myfight == 7) __isphase = 1; if (arg0 == "attack" || arg0 == "fight") { if (global.myfight == 1) __isphase = 1; } if (arg0 == "spell" || arg0 == "item") { if (global.myfight == 4) __isphase = 1; } if (arg0 == "enemytalk" || arg0 == "balloon") { if (global.mnfight == 1) __isphase = 1; } if (arg0 == "enemyattack" || arg0 == "bullets") { if (global.mnfight == 2) __isphase = 1; } return __isphase; }
("bullets") && attacked == 0)
27
    {
28
        rtimer += 1;
29
        if (rtimer == 12)
30
        {
31
            rr = choose(0, 1);
32
            if (rr == 0)
33
            {
34
                
scr_turntimer
scr_turntimer

function
scr_turntimer(arg0)
{ if (global.turntimer < arg0) global.turntimer = arg0; }
(210);
35
                shootcon = 0;
36
                shootmode = 1;
37
                shoottimer = 0;
38
                with (object_index)
39
                    shootwait = random(5);
40
                werewire_count = 
scr_monsterpop
scr_monsterpop

function
scr_monsterpop()
{ return global.monster[0] + global.monster[1] + global.monster[2]; }
();
41
            }
42
            else if (rr == 1)
43
            {
44
                d = instance_create(x - 8, y + 4, obj_dbulletcontroller);
45
                d.difficulty = (
scr_monsterpop
scr_monsterpop

function
scr_monsterpop()
{ return global.monster[0] + global.monster[1] + global.monster[2]; }
() - 1) * 1.4;
46
                d.damage = global.monsterat[myself] * 5;
47
                d.target = mytarget;
48
                d.type = 34;
49
            }
50
            
scr_turntimer
scr_turntimer

function
scr_turntimer(arg0)
{ if (global.turntimer < arg0) global.turntimer = arg0; }
(140);
51
            turns += 1;
52
            global.typer = 6;
53
            global.fc = 0;
54
            if (global.mercymod[myself] >= global.mercymax[myself])
55
            {
56
                global.battlemsg[0] = stringsetloc(
* Werewerewire's wire is loose!Delay 11
* ... well,Delay 11 it would be.
"* Werewerewire's wire is loose^1!&* ... well^1, it would be.", "obj_werewerewire_enemy_slash_Step_0_gml_97_0"
);
57
            }
58
            else
59
            {
60
                rr = choose(0, 1, 2, 3, 4);
61
                if (rr == 0)
62
                    global.battlemsg[0] = stringsetloc(
* Werewerewire crackles at a level too high for you to understand.
"* Werewerewire crackles at a level too high for you to understand.", "obj_werewerewire_enemy_slash_Step_0_gml_101_0"
);
63
                if (rr == 1)
64
                    global.battlemsg[0] = stringsetloc(
* Werewerewire shuffles coolly.
"* Werewerewire shuffles coolly.", "obj_werewerewire_enemy_slash_Step_0_gml_102_0"
);
65
                if (rr == 2)
66
                    global.battlemsg[0] = stringsetloc(
* Werewerewire looks strong just standing there.
"* Werewerewire looks strong just standing there.", "obj_werewerewire_enemy_slash_Step_0_gml_103_0"
);
67
                if (rr == 3)
68
                    global.battlemsg[0] = stringsetloc(
* Werewerewire pretends to ignore you.
"* Werewerewire pretends to ignore you.", "obj_werewerewire_enemy_slash_Step_0_gml_104_0"
);
69
                if (rr == 4)
70
                    global.battlemsg[0] = stringsetloc(
* Smells like a lightning strike.
"* Smells like a lightning strike.", "obj_werewerewire_enemy_slash_Step_0_gml_105_0"
);
71
            }
72
            attacked = 1;
73
        }
74
        else
75
        {
76
            
scr_turntimer
scr_turntimer

function
scr_turntimer(arg0)
{ if (global.turntimer < arg0) global.turntimer = arg0; }
(120);
77
        }
78
    }
79
    if (shootcon == 0 && shootmode == 1)
80
    {
81
        if (global.turntimer >= 10)
82
            shootwait--;
83
        if (shootwait <= 0 && global.turntimer >= 40)
84
        {
85
            shootwait = ((werewire_count * 6) + random(7)) * werewire_count;
86
            shootwait = 0;
87
            shootcon = 1;
88
            shoottimer = 0;
89
        }
90
        else if (global.turntimer < 40)
91
        {
92
            shootmode = 0;
93
        }
94
    }
95
    if (shootcon == 1)
96
    {
97
        
scr_randomtarget
scr_randomtarget

function
scr_randomtarget()
{ abletotarget = 1; if (global.charcantarget[0] == 0 && global.charcantarget[1] == 0 && global.charcantarget[2] == 0) abletotarget = 0; mytarget = choose(0, 1, 2); if (abletotarget == 1) { while (global.charcantarget[mytarget] == 0) mytarget = choose(0, 1, 2); } else { mytarget = 3; } global.targeted[mytarget] = 1; if (global.chapter >= 2 && mytarget != 3) { if (global.charcantarget[0]) global.targeted[0] = 1; if (global.charcantarget[1]) global.targeted[1] = 1; if (global.charcantarget[2]) global.targeted[2] = 1; mytarget = 4; } }
();
98
        shootcon = choose(2, 20);
99
        sprite_index = spr_werewerewire_attack_2;
100
        if (shootcon == 20)
101
            sprite_index = spr_werewerewire_attack_1;
102
        image_index = 0;
103
        image_speed = 0;
104
        siner = 0;
105
        siner_timer = 0;
106
        stop_anim = 1;
107
        anim_timer_2 = 0;
108
        shootcount = 0;
109
    }
110
    if (shootcon == 2)
111
    {
112
        anim_add = 0.5;
113
        if (image_index < 3)
114
            image_index += (anim_add * m);
115
        if (image_index >= 3)
116
        {
117
            shootcon = 3;
118
            shoottimer = 0;
119
            shootcount = 0;
120
        }
121
    }
122
    if (shootcon == 3)
123
    {
124
        shoottimer -= 1;
125
        if (shoottimer <= 0)
126
        {
127
            for (i = 0; i < 3; i += 1)
128
            {
129
                snd_play_x(snd_electric_talk, 0.8, 1.9);
130
                lasercircle = instance_create(x - 52, y + 18, obj_werewire_bullet_lasercircle);
131
                lasercircle.damage = global.monsterat[myself] * 5;
132
                lasercircle.target = mytarget;
133
                if (instance_exists(obj_heart))
134
                    laser_angle = (point_direction(lasercircle.x, lasercircle.y, obj_heart.x + 8, obj_heart.y + 8) - 2) + random(4);
135
                lasercircle.my_angle = (laser_angle - 5) + (5 * i);
136
                lasercircle.my_angle_change = (-1 + i) * 0.8 * m;
137
                with (lasercircle)
138
                {
139
                    my_speed = 4;
140
                    my_accel = 0.2;
141
                    my_length = 4;
142
                }
143
                lasercircle.my_accel = 0.4;
144
            }
145
            shoottimer = 10 / m;
146
            shootcount += 1;
147
        }
148
        if (shootcount >= 3)
149
        {
150
            shootcon = 4;
151
            shootimer = 0;
152
        }
153
    }
154
    if (shootcon == 4)
155
    {
156
        shoottimer += 1;
157
        threshold = 2 + ((
scr_monsterpop
scr_monsterpop

function
scr_monsterpop()
{ return global.monster[0] + global.monster[1] + global.monster[2]; }
() - 1) * 10);
158
        if (shoottimer >= (threshold / m))
159
        {
160
            image_index += (0.25 * m);
161
            if (image_index >= 9)
162
            {
163
                shootcon = 0;
164
                image_index = 0;
165
                sprite_index = spr_werewerewire_idle;
166
                image_speed = 0.16;
167
                stop_anim = 0;
168
            }
169
        }
170
    }
171
    if (shootcon == 20)
172
    {
173
        bx1[0] = -24;
174
        bx1[1] = -40;
175
        bx1[2] = -48;
176
        bx1[3] = -46;
177
        bx1[4] = -26;
178
        by1[0] = -54;
179
        by1[1] = -30;
180
        by1[2] = 6;
181
        by1[3] = 46;
182
        by1[4] = 72;
183
        bullet_angle = (point_direction(x + bx1[2], y + by1[2], obj_heart.x + 8, obj_heart.y + 8) - 10) + random(20);
184
        shootcon = 21;
185
    }
186
    if (shootcon == 21)
187
    {
188
        shoottimer += 1;
189
        if (shoottimer >= ((15 / m) + ((
scr_monsterpop
scr_monsterpop

function
scr_monsterpop()
{ return global.monster[0] + global.monster[1] + global.monster[2]; }
() - 1) * 10)))
190
        {
191
            image_index += (0.25 * m);
192
            if (image_index == 2)
193
                snd_play_x(motor_swing_down, 1, 1.2);
194
            if (image_index >= 2 && image_index <= 3)
195
            {
196
                repeat (2)
197
                {
198
                    if (shootcount < 5)
199
                    {
200
                        bullet[shootcount] = instance_create(x + bx1[shootcount], y + by1[shootcount], obj_werewire_bullet_lasersquare);
201
                        bullet[shootcount].damage = global.monsterat[myself] * 5;
202
                        bullet[shootcount].target = mytarget;
203
                        bullet[shootcount].sprite_index = spr_bullet_werewire_spark;
204
                        bullet[shootcount].stretch = 0;
205
                        bullet[shootcount].image_speed = 0.2;
206
                        bullet[shootcount].image_xscale = 4;
207
                        bullet[shootcount].image_yscale = 4;
208
                        bullet[shootcount].direction = (bullet_angle - 28) + (shootcount * 14);
209
                        bullet[shootcount].image_angle = bullet[shootcount].direction;
210
                        bullet[shootcount].speed = 9;
211
                        bullet[shootcount].friction = 1;
212
                        shootcount += 1;
213
                    }
214
                }
215
            }
216
            if (image_index >= 4)
217
            {
218
                for (i = 0; i < 5; i += 1)
219
                {
220
                    with (bullet[i])
221
                    {
222
                        if (speed <= 0)
223
                            speed = 0.2;
224
                        friction = -0.25;
225
                    }
226
                }
227
                shootcon = 0;
228
                image_index = 0;
229
                sprite_index = spr_werewerewire_idle;
230
                image_speed = 0.16;
231
                stop_anim = 0;
232
            }
233
        }
234
    }
235
    if (hangcon == 1)
236
    {
237
        hangvspeed -= (1 * m);
238
        hangy += hangvspeed;
239
        if ((y + hangy) <= (__view_get(e__VW.YView, 0) + 60))
240
        {
241
            hangcon = 2;
242
            hangtimer = 0;
243
        }
244
    }
245
    if (hangcon == 2)
246
    {
247
        hangy += hangvspeed;
248
        if (abs(hangvspeed) >= 0)
249
            hangvspeed *= 0.5;
250
        if (abs(hangvspeed) <= 1)
251
        {
252
            hangvspeed = 0;
253
            hangcon = 3;
254
        }
255
    }
256
    if (hangcon >= 1 && hangcon <= 3)
257
    {
258
        if (xmovement_finished == 0)
259
        {
260
            x -= ((x - targetx) / (6 * m));
261
            if (x <= (targetx + 2))
262
            {
263
                x = targetx;
264
                xmovement_finished = 1;
265
            }
266
        }
267
    }
268
    if (hangcon == 3)
269
    {
270
        if (xmovement_finished == 1)
271
            hangcon = 4;
272
    }
273
    if (hangcon >= 2 && hangcon < 5 && global.turntimer >= 30)
274
    {
275
        hangsparktimer++;
276
        if (hangsparktimer >= 20)
277
        {
278
            hangsparktimer = 0;
279
            shootcount = 0;
280
            d = instance_create(x + hangx, y + hangy + 80, obj_werewerewire_laserbullet_v);
281
            d.damage = global.monsterat[myself] * 5;
282
            d.target = mytarget;
283
            d.attackdirection = irandom(2);
284
        }
285
    }
286
    if (hangcon == 4)
287
    {
288
        hangsiner += (1 * m);
289
        x += (sin(hangsiner / 12) * 3);
290
        if (global.turntimer <= 20)
291
            hangcon = 5;
292
    }
293
    if (hangcon == 5)
294
    {
295
        hangy -= ((hangy - init_hangy) / (8 / m));
296
        if (hangy >= (init_hangy - 4))
297
            hangy = init_hangy;
298
        x -= (((x - remx) / (8 / m)) - 1);
299
        if (x >= (remx - 1))
300
            x = remx;
301
        if (hangy == init_hangy && x == remx)
302
        {
303
            hangcon = 0;
304
            sprite_index = spr_werewerewire_idle;
305
        }
306
    }
307
}
308
if (global.myfight == 3)
309
{
310
    xx = __view_get(e__VW.XView, 0);
311
    yy = __view_get(e__VW.YView, 0);
312
    if (acting == 1 && actcon == 0)
313
    {
314
        actcon = 1;
315
        msgsetloc(0, 
* WEREWEREWIRE - It absorbed the wire and became stronger. Be careful!Wait for inputClose Message
"* WEREWEREWIRE - It absorbed the wire and became stronger. Be careful!/%", "obj_werewerewire_enemy_slash_Step_0_gml_377_0"
);
316
        
scr_battletext_default
scr_battletext_default

function
scr_battletext_default()
{ global.fc = 0; global.typer = 4;
scr_battletext();
return battlewriter; }
();
317
    }
318
    if (acting == 2 && actcon == 0)
319
    {
320
        var mercy_amount = (simultotal == 1) ? 12 : 7;
321
        
scr_mercyadd
scr_mercyadd

function
scr_mercyadd(arg0, arg1)
{ global.mercymod[arg0] += arg1; if (global.mercymod[arg0] < 0) global.mercymod[arg0] = 0; if (global.mercymod[arg0] >= 100) global.mercymod[arg0] = 100; var _playsound = 1; if (arg1 <= 0) _playsound = 0; if (i_ex(obj_dmgwriter)) { with (obj_dmgwriter) { if (type == 5) _playsound = 0; } } if (_playsound) { var _pitch = 0.8; if (arg1 < 99) _pitch = 1; if (arg1 <= 50) _pitch = 1.2; if (arg1 <= 25) _pitch = 1.4; snd_play_x(snd_mercyadd, 0.8, _pitch); } __mercydmgwriter = instance_create(global.monsterx[arg0], (global.monstery[arg0] + 20) - (global.hittarget[arg0] * 20), obj_dmgwriter); __mercydmgwriter.damage = arg1; __mercydmgwriter.type = 5; global.hittarget[arg0]++; }
(myself, mercy_amount * mercy_act);
322
        var simultext = (simultotal == 1) ? stringsetloc(
* You and Werewerewire locked eyes. The atmosphere is electric...Wait for inputClose Message
"* You and Werewerewire locked eyes. The atmosphere is electric.../%", "obj_werewerewire_enemy_slash_Step_0_gml_383_0"
) : stringsetloc(
* You watched coldly.Wait for inputClose Message
"* You watched coldly./%", "obj_werewerewire_enemy_slash_Step_0_gml_383_1"
);
323
        msgset(0, simultext);
324
        
scr_simultext
scr_simultext

function
scr_simultext(arg0)
{ __simulorder = 0; if (arg0 == "kris") __simulorder = simulorderkri; if (arg0 == "susie") __simulorder = simulordersus; if (arg0 == "ralsei") __simulorder = simulorderral; if (arg0 == "noelle") __simulorder = simulordernoe; __yoffset = __simulorder * 30; global.typer = 4; battlewriter = instance_create(xx + 30, yy + 376 + __yoffset, obj_writer); }
("kris");
325
        actcon = (simulorderkri == 0) ? 20 : 1;
326
    }
327
    if (acting == 3 && actcon == 0)
328
    {
329
        
scr_mercyadd
scr_mercyadd

function
scr_mercyadd(arg0, arg1)
{ global.mercymod[arg0] += arg1; if (global.mercymod[arg0] < 0) global.mercymod[arg0] = 0; if (global.mercymod[arg0] >= 100) global.mercymod[arg0] = 100; var _playsound = 1; if (arg1 <= 0) _playsound = 0; if (i_ex(obj_dmgwriter)) { with (obj_dmgwriter) { if (type == 5) _playsound = 0; } } if (_playsound) { var _pitch = 0.8; if (arg1 < 99) _pitch = 1; if (arg1 <= 50) _pitch = 1.2; if (arg1 <= 25) _pitch = 1.4; snd_play_x(snd_mercyadd, 0.8, _pitch); } __mercydmgwriter = instance_create(global.monsterx[arg0], (global.monstery[arg0] + 20) - (global.hittarget[arg0] * 20), obj_dmgwriter); __mercydmgwriter.damage = arg1; __mercydmgwriter.type = 5; global.hittarget[arg0]++; }
(myself, 16 * mercy_act);
330
        
scr_speaker
scr_speaker

function
scr_speaker(arg0)
{ _speaker = arg0; global.typer = 5; if (global.darkzone == 1) global.typer = 6; if (global.fighting == 1) global.typer = 4; global.fc = 0; global.fe = 0; if (_speaker == "silent" && global.darkzone == 0) global.typer = 2; if (_speaker == "silent" && global.darkzone == 1) global.typer = 36; if (_speaker == "balloon" || _speaker == "enemy") global.typer = 50; if (_speaker == "sans") { global.typer = 14; global.fc = 6; } if (_speaker == "undyne" || _speaker == "und") { global.typer = 17; global.fc = 9; } if (_speaker == "temmie" || _speaker == "tem") global.typer = 21; if (_speaker == "jevil") global.typer = 35; if (_speaker == "catti") global.fc = 13; if (_speaker == "jockington" || _speaker == "joc") global.fc = 14; if (_speaker == "catty" || _speaker == "caddy") global.fc = 16; if (_speaker == "bratty" || _speaker == "bra") global.fc = 17; if (_speaker == "rouxls" || _speaker == "rou") global.fc = 18; if (_speaker == "burgerpants" || _speaker == "bur") global.fc = 19; if (_speaker == "spamton") { if (global.fighting == 0) global.typer = 66; else global.typer = 68; } if (_speaker == "sneo") global.typer = 67; if (_speaker == "susie" || _speaker == "sus") { global.fc = 1; global.typer = 10; if (global.darkzone == 1) { global.typer = 30; if (global.fighting == 1) global.typer = 47; } } if (_speaker == "ralsei" || _speaker == "ral") { global.fc = 2; global.typer = 31; if (global.fighting == 1) global.typer = 45; if (global.flag[30 ralsei_hat_state] == 1) global.typer = 6; } if (_speaker == "noelle" || _speaker == "noe") { global.fc = 3; if (global.darkzone == 0) global.typer = 12; else global.typer = 56; if (global.fighting == 1) global.typer = 59; } if (_speaker == "toriel" || _speaker == "tor") { global.fc = 4; global.typer = 7; } if (_speaker == "asgore" || _speaker == "asg") { global.fc = 10; global.typer = 18; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; if (global.chapter == 1) { if (global.plot < 235) global.typer = 36; } if (global.fighting == 1) ...
("no_name");
331
        msgsetloc(0, 
* You and Susie told Werewerewire you'd beat them up!Wait for input
"* You and Susie told Werewerewire you'd beat them up!/", "obj_werewerewire_enemy_slash_Step_0_gml_393_0"
);
332
        msgnextloc(
* The air crackles with fighting spirit!Wait for inputClose Message
"* The air crackles with fighting spirit!/%", "obj_werewerewire_enemy_slash_Step_0_gml_394_0"
);
333
        
scr_battletext_default
scr_battletext_default

function
scr_battletext_default()
{ global.fc = 0; global.typer = 4;
scr_battletext();
return battlewriter; }
();
334
        actcon = 1;
335
    }
336
    if (acting == 4 && actcon == 0)
337
    {
338
        
scr_mercyadd
scr_mercyadd

function
scr_mercyadd(arg0, arg1)
{ global.mercymod[arg0] += arg1; if (global.mercymod[arg0] < 0) global.mercymod[arg0] = 0; if (global.mercymod[arg0] >= 100) global.mercymod[arg0] = 100; var _playsound = 1; if (arg1 <= 0) _playsound = 0; if (i_ex(obj_dmgwriter)) { with (obj_dmgwriter) { if (type == 5) _playsound = 0; } } if (_playsound) { var _pitch = 0.8; if (arg1 < 99) _pitch = 1; if (arg1 <= 50) _pitch = 1.2; if (arg1 <= 25) _pitch = 1.4; snd_play_x(snd_mercyadd, 0.8, _pitch); } __mercydmgwriter = instance_create(global.monsterx[arg0], (global.monstery[arg0] + 20) - (global.hittarget[arg0] * 20), obj_dmgwriter); __mercydmgwriter.damage = arg1; __mercydmgwriter.type = 5; global.hittarget[arg0]++; }
(myself, 5 * mercy_act);
339
        with (obj_werewerewire_enemy)
340
            mercy_act = clamp(mercy_act + 1, 1, 10);
341
        
scr_speaker
scr_speaker

function
scr_speaker(arg0)
{ _speaker = arg0; global.typer = 5; if (global.darkzone == 1) global.typer = 6; if (global.fighting == 1) global.typer = 4; global.fc = 0; global.fe = 0; if (_speaker == "silent" && global.darkzone == 0) global.typer = 2; if (_speaker == "silent" && global.darkzone == 1) global.typer = 36; if (_speaker == "balloon" || _speaker == "enemy") global.typer = 50; if (_speaker == "sans") { global.typer = 14; global.fc = 6; } if (_speaker == "undyne" || _speaker == "und") { global.typer = 17; global.fc = 9; } if (_speaker == "temmie" || _speaker == "tem") global.typer = 21; if (_speaker == "jevil") global.typer = 35; if (_speaker == "catti") global.fc = 13; if (_speaker == "jockington" || _speaker == "joc") global.fc = 14; if (_speaker == "catty" || _speaker == "caddy") global.fc = 16; if (_speaker == "bratty" || _speaker == "bra") global.fc = 17; if (_speaker == "rouxls" || _speaker == "rou") global.fc = 18; if (_speaker == "burgerpants" || _speaker == "bur") global.fc = 19; if (_speaker == "spamton") { if (global.fighting == 0) global.typer = 66; else global.typer = 68; } if (_speaker == "sneo") global.typer = 67; if (_speaker == "susie" || _speaker == "sus") { global.fc = 1; global.typer = 10; if (global.darkzone == 1) { global.typer = 30; if (global.fighting == 1) global.typer = 47; } } if (_speaker == "ralsei" || _speaker == "ral") { global.fc = 2; global.typer = 31; if (global.fighting == 1) global.typer = 45; if (global.flag[30 ralsei_hat_state] == 1) global.typer = 6; } if (_speaker == "noelle" || _speaker == "noe") { global.fc = 3; if (global.darkzone == 0) global.typer = 12; else global.typer = 56; if (global.fighting == 1) global.typer = 59; } if (_speaker == "toriel" || _speaker == "tor") { global.fc = 4; global.typer = 7; } if (_speaker == "asgore" || _speaker == "asg") { global.fc = 10; global.typer = 18; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; if (global.chapter == 1) { if (global.plot < 235) global.typer = 36; } if (global.fighting == 1) ...
("no_name");
342
        msgsetloc(0, 
* You and Ralsei whispered sweetly to Werewerewire!Wait for input
"* You and Ralsei whispered sweetly to Werewerewire!/", "obj_werewerewire_enemy_slash_Step_0_gml_408_0"
);
343
        msgnextloc(
* It pretended not to care,Delay 11 but ACTs became more effective!Wait for inputClose Message
"* It pretended not to care^1, but ACTs became more effective!/%", "obj_werewerewire_enemy_slash_Step_0_gml_409_0"
);
344
        
scr_battletext_default
scr_battletext_default

function
scr_battletext_default()
{ global.fc = 0; global.typer = 4;
scr_battletext();
return battlewriter; }
();
345
        actcon = 1;
346
    }
347
    if (actingsus == 1 && actconsus == 1)
348
    {
349
        var mercy_amount = (simultotal == 1) ? 12 : 7;
350
        
scr_mercyadd
scr_mercyadd

function
scr_mercyadd(arg0, arg1)
{ global.mercymod[arg0] += arg1; if (global.mercymod[arg0] < 0) global.mercymod[arg0] = 0; if (global.mercymod[arg0] >= 100) global.mercymod[arg0] = 100; var _playsound = 1; if (arg1 <= 0) _playsound = 0; if (i_ex(obj_dmgwriter)) { with (obj_dmgwriter) { if (type == 5) _playsound = 0; } } if (_playsound) { var _pitch = 0.8; if (arg1 < 99) _pitch = 1; if (arg1 <= 50) _pitch = 1.2; if (arg1 <= 25) _pitch = 1.4; snd_play_x(snd_mercyadd, 0.8, _pitch); } __mercydmgwriter = instance_create(global.monsterx[arg0], (global.monstery[arg0] + 20) - (global.hittarget[arg0] * 20), obj_dmgwriter); __mercydmgwriter.damage = arg1; __mercydmgwriter.type = 5; global.hittarget[arg0]++; }
(myself, mercy_amount * mercy_act);
351
        var simultext = (choose(0, 1) == 0) ? stringsetloc(
* Susie snorted "tch!"Wait for inputClose Message
"* Susie snorted \"tch!\"/%", "obj_werewerewire_enemy_slash_Step_0_gml_412_0"
) : stringsetloc(
* Susie laughed "heh!"Wait for inputClose Message
"* Susie laughed \"heh!\"/%", "obj_werewerewire_enemy_slash_Step_0_gml_412_1"
);
352
        msgset(0, simultext);
353
        
scr_simultext
scr_simultext

function
scr_simultext(arg0)
{ __simulorder = 0; if (arg0 == "kris") __simulorder = simulorderkri; if (arg0 == "susie") __simulorder = simulordersus; if (arg0 == "ralsei") __simulorder = simulorderral; if (arg0 == "noelle") __simulorder = simulordernoe; __yoffset = __simulorder * 30; global.typer = 4; battlewriter = instance_create(xx + 30, yy + 376 + __yoffset, obj_writer); }
("susie");
354
        actconsus = (simulordersus == 0) ? 20 : 0;
355
    }
356
    if (actingral == 1 && actconral == 1)
357
    {
358
        var mercy_amount = (simultotal == 1) ? 12 : 7;
359
        
scr_mercyadd
scr_mercyadd

function
scr_mercyadd(arg0, arg1)
{ global.mercymod[arg0] += arg1; if (global.mercymod[arg0] < 0) global.mercymod[arg0] = 0; if (global.mercymod[arg0] >= 100) global.mercymod[arg0] = 100; var _playsound = 1; if (arg1 <= 0) _playsound = 0; if (i_ex(obj_dmgwriter)) { with (obj_dmgwriter) { if (type == 5) _playsound = 0; } } if (_playsound) { var _pitch = 0.8; if (arg1 < 99) _pitch = 1; if (arg1 <= 50) _pitch = 1.2; if (arg1 <= 25) _pitch = 1.4; snd_play_x(snd_mercyadd, 0.8, _pitch); } __mercydmgwriter = instance_create(global.monsterx[arg0], (global.monstery[arg0] + 20) - (global.hittarget[arg0] * 20), obj_dmgwriter); __mercydmgwriter.damage = arg1; __mercydmgwriter.type = 5; global.hittarget[arg0]++; }
(myself, mercy_amount * mercy_act);
360
        var simultext = (choose(0, 1) == 0) ? stringsetloc(
* Ralsei winks demurely!Wait for inputClose Message
"* Ralsei winks demurely!/%", "obj_werewerewire_enemy_slash_Step_0_gml_424_0"
) : stringsetloc(
* Ralsei smiled sweetly!Wait for inputClose Message
"* Ralsei smiled sweetly!/%", "obj_werewerewire_enemy_slash_Step_0_gml_424_1"
);
361
        msgset(0, simultext);
362
        
scr_simultext
scr_simultext

function
scr_simultext(arg0)
{ __simulorder = 0; if (arg0 == "kris") __simulorder = simulorderkri; if (arg0 == "susie") __simulorder = simulordersus; if (arg0 == "ralsei") __simulorder = simulorderral; if (arg0 == "noelle") __simulorder = simulordernoe; __yoffset = __simulorder * 30; global.typer = 4; battlewriter = instance_create(xx + 30, yy + 376 + __yoffset, obj_writer); }
("ralsei");
363
        actconral = (simulorderral == 0) ? 20 : 0;
364
    }
365
    if (actcon == 1 && !instance_exists(obj_writer))
366
    {
367
        
scr_act_charsprite_end
scr_act_charsprite_end

function
scr_act_charsprite_end()
{ for (i = 0; i < 10; i++) { with (_charactsprite[i]) instance_destroy(); } with (obj_heroparent) { if (image_alpha == 0) { image_alpha = 1; acttimer = 0; state = 0; global.faceaction[myself] = 0; } } }
();
368
        
scr_nextact
scr_nextact

function
scr_nextact()
{ global.acting[0] = 0; global.acting[1] = 0; global.acting[2] = 0; global.actingsingle[global.currentactingchar] = 0; __minstance = global.monsterinstance[global.actingtarget[global.currentactingchar]]; with (__minstance) { acting = 0; actcon = 0; actconsus = 0; actconral = 0; actconnoe = 0; } var singleactcomplete = 0; while (global.currentactingchar < 3) { global.currentactingchar++; if (global.currentactingchar < 3) { if (global.actingsingle[global.currentactingchar] == 1) { __minstance = global.monsterinstance[global.actingtarget[global.currentactingchar]]; if (global.char[global.currentactingchar] == 2) { with (__minstance) actconsus = 1; if (global.actingsimul[global.currentactingchar] == 0) singleactcomplete = 1; break; } if (global.char[global.currentactingchar] == 3) { with (__minstance) actconral = 1; if (global.actingsimul[global.currentactingchar] == 0) singleactcomplete = 1; break; } if (global.char[global.currentactingchar] == 4) { with (__minstance) actconnoe = 1; if (global.actingsimul[global.currentactingchar] == 0) singleactcomplete = 1; break; } } } } if (global.currentactingchar >= 3) { with (obj_monsterparent) { acting = 0; actingsus = 0; actingral = 0; actingnoe = 0; } global.currentactingchar = 0;
scr_attackphase();
} else if (!singleactcomplete) {
scr_act_simul();
} }
();
369
    }
370
    if (actcon == 20 || actconsus == 20 || actconral == 20)
371
    {
372
        if (
scr_terminate_writer
scr_terminate_writer

function
scr_terminate_writer()
{ __writerkilled = 0; __writerkillable = 0; __writerended = 0; if (instance_exists(obj_writer)) { obj_writer.__endcheckid = id; with (obj_writer) { if (reachedend == 1) { with (__endcheckid) __writerended++; } } if (__writerended == instance_number(obj_writer)) __writerkillable = 1; } else { __writerkilled = 1; } if (button1_p() && __writerkillable == 1) { with (obj_writer) instance_destroy(); __writerkilled = 1; } return __writerkilled; }
())
373
        {
374
            actconsus = -1;
375
            actconral = -1;
376
            actcon = 1;
377
        }
378
    }
379
}
380
381
enum e__VW
382
{
383
    XView,
384
    YView,
385
    WView,
386
    HView,
387
    Angle,
388
    HBorder,
389
    VBorder,
390
    HSpeed,
391
    VSpeed,
392
    Object,
393
    Visible,
394
    XPort,
395
    YPort,
396
    WPort,
397
    HPort,
398
    Camera,
399
    SurfaceID
400
}