|
1
|
if (ambushed == 0)
|
|
2
|
{
|
|
3
|
scr_ambushscr_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_isphasescr_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_mercyaddscr_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_defaultscr_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_defaultscr_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_enemyblconscr_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_isphasescr_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_isphasescr_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 other_text_command] = 0;
|
|
127
|
if (sparecon == -1)
|
|
128
|
{
|
|
129
|
talked = 0;
|
|
130
|
exit;
|
|
131
|
}
|
|
132
|
if (sparecon == 1)
|
|
133
|
{
|
|
134
|
sparecon = 0;
|
|
135
|
scr_fakesparescr_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; gml_Object_obj_dojo_spareenemy_Alarm_0.gml
global.mnfight = 1;
|
|
139
|
talked = 0;
|
|
140
|
global.mnfight = 8;
|
|
141
|
global.mercymod[myself] = 0;
|
|
142
|
}
|
|
143
|
else if (pacifycon == 1)
|
|
144
|
{
|
|
145
|
scr_spareanimscr_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_recruitscr_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_monsterdefeatscr_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_mnendturnscr_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_mnendturnscr_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_defaultscr_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_charspritescr_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_defaultscr_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_defaultscr_battletext_default
function scr_battletext_default()
{
global.fc = 0;
global.typer = 4;
scr_battletext();
return battlewriter;
} ();
|
|
188
|
actcon = 1;
|
|
189
|
scr_monster_make_tiredscr_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_defaultscr_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_defaultscr_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_animatescr_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 other_text_command] = 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_nextactscr_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
|
}
|