Deltarune (Chapter 2) script viewer

← back to main script listing

gml_Object_obj_dojo_spareenemy_Step_0

(view raw script w/o annotations or w/e)
1
if (ambushed == 0)
2
{
3
    scr_ambush
scr_ambush

function scr_ambush() { with (obj_writer) instance_destroy(); with (obj_face) instance_destroy(); global.charturn = 3; global.mnfight = 1; global.myfight = -1; with (obj_monsterparent) ambushed = 1; }
();
4
    ambushed = 1;
5
}
6
if (global.monster[myself] == 1)
7
{
8
    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)
9
    {
10
        global.typer = 50;
11
        if (checkreact == true)
12
        {
13
            checkreact = false;
14
            msgsetloc(0, 
Face 2Boss!Delay 11 Don't listen to
that!Delay 11 That's the wrong
ACT!!Delay 11 The wrong ACT!!Delay 11Wait for inputClose Message
"\\M2Boss^1! Don't listen to&that^1! That's the wrong&ACT!^1! The wrong ACT!^1!/%", "obj_dojo_spareenemy_slash_Step_0_gml_19_0"
);
15
        }
16
        else if (sparecon == 1)
17
        {
18
            msgsetloc(0, 
Ohhhh, boss,
you're sparing
me!?Wait for inputClose Message
"Ohhhh, boss,&you're sparing&me!?/%", "obj_dojo_spareenemy_slash_Step_0_gml_23_0"
);
19
        }
20
        else if (pacifycon == 1)
21
        {
22
            msgsetloc(0, 
You did it, Boss!
Delay 11If you can manage to SPARE enemies right away...Wait for input
"You did it, Boss!^1&If you can manage to SPARE enemies right away.../", "obj_dojo_spareenemy_slash_Step_0_gml_27_0"
);
23
            msgnextloc(
Battles will go
a lot faster!
That's all!Wait for inputClose Message
"Battles will go&a lot faster!&That's all!/%", "obj_dojo_spareenemy_slash_Step_0_gml_28_0"
);
24
        }
25
        else if (battlestate == 0)
26
        {
27
            msgsetloc(0, 
Boss!Wait for input
"Boss!/", "obj_dojo_spareenemy_slash_Step_0_gml_32_0"
);
28
            msgnextloc(
You can ACT
and SPARE on
the same turn!Wait for input
"You can ACT&and SPARE on&the same turn!/", "obj_dojo_spareenemy_slash_Step_0_gml_33_0"
);
29
            msgnextloc(
If you know Kris's
ACT will give an
enemy 100% mercy...Wait for input
"If you know Kris's&ACT will give an&enemy 100`% mercy.../", "obj_dojo_spareenemy_slash_Step_0_gml_34_0"
);
30
            msgnextloc(
SPARE them on
the same turn
with Susie
or Ralsei!Wait for inputClose Message
"SPARE them on&the same turn&with Susie&or Ralsei!/%", "obj_dojo_spareenemy_slash_Step_0_gml_35_0"
);
31
            battlestate = 1;
32
        }
33
        else if (battlestate <= 1)
34
        {
35
            global.battlemsg[0] = stringsetloc(
* Jigsaw Joe looks vulnerable to ACTING and SPARING on the same turn.
"* Jigsaw Joe looks vulnerable to ACTING and SPARING on the same turn.", "obj_dojo_spareenemy_slash_Step_0_gml_40_0"
);
36
            if (sparecon == -1)
37
            {
38
                if (beardcount < 99)
39
                    beardcount++;
40
                msgsetsubloc(0, "\\M2Ah!! It's my&~1 o'clock shadow!/%", string(beardcount), "obj_dojo_spareenemy_slash_Step_0_gml_44_0");
41
                sparecon = 0;
42
            }
43
            else if (global.mercymod[myself] > 0)
44
            {
45
                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, -global.mercymod[myself]);
46
                shaved = false;
47
                msgsetloc(0, 
Face 1* Jigsaw Joe's stubble regrew!Wait for inputClose Message
"\\M1* Jigsaw Joe's stubble regrew!/%", "obj_dojo_spareenemy_slash_Step_0_gml_51_0"
);
48
                scr_battletext_default
scr_battletext_default

function scr_battletext_default() { global.fc = 0; global.typer = 4; scr_battletext(); return battlewriter; }
();
49
                sparecon = -1;
50
            }
51
            else
52
            {
53
                msgsetloc(0, 
Boss!Delay 11
You gotta ACT
and SPARE on
the same turn!Wait for inputClose Message
"Boss^1!&You gotta ACT&and SPARE on&the same turn!/%", "obj_dojo_spareenemy_slash_Step_0_gml_56_0"
);
54
            }
55
        }
56
        else if (battlestate == 2)
57
        {
58
            global.battlemsg[0] = stringsetloc(
* Jigsaw Joe looks like he could use a bedtime story.
"* Jigsaw Joe looks like he could use a bedtime story.", "obj_dojo_spareenemy_slash_Step_0_gml_60_0"
);
59
            global.mercymod[myself] = 0;
60
            msgsetloc(0, 
Face 2WAIT A SECOND!!!
Delay 11I got something else
to remind you of!Wait for input
"\\M2WAIT A SECOND!!!^1&I got something else&to remind you of!/", "obj_dojo_spareenemy_slash_Step_0_gml_63_0"
);
61
            msgnextloc(
Face 0Boss!Wait for input
"\\M0Boss!/", "obj_dojo_spareenemy_slash_Step_0_gml_64_0"
);
62
            msgnextloc(
It works the
same with making
an enemy TIRED!Wait for input
"It works the&same with making&an enemy TIRED!/", "obj_dojo_spareenemy_slash_Step_0_gml_65_0"
);
63
            msgnextloc(
If an ACT
will make an
enemy TIRED...Wait for input
"If an ACT&will make an&enemy TIRED.../", "obj_dojo_spareenemy_slash_Step_0_gml_66_0"
);
64
            if (global.tension >= 40)
65
            {
66
                msgnextloc(
Use Ralsei's PACIFY
right away!Wait for inputClose Message
"Use Ralsei's PACIFY&right away!/%", "obj_dojo_spareenemy_slash_Step_0_gml_67_0"
);
67
            }
68
            else
69
            {
70
                msgnextloc(
Use Ralsei's PACIFY
right away!Wait for input
"Use Ralsei's PACIFY&right away!/", "obj_dojo_spareenemy_slash_Step_0_gml_74_0"
);
71
                msgnextloc(
Of course, PACIFY is MAGIC,
so you'll need TP.Wait for input
"Of course, PACIFY is MAGIC,&so you'll need TP./", "obj_dojo_spareenemy_slash_Step_0_gml_75_0"
);
72
                msgnextloc(
Spend a turn
DEFENDING to gain TP
if you have to, boss!Wait for inputClose Message
"Spend a turn&DEFENDING to gain TP&if you have to, boss!/%", "obj_dojo_spareenemy_slash_Step_0_gml_76_0"
);
73
            }
74
            battlestate = 3;
75
            global.actactor[myself][1] = 2;
76
            global.actname[myself][1] = stringsetloc(
SleepyStory
"SleepyStory", "obj_dojo_spareenemy_slash_Step_0_gml_70_0"
);
77
            global.actdesc[myself][1] = " ";
78
            global.actsimul[myself][1] = 1;
79
        }
80
        else if (battlestate == 3)
81
        {
82
            if (global.monsterstatus[myself] == 1)
83
            {
84
                pacifycon = -1;
85
                global.monstercomment[myself] = stringsetloc("", "obj_dojo_spareenemy_slash_Step_0_gml_79_0");
86
                global.monsterstatus[myself] = 0;
87
                image_speed *= 2;
88
                msgsetloc(0, 
* Jigsaw Joe drank coffee!Delay 11 Jigsaw Joe stopped being TIRED!Wait for inputClose Message
"* Jigsaw Joe drank coffee^1! Jigsaw Joe stopped being TIRED!/%", "obj_dojo_spareenemy_slash_Step_0_gml_82_0"
);
89
                scr_battletext_default
scr_battletext_default

function scr_battletext_default() { global.fc = 0; global.typer = 4; scr_battletext(); return battlewriter; }
();
90
            }
91
            else
92
            {
93
                pacifycon = 0;
94
                if (global.tension < 40 && pacifycon != -2)
95
                    msgsetloc(0, 
Boss!Delay 11 If you don't
have the TP to use
PACIFY,Delay 11 DEFENDing
will give you TP!Wait for inputClose Message
"Boss^1! If you don't&have the TP to use&PACIFY^1, DEFENDing&will give you TP!/%", "obj_dojo_spareenemy_slash_Step_0_gml_89_0"
);
96
                else
97
                    msgsetloc(0, 
Boss!Delay 11 You're putting me
to SLEEP!Delay 11 I mean, you
AREN'T!Delay 11 Make me TIRED
and PACIFY me, boss!Wait for inputClose Message
"Boss^1! You're putting me&to SLEEP^1! I mean, you&AREN'T^1! Make me TIRED&and PACIFY me, boss!/%", "obj_dojo_spareenemy_slash_Step_0_gml_91_0"
);
98
            }
99
        }
100
        else
101
        {
102
            msgsetloc(0, 
Boss!!Wait for inputClose Message
"Boss!!/%", "obj_dojo_spareenemy_slash_Step_0_gml_95_0"
);
103
        }
104
        if (sparecon != -1 && pacifycon != -1)
105
            scr_enemyblcon
scr_enemyblcon

function scr_enemyblcon(arg0, arg1, arg2) { if (arg2 == 0) { mywriter = instance_create(arg0, arg1, obj_writer); return mywriter; } if (arg2 == 1) { myblcon = instance_create(arg0, arg1, obj_battleblcon); return myblcon; } if (arg2 == 2) { myblcon = instance_create(arg0, arg1, obj_battleblcon); myblcon.sprite_index = spr_battleblcon_v; return myblcon; } if (arg2 == 3) { myblcon = instance_create(arg0, arg1, obj_battleblcon); myblcon.sprite_index = spr_battleblcon_long; return myblcon; } if (arg2 == 4) { myblcon = instance_create(arg0, arg1, obj_battleblcon); myblcon.sprite_index = spr_battleblcon_clubs; myblcon.image_index = 0; myblcon.image_speed = 0; return myblcon; } if (arg2 == 5) { myblcon = instance_create(arg0, arg1, obj_battleblcon); myblcon.sprite_index = spr_battleblcon_clubs; myblcon.image_index = 1; myblcon.image_speed = 0; return myblcon; } if (arg2 == 6) { myblcon = instance_create(arg0, arg1, obj_battleblcon); myblcon.sprite_index = spr_battleblcon_clubs; myblcon.image_index = 2; myblcon.image_speed = 0; return myblcon; } if (arg2 == 7) { myblcon = instance_create(arg0, arg1, obj_battleblcon); myblcon.sprite_index = spr_battleblcon_long_r; myblcon.image_index = 2; myblcon.image_speed = 0; return myblcon; } if (arg2 == 8) { myblcon = instance_create(arg0, arg1, obj_battleblcon); myblcon.sprite_index = spr_battleblcon_long_tall; return myblcon; } if (arg2 == 10) { myblcon = instance_create(arg0, arg1, obj_battleblcon); myblcon.sprite_index = spr_battleblcon_long; myblcon.auto_length = 1; return myblcon; } }
(x - 10, y + 30, 10);
106
        if (pacifycon == -1)
107
            talked = -1;
108
        else
109
            talked = 1;
110
        talktimer = 0;
111
    }
112
    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"))
113
    {
114
        if (talktimer < 15)
115
            talktimer++;
116
        else if (!instance_exists(obj_writer))
117
            talked = 0;
118
    }
119
    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"))
120
    {
121
        rtimer = 0;
122
        if (talktimer < 15)
123
            talktimer++;
124
        if (!instance_exists(obj_writer) && talktimer >= 15)
125
        {
126
            global.flag[20 manual_face_sprite] = 0;
127
            if (sparecon == -1)
128
            {
129
                talked = 0;
130
                exit;
131
            }
132
            if (sparecon == 1)
133
            {
134
                sparecon = 0;
135
                scr_fakespare
scr_fakespare

function scr_fakespare() { spareanim = instance_create(x, y, obj_fakespare); spareanim.sprite_index = sprite_index; spareanim.sprite_index = sparedsprite; spareanim.image_index = 0; spareanim.image_xscale = image_xscale; spareanim.image_yscale = image_yscale; spareanim.original = self; visible = false; }
();
136
                battlestate = 2;
137
                fakespare = 1;
138
                alarm[0] = 90;
139
                talked = 0;
140
                global.mnfight = 8;
141
                global.mercymod[myself] = 0;
142
            }
143
            else if (pacifycon == 1)
144
            {
145
                scr_spareanim
scr_spareanim

function scr_spareanim() { spareanim = instance_create(x, y, obj_spareanim); spareanim.sprite_index = sprite_index; spareanim.sprite_index = sparedsprite; spareanim.image_index = 0; spareanim.image_xscale = image_xscale; spareanim.image_yscale = image_yscale; }
();
146
                scr_recruit
scr_recruit

function scr_recruit() { if (recruitable == 1 && global.flag[61 disable_recruiting] == 0) { if (global.flag[global.monstertype[myself] + 600] >= 0(None) && global.flag[global.monstertype[myself] + 600] < 1 && recruitcount > 0) { if (recruitcount == -1) { scr_recruit_info(global.monstertype[myself]); recruitcount = _recruitcount; } global.flag[global.monstertype[myself] + 600] += 1Enemy (placeholder/G-BODY) / recruitcount; if (global.flag[global.monstertype[myself] + 600] > 1) global.flag[global.monstertype[myself] + 600] = 1Enemy (placeholder/G-BODY); snd_play(snd_sparkle_gem); _recruitanim = instance_create(global.monsterx[myself], global.monstery[myself] - 40, obj_recruitanim); _recruitanim.firstnumber = round(global.flag[global.monstertype[myself] + 600] / (1 / recruitcount)); _recruitanim.secondnumber = recruitcount; } } }
();
147
                scr_monsterdefeat
scr_monsterdefeat

function scr_monsterdefeat() { if (global.monster[myself] == 1) { global.monstergold[3] += global.monstergold[myself]; global.monsterexp[3] += global.monsterexp[myself]; global.monster[myself] = 0; if (global.flag[51 + myself] == 0) { global.flag[51 + myself] = 2; if (global.monsterhp[myself] <= 0) global.flag[51 + myself] = 1; } if (global.flag[51 + myself] == 1) { global.flag[40 violences] += 1; if (fatal == 1) global.flag[44 kills]++; } if (global.flag[51 + myself] == 2) global.flag[41 spares] += 1; if (global.flag[51 + myself] == 3) global.flag[42 pacifies] += 1; if (global.flag[51 + myself] == 5) global.flag[43 autosusie_violences] += 1; if (global.flag[51 + myself] == 6) { global.flag[45 freezes] += 1; global.monstergold[3] += 24; } if (scr_monsterpop() == 0) { _amt_add = 0; _frozened = 0; _violenced = 0; _spared = 0; _pacified = 0; for (d_i = 0; d_i < 3; d_i += 1) { if (global.flag[51 + d_i] != 0) _amt_add += 1; if (global.flag[51 + d_i] == 1) _violenced += 1; if (global.flag[51 + d_i] == 2) _spared += 1; if (global.flag[51 + d_i] == 3) _pacified += 1; if (global.flag[51 + d_i] == 6) _frozened += 1; } if (_frozened > 0) global.flag[50 last_encounter_end] = 6; if (_pacified > 0) global.flag[50 last_encounter_end] = 3; if (_spared > 0) global.flag[50 last_encounter_end] = 2; if (_violenced > 0) global.flag[50 last_encounter_end] = 1; if (_frozened > 0) { if (_pacified > 0 || _violenced > 0 || _spared > 0) global.flag[50 last_encounter_end] = 1; } if (global.flag[50 last_encounter_end] == 6) global.flag[926 iceshocked_encounters]++; if (global.flag[54 encounter_pointer] != 0) { global.flag[global.flag[54 encounter_pointer]] = global.flag[50 last_encounter_end]; global.flag[54 encounter_pointer] = 0; } } event_user(11); } }
();
148
                instance_destroy();
149
                scr_mnendturn
scr_mnendturn

function scr_mnendturn() { if (global.char[0] == 2) sus = 0; if (global.char[1] == 2) sus = 1; if (global.char[2] == 2) sus = 2; techwon = 0; if (scr_monsterpop() == 0) techwon = 1; if (global.flag[39 dojo_abort?] == 1) techwon = 1; if (techwon == 1) scr_wincombat(); if (techwon == 0) { with (obj_battlecontroller) { messagepriority = -1; attackpriority = -1; } scr_battlecursor_memory_reset(); global.mnfight = 0; global.myfight = 0; global.bmenuno = 0; global.charturn = 0; skip = 0; for (i = 0; i < 3; i += 1) { global.hittarget[i] = 0; with (global.charinstance[i]) tu = 0; hptarget = global.char[i]; if (global.char[i] != 0 && global.hp[hptarget] <= 0) { healamt = ceil(global.maxhp[hptarget] / 8); dmgwr = instance_create(global.charinstance[i].x, (global.charinstance[i].y + global.charinstance[i].myheight) - 24, obj_dmgwriter); with (dmgwr) { delay = 1; type = 3; } dmgwr.damage = scr_heal(i, healamt); if (global.hp[hptarget] >= 1) { with (dmgwr) specialmessage = 4; } } } if (global.charmove[0] == 0 || global.charauto[global.char[0]] == 1) global.charturn = 1; if (global.charturn == 1) { if (global.charmove[1] == 0 || global.charauto[global.char[1]] == 1) global.charturn = 2; } if (global.charturn == 2) { if (global.charmove[2] == 0 || global.charauto[global.char[2]] == 1) skip = 1; } for (i = 0; i < 3; i += 1) { global.acting[i] = 0; global.actingsingle[i] = 0; global.actingsimul[i] = 0; global.actingtarget[i] = 0; global.temptension[i] = global.tension; global.charspecial[i] = 0; global.targeted[i] = 0; global.charaction[i] = 0; global.faceaction[i] = 0; global.monsterattackname[i] = " "; } global.currentactingchar = 0; with (obj_monsterparent) { attacked = 0; talked = 0; acting = 0; actingsus = 0; actingral = 0; actingnoe = 0; } if (skip == 1) { if (global.char[0] == 2 && global.charauto[2] == 1) { global.acting[0] = 1; global.myfight = 3; } scr_endturn(); } for (i = 0; i < 12; i += 1) { for (j = 0; j < 3; j += 1) tempitem[i][j] = global.item[i]; } } ...
();
150
                with (obj_darkener)
151
                    darken = 0;
152
            }
153
            else
154
            {
155
                with (obj_darkener)
156
                    darken = 0;
157
                scr_mnendturn
scr_mnendturn

function scr_mnendturn() { if (global.char[0] == 2) sus = 0; if (global.char[1] == 2) sus = 1; if (global.char[2] == 2) sus = 2; techwon = 0; if (scr_monsterpop() == 0) techwon = 1; if (global.flag[39 dojo_abort?] == 1) techwon = 1; if (techwon == 1) scr_wincombat(); if (techwon == 0) { with (obj_battlecontroller) { messagepriority = -1; attackpriority = -1; } scr_battlecursor_memory_reset(); global.mnfight = 0; global.myfight = 0; global.bmenuno = 0; global.charturn = 0; skip = 0; for (i = 0; i < 3; i += 1) { global.hittarget[i] = 0; with (global.charinstance[i]) tu = 0; hptarget = global.char[i]; if (global.char[i] != 0 && global.hp[hptarget] <= 0) { healamt = ceil(global.maxhp[hptarget] / 8); dmgwr = instance_create(global.charinstance[i].x, (global.charinstance[i].y + global.charinstance[i].myheight) - 24, obj_dmgwriter); with (dmgwr) { delay = 1; type = 3; } dmgwr.damage = scr_heal(i, healamt); if (global.hp[hptarget] >= 1) { with (dmgwr) specialmessage = 4; } } } if (global.charmove[0] == 0 || global.charauto[global.char[0]] == 1) global.charturn = 1; if (global.charturn == 1) { if (global.charmove[1] == 0 || global.charauto[global.char[1]] == 1) global.charturn = 2; } if (global.charturn == 2) { if (global.charmove[2] == 0 || global.charauto[global.char[2]] == 1) skip = 1; } for (i = 0; i < 3; i += 1) { global.acting[i] = 0; global.actingsingle[i] = 0; global.actingsimul[i] = 0; global.actingtarget[i] = 0; global.temptension[i] = global.tension; global.charspecial[i] = 0; global.targeted[i] = 0; global.charaction[i] = 0; global.faceaction[i] = 0; global.monsterattackname[i] = " "; } global.currentactingchar = 0; with (obj_monsterparent) { attacked = 0; talked = 0; acting = 0; actingsus = 0; actingral = 0; actingnoe = 0; } if (skip == 1) { if (global.char[0] == 2 && global.charauto[2] == 1) { global.acting[0] = 1; global.myfight = 3; } scr_endturn(); } for (i = 0; i < 12; i += 1) { for (j = 0; j < 3; j += 1) tempitem[i][j] = global.item[i]; } } ...
();
158
            }
159
        }
160
    }
161
    if (global.mnfight == 8)
162
        exit;
163
}
164
if (global.myfight == 3)
165
{
166
    xx = __view_get(e__VW.XView, 0);
167
    yy = __view_get(e__VW.YView, 0);
168
    if (acting == 1 && actcon == 0)
169
    {
170
        actcon = 1;
171
        msgsetloc(0, 
* JIGSAW JOE - Beat him up to earn his life savings!Wait for inputClose Message
"* JIGSAW JOE - Beat him up to earn his life savings!/%", "obj_dojo_spareenemy_slash_Step_0_gml_177_0"
);
172
        checkreact = true;
173
        scr_battletext_default
scr_battletext_default

function scr_battletext_default() { global.fc = 0; global.typer = 4; scr_battletext(); return battlewriter; }
();
174
    }
175
    if (acting == 2 && actcon == 0 && battlestate < 2)
176
    {
177
        shavesprite = scr_act_charsprite
scr_act_charsprite

function scr_act_charsprite(arg0, arg1, arg2, arg3) { _charactor = arg0; _charinstance = obj_herokris; if (_charactor == "noelle") { _charinstance = obj_heronoelle; _charnum = 4; } if (_charactor == "ralsei") { _charinstance = obj_heroralsei; _charnum = 3; } if (_charactor == "susie") { _charinstance = obj_herosusie; _charnum = 2; } if (_charactor == "kris") { _charinstance = obj_herokris; _charnum = 1; } __returnvalue = _charactsprite[_charnum]; if (i_ex(_charinstance)) { with (_charinstance) { image_alpha = 0; state = 0; global.faceaction[myself] = 0; } _charactsprite[_charnum] = scr_dark_marker(_charinstance.x, _charinstance.y, arg1); with (_charactsprite[_charnum]) { depth = 20 - (__view_get(e__VW.YView, 0) / 40); scr_oflash(); if (arg2 > 0 && arg3 == 0) scr_animate(0, 0, arg2); if (arg2 > 0 && arg3 == 1) image_speed = arg2; a = scr_afterimage(); a.hspeed = 2.5; a.depth = depth + 1; b = scr_afterimage(); b.image_alpha = 0.6; b.hspeed = 5; b.depth = depth + 2; } __returnvalue = _charactsprite[_charnum]; } return __returnvalue; } enum e__VW { XView, YView, WView, HView, Angle, HBorder, VBorder, HSpeed, VSpeed, Object, Visible, XPort, YPort, WPort, HPort, Camera, SurfaceID }
("kris", spr_krisb_attackready, 0, 0);
178
        msgsetloc(0, 
* (You shaved Jigsaw Joe's stubble!)Wait for inputClose Message
"* (You shaved Jigsaw Joe's stubble!)/%", "obj_dojo_spareenemy_slash_Step_0_gml_187_0"
);
179
        scr_battletext_default
scr_battletext_default

function scr_battletext_default() { global.fc = 0; global.typer = 4; scr_battletext(); return battlewriter; }
();
180
        actcon = 2;
181
    }
182
    if (acting == 2 && actcon == 0 && battlestate >= 2)
183
    {
184
        msgsetloc(0, 
* Susie told the enemy a bedtime story about beating them up!
Delay 11* The enemy became TIRED!Wait for inputClose Message
"* Susie told the enemy a bedtime story about beating them up!^1&* The enemy became TIRED!/%", "obj_dojo_spareenemy_slash_Step_0_gml_195_0"
);
185
        image_speed /= 2;
186
        snd_play(snd_hypnosis);
187
        scr_battletext_default
scr_battletext_default

function scr_battletext_default() { global.fc = 0; global.typer = 4; scr_battletext(); return battlewriter; }
();
188
        actcon = 1;
189
        scr_monster_make_tired
scr_monster_make_tired

function scr_monster_make_tired(arg0) { global.monstercomment[arg0] = stringsetloc(
(Tired)
"(Tired)", "scr_monster_make_tired_slash_scr_monster_make_tired_gml_1_0"
); global.monsterstatus[arg0] = 1; }
(myself);
190
    }
191
    if (acting == 1 && actconsus == 1)
192
    {
193
        msgsetloc(0, 
* Susie acted!Wait for inputClose Message
"* Susie acted!/%", "obj_dojograzeenemy_slash_Step_0_gml_97_0"
);
194
        scr_battletext_default
scr_battletext_default

function scr_battletext_default() { global.fc = 0; global.typer = 4; scr_battletext(); return battlewriter; }
();
195
        actcon = 1;
196
        actconsus = 0;
197
    }
198
    if (acting == 1 && actconral == 1)
199
    {
200
        msgsetloc(0, 
* Ralsei acted!Wait for inputClose Message
"* Ralsei acted!/%", "obj_dojograzeenemy_slash_Step_0_gml_106_0"
);
201
        scr_battletext_default
scr_battletext_default

function scr_battletext_default() { global.fc = 0; global.typer = 4; scr_battletext(); return battlewriter; }
();
202
        actcon = 1;
203
        actconral = 0;
204
    }
205
    if (actcon == 2 && !instance_exists(obj_writer))
206
    {
207
        actcon = 3;
208
        with (shavesprite)
209
        {
210
            sprite_index = spr_krisb_attack;
211
            scr_animate
scr_animate

function scr_animate(arg0, arg1, arg2) { __animator = instance_create(x, y, obj_animator); __animator.target = id; __animator.initframe = arg0; __animator.endframe = arg1; __animator.fake_image_speed = arg2; return __animator; }
(0, 0, 1);
212
        }
213
        alarm[2] = 20;
gml_Object_obj_dojo_spareenemy_Alarm_2.gml

alarm[3] = 20; alarm[1] = 40; scr_mercyadd(myself, 100); snd_play_pitch(snd_damage, 1.5); image_speed = 0; shaved = true; global.flag[20 manual_face_sprite] = 0; sparedsprite = spr_npc_puzzlepiece_shaved_frown; hurtsprite = spr_npc_puzzlepiece_shock2_shaved; var _yy = y + ((siner % 1) * 2); instance_create(x + 22, _yy + 32, obj_dojo_shaveeffect); instance_create(x + 46, _yy + 32, obj_dojo_shaveeffect); instance_create(x + 24, _yy + 34, obj_dojo_shaveeffect); instance_create(x + 28, _yy + 34, obj_dojo_shaveeffect); instance_create(x + 32, _yy + 34, obj_dojo_shaveeffect); instance_create(x + 36, _yy + 34, obj_dojo_shaveeffect); instance_create(x + 40, _yy + 34, obj_dojo_shaveeffect); instance_create(x + 44, _yy + 34, obj_dojo_shaveeffect); instance_create(x + 26, _yy + 36, obj_dojo_shaveeffect); instance_create(x + 42, _yy + 36, obj_dojo_shaveeffect); instance_create(x + 30, _yy + 38, obj_dojo_shaveeffect); instance_create(x + 34, _yy + 38, obj_dojo_shaveeffect); instance_create(x + 38, _yy + 38, obj_dojo_shaveeffect); list = ds_list_create(); with (obj_dojo_shaveeffect) ds_list_add(other.list, self); ds_list_shuffle(list); for (i = 0; i < ds_list_size(list); i++) { var _item = ds_list_find_value(list, i); _item.sparkle_timer = ((i * -1) + irandom(2)) - 5; } ds_list_destroy(list);
214
        snd_play_pitch(snd_laz_c, 1.5);
215
        image_speed = 0;
216
        var _cut = instance_create(x + 34, y + 38, obj_animation);
217
        _cut.sprite_index = spr_attack_cut1;
218
        _cut.image_xscale = 0.25;
219
        _cut.image_yscale = 0.25;
220
        _cut.depth = depth - 1;
221
        _cut.image_speed = 1/3;
222
    }
223
    if (actcon == 1 && !instance_exists(obj_writer))
224
        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(); } }
();
225
}
226
227
enum e__VW
228
{
229
    XView,
230
    YView,
231
    WView,
232
    HView,
233
    Angle,
234
    HBorder,
235
    VBorder,
236
    HSpeed,
237
    VSpeed,
238
    Object,
239
    Visible,
240
    XPort,
241
    YPort,
242
    WPort,
243
    HPort,
244
    Camera,
245
    SurfaceID
246
}