Deltarune (Chapter 4) script viewer

← back to main script listing

gml_Object_obj_dw_churchb_prophecyencounter_Step_0

(view raw script w/o annotations or w/e)
1
if (
scr_debug
scr_debug

function
scr_debug()
{ if (global.debug == 1) return 1; }
())
2
{
3
    if (keyboard_check_pressed(ord("A")))
4
    {
5
    }
6
}
7
scr_populatechars
scr_populatechars

function
scr_populatechars()
{ if (!variable_instance_exists(id, "kris")) kris = 0; if (!variable_instance_exists(id, "ralsei")) ralsei = 0; if (!variable_instance_exists(id, "susie")) susie = 0; if (!variable_instance_exists(id, "noelle")) noelle = 0; if (kris == 0) { with (obj_mainchara) other.kris = id; } if (susie == 0) { with (obj_caterpillarchara) { if (name == "susie") other.susie = id; } } if (ralsei == 0) { with (obj_caterpillarchara) { if (name == "ralsei") other.ralsei = id; } } if (noelle == 0) { with (obj_caterpillarchara) { if (name == "noelle") other.noelle = id; } } }
();
8
if (!init)
9
{
10
    var pos = 
scr_heromarker
scr_heromarker

function
scr_heromarker(arg0 = "", arg1 = "")
{ var ____foundmarker = -4; var xpos = -1; var ypos = -1; var objindextocheck = 1365; if (string_pos("kr", arg0) != 0) objindextocheck = 544; if (string_pos("su", arg0) != 0) objindextocheck = 522; if (string_pos("ra", arg0) != 0) objindextocheck = 75; if (string_pos("no", arg0) != 0) objindextocheck = 933; if (string_pos("gen", arg0) != 0) objindextocheck = 1365; with (objindextocheck) { if (variable_instance_exists(id, "extflag")) { if (extflag == arg1) ____foundmarker = id; } } if (instance_exists(____foundmarker)) { xpos = ____foundmarker.x; ypos = ____foundmarker.y; } if (____foundmarker == -4) { debug_message("
scr_heromarker(" + arg0 + "," + arg1 + ") Object Not Found");
return [-4, -4, -4]; } return [xpos, ypos, ____foundmarker]; } function scr_genmarker(arg0 = "") { var marker = -4; with (obj_genmarker) { if (extflag == arg0) marker = id; } return marker; }
(undefined, "prop1");
11
    prophecy1 = instance_create(pos[0] + 150, pos[1] + 90, obj_dw_church_prophecy);
12
    prophecy1.extflag = "heroes1";
13
    pos = 
scr_heromarker
scr_heromarker

function
scr_heromarker(arg0 = "", arg1 = "")
{ var ____foundmarker = -4; var xpos = -1; var ypos = -1; var objindextocheck = 1365; if (string_pos("kr", arg0) != 0) objindextocheck = 544; if (string_pos("su", arg0) != 0) objindextocheck = 522; if (string_pos("ra", arg0) != 0) objindextocheck = 75; if (string_pos("no", arg0) != 0) objindextocheck = 933; if (string_pos("gen", arg0) != 0) objindextocheck = 1365; with (objindextocheck) { if (variable_instance_exists(id, "extflag")) { if (extflag == arg1) ____foundmarker = id; } } if (instance_exists(____foundmarker)) { xpos = ____foundmarker.x; ypos = ____foundmarker.y; } if (____foundmarker == -4) { debug_message("
scr_heromarker(" + arg0 + "," + arg1 + ") Object Not Found");
return [-4, -4, -4]; } return [xpos, ypos, ____foundmarker]; } function scr_genmarker(arg0 = "") { var marker = -4; with (obj_genmarker) { if (extflag == arg0) marker = id; } return marker; }
(undefined, "prop2");
14
    prophecy2 = instance_create(pos[0] + 150, pos[1] + 90, obj_dw_church_prophecy);
15
    prophecy2.extflag = "main3";
16
    pos = 
scr_heromarker
scr_heromarker

function
scr_heromarker(arg0 = "", arg1 = "")
{ var ____foundmarker = -4; var xpos = -1; var ypos = -1; var objindextocheck = 1365; if (string_pos("kr", arg0) != 0) objindextocheck = 544; if (string_pos("su", arg0) != 0) objindextocheck = 522; if (string_pos("ra", arg0) != 0) objindextocheck = 75; if (string_pos("no", arg0) != 0) objindextocheck = 933; if (string_pos("gen", arg0) != 0) objindextocheck = 1365; with (objindextocheck) { if (variable_instance_exists(id, "extflag")) { if (extflag == arg1) ____foundmarker = id; } } if (instance_exists(____foundmarker)) { xpos = ____foundmarker.x; ypos = ____foundmarker.y; } if (____foundmarker == -4) { debug_message("
scr_heromarker(" + arg0 + "," + arg1 + ") Object Not Found");
return [-4, -4, -4]; } return [xpos, ypos, ____foundmarker]; } function scr_genmarker(arg0 = "") { var marker = -4; with (obj_genmarker) { if (extflag == arg0) marker = id; } return marker; }
(undefined, "prop3");
17
    prophecy3 = instance_create(pos[0] + 150, pos[1] + 90, obj_dw_church_prophecy);
18
    prophecy3.extflag = "main2";
19
    with (obj_dw_church_prophecy)
20
        fade_edges = true;
21
    init = 1;
22
}
23
var propactive = false + forceactive;
24
with (obj_trigger)
25
{
26
    if (extflag == "proptrig")
27
    {
28
        if (place_meeting(x, y, obj_mainchara))
29
            propactive++;
30
    }
31
}
32
with (obj_dw_church_prophecy)
33
    active = propactive;
34
with (roomglow)
35
    active = propactive;
36
var killbat = false;
37
if (cutscene == 0)
38
{
39
    if (
scr_trigcheck
scr_trigcheck

function
scr_trigcheck(arg0)
{ var ____trig = 0; if (is_string(arg0)) { with (obj_trigger) { if (extflag == arg0) { if (place_meeting(x, y, obj_mainchara)) ____trig++; } } } return ____trig; } function scr_trigcheck_ext(arg0, arg1 = id) { var ____trig = 0; if (is_string(arg0)) { with (obj_trigger) { if (extflag == arg0) { if (place_meeting(x, y, arg1)) ____trig++; } } } return ____trig; }
("cut1"))
40
    {
41
        cutscene = 1;
42
        global.interact = 1;
43
    }
44
}
45
if (cutscene == 1)
46
{
47
    cutscene = 2;
48
    cutscene_master = 
scr_cutscene_make
scr_cutscene_make

function
scr_cutscene_make()
{ _cutscene_master = instance_create(0, 0, obj_cutscene_master); _cutscene_master.master_object = id; return _cutscene_master; }
();
49
    
scr_maincharacters_actors
scr_maincharacters_actors

function
scr_maincharacters_actors()
{ actor_count = 0; kr = 0; kr_actor = instance_create(obj_mainchara.x, obj_mainchara.y, obj_actor);
scr_actor_setup(kr, kr_actor, "kris");
kr_actor.sprite_index = obj_mainchara.sprite_index; kr_actor.depth = obj_mainchara.depth; with (obj_mainchara) visible = 0; for (__jj = 0; __jj < array_length_1d(global.cinstance); __jj++) { if (i_ex(global.cinstance[__jj])) { if (global.cinstance[__jj].name == "susie") { actor_count++; su = __jj + 1; su_actor = instance_create(global.cinstance[__jj].x, global.cinstance[__jj].y, obj_actor);
scr_actor_setup(su, su_actor, "susie");
su_actor.sprite_index = global.cinstance[__jj].sprite_index; su_actor.depth = global.cinstance[__jj].depth; with (global.cinstance[__jj]) visible = 0; } if (global.cinstance[__jj].name == "ralsei") { actor_count++; ra = __jj + 1; ra_actor = instance_create(global.cinstance[__jj].x, global.cinstance[__jj].y, obj_actor);
scr_actor_setup(ra, ra_actor, "ralsei");
ra_actor.sprite_index = global.cinstance[__jj].sprite_index; ra_actor.depth = global.cinstance[__jj].depth; with (global.cinstance[__jj]) visible = 0; } if (global.cinstance[__jj].name == "noelle") { actor_count++; no = __jj + 1; no_actor = instance_create(global.cinstance[__jj].x, global.cinstance[__jj].y, obj_actor);
scr_actor_setup(no, no_actor, "noelle");
no_actor.sprite_index = global.cinstance[__jj].sprite_index; no_actor.depth = global.cinstance[__jj].depth; with (global.cinstance[__jj]) visible = 0; } } } }
();
50
    with (roomglow)
51
    {
52
        var actors = [];
53
        with (obj_actor)
54
            array_push(actors, id);
55
        for (var i = 0; i < array_length(actors); i++)
56
            create_highlight(actors[i]);
57
    }
58
    var campos = 
scr_heromarker
scr_heromarker

function
scr_heromarker(arg0 = "", arg1 = "")
{ var ____foundmarker = -4; var xpos = -1; var ypos = -1; var objindextocheck = 1365; if (string_pos("kr", arg0) != 0) objindextocheck = 544; if (string_pos("su", arg0) != 0) objindextocheck = 522; if (string_pos("ra", arg0) != 0) objindextocheck = 75; if (string_pos("no", arg0) != 0) objindextocheck = 933; if (string_pos("gen", arg0) != 0) objindextocheck = 1365; with (objindextocheck) { if (variable_instance_exists(id, "extflag")) { if (extflag == arg1) ____foundmarker = id; } } if (instance_exists(____foundmarker)) { xpos = ____foundmarker.x; ypos = ____foundmarker.y; } if (____foundmarker == -4) { debug_message("
scr_heromarker(" + arg0 + "," + arg1 + ") Object Not Found");
return [-4, -4, -4]; } return [xpos, ypos, ____foundmarker]; } function scr_genmarker(arg0 = "") { var marker = -4; with (obj_genmarker) { if (extflag == arg0) marker = id; } return marker; }
(undefined, "campos1");
59
    var krpos = 
scr_heromarker
scr_heromarker

function
scr_heromarker(arg0 = "", arg1 = "")
{ var ____foundmarker = -4; var xpos = -1; var ypos = -1; var objindextocheck = 1365; if (string_pos("kr", arg0) != 0) objindextocheck = 544; if (string_pos("su", arg0) != 0) objindextocheck = 522; if (string_pos("ra", arg0) != 0) objindextocheck = 75; if (string_pos("no", arg0) != 0) objindextocheck = 933; if (string_pos("gen", arg0) != 0) objindextocheck = 1365; with (objindextocheck) { if (variable_instance_exists(id, "extflag")) { if (extflag == arg1) ____foundmarker = id; } } if (instance_exists(____foundmarker)) { xpos = ____foundmarker.x; ypos = ____foundmarker.y; } if (____foundmarker == -4) { debug_message("
scr_heromarker(" + arg0 + "," + arg1 + ") Object Not Found");
return [-4, -4, -4]; } return [xpos, ypos, ____foundmarker]; } function scr_genmarker(arg0 = "") { var marker = -4; with (obj_genmarker) { if (extflag == arg0) marker = id; } return marker; }
("kris", "pos1");
60
    var supos = 
scr_heromarker
scr_heromarker

function
scr_heromarker(arg0 = "", arg1 = "")
{ var ____foundmarker = -4; var xpos = -1; var ypos = -1; var objindextocheck = 1365; if (string_pos("kr", arg0) != 0) objindextocheck = 544; if (string_pos("su", arg0) != 0) objindextocheck = 522; if (string_pos("ra", arg0) != 0) objindextocheck = 75; if (string_pos("no", arg0) != 0) objindextocheck = 933; if (string_pos("gen", arg0) != 0) objindextocheck = 1365; with (objindextocheck) { if (variable_instance_exists(id, "extflag")) { if (extflag == arg1) ____foundmarker = id; } } if (instance_exists(____foundmarker)) { xpos = ____foundmarker.x; ypos = ____foundmarker.y; } if (____foundmarker == -4) { debug_message("
scr_heromarker(" + arg0 + "," + arg1 + ") Object Not Found");
return [-4, -4, -4]; } return [xpos, ypos, ____foundmarker]; } function scr_genmarker(arg0 = "") { var marker = -4; with (obj_genmarker) { if (extflag == arg0) marker = id; } return marker; }
("susie", "pos1");
61
    var krdist = 
scr_returnwait_instance
scr_returnwait_instance

function
scr_returnwait_instance(arg0, arg1, arg2)
{ if (!instance_exists(arg0)) { debug_print("Argument 1 does not exist"); return 1; } if (!instance_exists(arg1)) { debug_print("Argument 2 does not exist"); return 1; } var dist = max(1, round(point_distance(arg0.x, arg0.y, arg1.x, arg1.y) / arg2)); return dist; }
(kris, krpos[2], 6);
62
    var sudist = 
scr_returnwait_instance
scr_returnwait_instance

function
scr_returnwait_instance(arg0, arg1, arg2)
{ if (!instance_exists(arg0)) { debug_print("Argument 1 does not exist"); return 1; } if (!instance_exists(arg1)) { debug_print("Argument 2 does not exist"); return 1; } var dist = max(1, round(point_distance(arg0.x, arg0.y, arg1.x, arg1.y) / arg2)); return dist; }
(susie, supos[2], 8);
63
    var camdist = 
scr_returnwait
scr_returnwait

function
scr_returnwait(arg0, arg1, arg2, arg3, arg4)
{ return max(1, round(point_distance(arg0, arg1, arg2, arg3) / arg4)); }
(camerax(), cameray(), campos[0], campos[1], 6);
64
    var camdistret = 
scr_returnwait
scr_returnwait

function
scr_returnwait(arg0, arg1, arg2, arg3, arg4)
{ return max(1, round(point_distance(arg0, arg1, arg2, arg3) / arg4)); }
(camerax(), cameray(), campos[0], campos[1], 10);
65
    
c_pannable
c_pannable

function
c_pannable(arg0)
{
c_cmd("pannable", arg0, 0, 0, 0);
}
(1);
66
    
c_pan
c_pan

function
c_pan(arg0, arg1, arg2)
{
c_cmd("pan", arg0, arg1, arg2, 0);
}
(campos[0], campos[1], camdist);
67
    
c_customfunc
c_customfunc

function
c_customfunc(arg0, arg1 = -1)
{ if (instance_exists(obj_cutscene_master)) { with (obj_cutscene_master) array_push(customfuncs, arg0);
c_cmd("customfunc", arg1, 0, 0, 0);
} } function c_delay_customfunc(arg0, arg1, arg2 = -1) { if (instance_exists(obj_cutscene_master))
c_cmd_x("delaycmd", arg0, "customfunc", arg2, arg1, 0, 0);
}
(function()
68
    {
69
    });
70
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(kr);
71
    
c_walkdirect
c_walkdirect

function
c_walkdirect(arg0, arg1, arg2)
{
c_cmd("walkdirect", arg0, arg1, arg2, 0);
}
(krpos[0], krpos[1], krdist);
72
    
c_delayfacing
c_delayfacing

function
c_delayfacing(arg0, arg1)
{
c_cmd_x("delaycmd", arg0, "facing", arg1, 0, 0, 0);
}
(krdist + 1, "u");
73
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(su);
74
    
c_walkdirect
c_walkdirect

function
c_walkdirect(arg0, arg1, arg2)
{
c_cmd("walkdirect", arg0, arg1, arg2, 0);
}
(supos[0], supos[1], sudist);
75
    
c_delayfacing
c_delayfacing

function
c_delayfacing(arg0, arg1)
{
c_cmd_x("delaycmd", arg0, "facing", arg1, 0, 0, 0);
}
(sudist + 1, "u");
76
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(max(sudist, krdist, camdist));
77
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(30);
78
    
c_msgside
c_msgside

function
c_msgside(arg0)
{
c_cmd("msgside", arg0, 0, 0, 0);
}
("bottom");
79
    
c_speaker
c_speaker

function
c_speaker(arg0)
{
c_cmd("speaker", arg0, 0, 0, 0);
}
("susie");
80
    
c_msgsetloc
c_msgsetloc

function
c_msgsetloc(arg0, arg1, arg2)
{ var msg_index = arg0; var english = arg1; var localized_string_id = arg2; var str = english; if (!is_english()) str =
scr_84_get_lang_string(localized_string_id);
c_msgset(msg_index, str);
}
(0,
Face D* ...There's that prophecy again. The one with...Delay 11 us.Wait for input
"\\ED* ...There's that prophecy again. The one with..^1. us./", "obj_dw_churchb_prophecyencounter_slash_Step_0_gml_132_0"
);
81
    
c_msgnextloc
c_msgnextloc

function
c_msgnextloc(arg0, arg1)
{ var str = arg0; var localized_string_id = arg1; if (!is_english()) str =
scr_84_get_lang_string(localized_string_id);
c_msgnext(str);
}
(
Face V* ...Wait for input
"\\EV* .../", "obj_dw_churchb_prophecyencounter_slash_Step_0_gml_133_0"
);
82
    
c_msgnextloc
c_msgnextloc

function
c_msgnextloc(arg0, arg1)
{ var str = arg0; var localized_string_id = arg1; if (!is_english()) str =
scr_84_get_lang_string(localized_string_id);
c_msgnext(str);
}
(
Face D* ...It's...Delay 11 pretty hard to believe.Wait for input
"\\ED* ...It's..^1. pretty hard to believe./", "obj_dw_churchb_prophecyencounter_slash_Step_0_gml_134_0"
);
83
    
c_msgnextloc
c_msgnextloc

function
c_msgnextloc(arg0, arg1)
{ var str = arg0; var localized_string_id = arg1; if (!is_english()) str =
scr_84_get_lang_string(localized_string_id);
c_msgnext(str);
}
(
Face T* Not just...Delay 11 that things have been predicted,Delay 11 sure.Wait for input
"\\ET* Not just..^1. that things have been predicted^1, sure./", "obj_dw_churchb_prophecyencounter_slash_Step_0_gml_135_0"
);
84
    
c_msgnextloc
c_msgnextloc

function
c_msgnextloc(arg0, arg1)
{ var str = arg0; var localized_string_id = arg1; if (!is_english()) str =
scr_84_get_lang_string(localized_string_id);
c_msgnext(str);
}
(
Face D* But that...Delay 11 I'm...Delay 11 part of it too,Delay 11 I guess.Wait for inputClose Message
"\\ED* But that..^1. I'm..^1. part of it too^1, I guess./%", "obj_dw_churchb_prophecyencounter_slash_Step_0_gml_136_0"
);
85
    
c_talk
c_talk

function
c_talk()
{
c_cmd("talk", 0, 0, 0, 0);
}
();
86
    
c_wait_box
c_wait_box

function
c_wait_box(arg0)
{
c_cmd("waitbox", arg0, 0, 0, 0);
}
(1);
87
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(su);
88
    
c_sprite
c_sprite

function
c_sprite(arg0)
{
c_cmd("sprite", arg0, 0, 0, 0);
}
(spr_susie_up_head_down);
89
    
c_wait_box
c_wait_box

function
c_wait_box(arg0)
{
c_cmd("waitbox", arg0, 0, 0, 0);
}
(3);
90
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(su);
91
    
c_facing
c_facing

function
c_facing(arg0)
{
c_cmd("facing", arg0, 0, 0, 0);
}
("u");
92
    
c_wait_box
c_wait_box

function
c_wait_box(arg0)
{
c_cmd("waitbox", arg0, 0, 0, 0);
}
(4);
93
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(su);
94
    
c_sprite
c_sprite

function
c_sprite(arg0)
{
c_cmd("sprite", arg0, 0, 0, 0);
}
(spr_susie_up_head_down);
95
    
c_wait_talk
c_wait_talk

function
c_wait_talk()
{
c_cmd("waitdialoguer", 0, 0, 0, 0);
}
();
96
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(su);
97
    
c_facing
c_facing

function
c_facing(arg0)
{
c_cmd("facing", arg0, 0, 0, 0);
}
("r");
98
    
c_pan
c_pan

function
c_pan(arg0, arg1, arg2)
{
c_cmd("pan", arg0, arg1, arg2, 0);
}
(1013, 128, camdistret);
99
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(camdistret + 1);
100
    
c_customfunc
c_customfunc

function
c_customfunc(arg0, arg1 = -1)
{ if (instance_exists(obj_cutscene_master)) { with (obj_cutscene_master) array_push(customfuncs, arg0);
c_cmd("customfunc", arg1, 0, 0, 0);
} } function c_delay_customfunc(arg0, arg1, arg2 = -1) { if (instance_exists(obj_cutscene_master))
c_cmd_x("delaycmd", arg0, "customfunc", arg2, arg1, 0, 0);
}
(function()
101
    {
102
        global.facing = 0;
103
    });
104
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(1);
105
    
c_pannable
c_pannable

function
c_pannable(arg0)
{
c_cmd("pannable", arg0, 0, 0, 0);
}
(0);
106
    
c_actortocaterpillar
c_actortocaterpillar

function
c_actortocaterpillar()
{
c_cmd("actortocaterpillar", 0, 0, 0, 0);
}
();
107
    
c_actortokris
c_actortokris

function
c_actortokris()
{
c_cmd("actortokris", 0, 0, 0, 0);
}
();
108
    
c_terminatekillactors
c_terminatekillactors

function
c_terminatekillactors()
{
c_cmd("terminatekillactors", 0, 0, 0, 0);
}
();
109
}
110
if (cutscene == 2 && !instance_exists(obj_cutscene_master))
111
{
112
    obj_mainchara.nudgey = -60;
113
    
scr_caterpillar_interpolate
scr_caterpillar_interpolate

function
scr_caterpillar_interpolate(arg0 = "none")
{ if (arg0 == "all") { with (obj_caterpillarchara) scr_caterpillar_interpolate_old(); } else if (arg0 == "none") { if (object_index == obj_caterpillarchara) scr_caterpillar_interpolate_old(); } else { with (obj_caterpillarchara) { if (name == arg0) scr_caterpillar_interpolate_old(); } } } function scr_caterinterp(arg0 = "none") {
scr_caterpillar_interpolate(arg0);
} function scr_caterpillar_interpolate_old() { _newfacing =
scr_facing_letter_to_number(
scr_get_cardinal_direction(point_direction(x, y, obj_mainchara.x, obj_mainchara.y)));
remx[0] = obj_mainchara.x; remy[0] = obj_mainchara.y; facing[0] = _newfacing; for (_iaia = target; _iaia > 0; _iaia -= 1) { remx[_iaia] = lerp(obj_mainchara.x, x, _iaia / target); if (global.darkzone == 1) remy[_iaia] = lerp(obj_mainchara.y, y + 16, _iaia / target); else remy[_iaia] = lerp(obj_mainchara.y, y + 6, _iaia / target); facing[_iaia] = _newfacing; } }
("all");
114
    global.plot = 236;
115
    global.interact = 0;
116
    global.facing = 0;
117
    cutscene = 3;
118
}
119
if (econ == 0 && global.interact == 0)
120
{
121
    var trig = 0;
122
    with (obj_trigger)
123
    {
124
        if (extflag == "enemtrig")
125
        {
126
            if (place_meeting(x, y, obj_mainchara))
127
                trig = 1;
128
        }
129
    }
130
    if (trig)
131
    {
132
        econ = 1;
133
        var pos = 
scr_heromarker
scr_heromarker

function
scr_heromarker(arg0 = "", arg1 = "")
{ var ____foundmarker = -4; var xpos = -1; var ypos = -1; var objindextocheck = 1365; if (string_pos("kr", arg0) != 0) objindextocheck = 544; if (string_pos("su", arg0) != 0) objindextocheck = 522; if (string_pos("ra", arg0) != 0) objindextocheck = 75; if (string_pos("no", arg0) != 0) objindextocheck = 933; if (string_pos("gen", arg0) != 0) objindextocheck = 1365; with (objindextocheck) { if (variable_instance_exists(id, "extflag")) { if (extflag == arg1) ____foundmarker = id; } } if (instance_exists(____foundmarker)) { xpos = ____foundmarker.x; ypos = ____foundmarker.y; } if (____foundmarker == -4) { debug_message("
scr_heromarker(" + arg0 + "," + arg1 + ") Object Not Found");
return [-4, -4, -4]; } return [xpos, ypos, ____foundmarker]; } function scr_genmarker(arg0 = "") { var marker = -4; with (obj_genmarker) { if (extflag == arg0) marker = id; } return marker; }
(undefined, "batspawn");
134
        bat = 
scr_marker_ext
scr_marker_ext

function
scr_marker_ext(arg0, arg1, arg2, arg3 = 1, arg4 = 1, arg5 = 0, arg6 = 0, arg7 = 16777215, arg8 = depth, arg9 = false, arg10 = -1, arg11 = 1)
{ var thismarker = instance_create(arg0, arg1, obj_marker); with (thismarker) { depth = arg8; sprite_index = arg2; image_speed = arg5; image_xscale = arg3; image_yscale = arg4; image_index = arg6; image_blend = arg7; image_alpha = arg11; if (arg9)
scr_depth_alt();
} if (arg10 > 0)
scr_doom(thismarker, arg10);
return thismarker; } function scr_marker_fromasset(arg0, arg1 = depth, arg2 = false) { if (is_undefined(arg0)) { debug_message("Warning: scr_marker_fromasset() sprite_instance didn't exist"); return -4; } var sprite = layer_sprite_get_sprite(arg0); var index = layer_sprite_get_index(arg0); var imagespeed = layer_sprite_get_speed(arg0); var xscale = layer_sprite_get_xscale(arg0); var yscale = layer_sprite_get_yscale(arg0); var angle = layer_sprite_get_angle(arg0); var blend = layer_sprite_get_blend(arg0); var alpha = layer_sprite_get_alpha(arg0); var xloc = layer_sprite_get_x(arg0); var yloc = layer_sprite_get_y(arg0); var thismarker = instance_create_depth(xloc, yloc, arg1, obj_marker); with (thismarker) { sprite_index = sprite; image_index = index; image_speed = imagespeed; image_xscale = xscale; image_yscale = yscale; image_angle = angle; image_blend = blend; image_alpha = alpha; if (arg2)
scr_depth_alt(id, arg2);
} return thismarker; } function scr_assetgetinfo(arg0) { var sprite = layer_sprite_get_sprite(arg0); var index = layer_sprite_get_index(arg0); var xloc = layer_sprite_get_x(arg0); var yloc = layer_sprite_get_y(arg0); var xscale = layer_sprite_get_xscale(arg0); var yscale = layer_sprite_get_yscale(arg0); var angle = layer_sprite_get_angle(arg0); var blend = layer_sprite_get_blend(arg0); var alpha = layer_sprite_get_alpha(arg0); var imagespeed = layer_sprite_get_speed(arg0); return [sprite, index, xloc, yloc, xscale, yscale, angle, blend, alpha, imagespeed]; }
(pos[0], pos[1], spr_halo_bat_retract, 2, 2, 0, 5, c_black, layer_get_depth("PARALLAX_1") - 50);
135
        with (bat)
136
        {
137
            movespeed = 0;
138
            con = 0;
139
            timer = 0;
140
        }
141
    }
142
}
143
if (econ == 1)
144
{
145
    if (i_ex(bat))
146
    {
147
        if (bat.con == 2)
148
        {
149
            econ = 2;
150
            etimer = 0;
151
            forceactive = -99;
152
        }
153
    }
154
    with (obj_trigger)
155
    {
156
        if (extflag == "killbat")
157
        {
158
            if (place_meeting(x, y, obj_mainchara))
159
                killbat = true;
160
        }
161
    }
162
    if (killbat)
163
    {
164
        with (bat)
165
        {
166
            direction = image_angle - 90;
167
            
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("speed", speed, -10, 8, 2, "in");
168
            
scr_lerpvar
scr_lerpvar

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

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

function
scr_doom(arg0 = id, arg1)
{ with (instance_create_depth(0, 0, 0, obj_doom)) { alarm[0] target = arg0; persistent = arg0.persistent; } }
(id, 60);
171
            con = 10;
172
        }
173
        econ = 0;
174
    }
175
}
176
if (i_ex(bat))
177
{
178
    with (bat)
179
    {
180
        var difficulty = 0;
181
        if (global.flag[other.encounterflag] != 0)
182
            difficulty = 1;
183
        if (con == 0)
184
        {
185
            timer++;
186
            var difftime = 16;
187
            if (difficulty == 1)
188
                difftime = 20;
189
            if (timer == 1)
190
            {
191
                snd_play(snd_wing);
192
                
scr_lerp_imageblend
scr_lerp_imageblend

function
scr_lerp_imageblend()
{ var lerpblend = instance_create(x, y, obj_lerpimageblend); lerpblend.target = argument0; lerpblend.color1 = argument1; lerpblend.color2 = argument2; var ___time = argument3; if (argument_count > 4) { var _style = argument4; var _ease = argument5; lerpblend.mylerp = scr_lerp_var_instance(lerpblend, "blendindex", 0, 1, ___time, _style, _ease); } else { lerpblend.mylerp = scr_lerp_var_instance(lerpblend, "blendindex", 0, 1, ___time); } with (lerpblend) alarm_set(0, ___time + 1); return lerpblend; }
(id, c_black, c_white, difftime, 2, "in");
193
                
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("y", y, cameray() + 40, difftime, 2, "out");
194
            }
195
            if (timer == (difftime - 2))
196
                image_index = 4;
197
            if (timer == difftime)
198
                image_index = 3;
199
            if (timer == (difftime + 1))
200
            {
201
                image_index = 2;
202
                snd_play(snd_knight_cut2, 0.7, 1.8);
203
            }
204
            if (timer == (difftime + 3))
205
                image_index = 1;
206
            if (timer == (difftime + 4))
207
            {
208
                image_index = 0;
209
                con++;
210
                timer = 0;
211
                depth = 5000;
212
                movespeed = 0.5;
213
            }
214
        }
215
        if (con == 1)
216
        {
217
            var waittime = 6;
218
            if (difficulty == 1)
219
                waittime = 18;
220
            var chasespeedmax = 18;
221
            if (difficulty == 1)
222
                chasespeedmax = 8;
223
            timer++;
224
            if (timer > waittime)
225
            {
226
                if (global.interact)
227
                {
228
                    speed = 0;
229
                }
230
                else
231
                {
232
                    movespeed *= 1.2;
233
                    movespeed = clamp(movespeed, 0, chasespeedmax);
234
                    direction = point_direction(x, y, obj_mainchara.x + 20, obj_mainchara.y + 60);
235
                    targdir = direction + 90;
236
                    if (abs((targdir - image_angle) + 90) > 360)
237
                        image_angle += 360;
238
                    image_angle = lerp(image_angle, targdir, 0.1);
239
                    move_towards_point(obj_mainchara.x + 20, obj_mainchara.y + 40, movespeed);
240
                    var caught = 0;
241
                    var dir = image_angle - 90;
242
                    var leng = 48;
243
                    var size = 24;
244
                    if (i_ex(collision_circle(x + lengthdir_x(leng, dir), y + lengthdir_y(leng, dir), size, obj_mainchara, 0, 0)))
245
                        caught = 1;
246
                    if (!caught)
247
                    {
248
                        if (i_ex(collision_circle(x, y, size * 2, obj_mainchara, 0, 0)))
249
                            caught = 1;
250
                    }
251
                    if (caught)
252
                    {
253
                        speed = 0;
254
                        con = 2;
255
                        
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("image_angle", image_angle, 360, 8);
256
                        
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("x", x, obj_mainchara.x + 160, 12, 2, "out");
257
                        
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("y", y, obj_mainchara.y + 20, 12, 2, "out");
258
                        timer = 0;
259
                        global.interact = 1;
260
                        global.facing = 1;
261
                    }
262
                }
263
            }
264
        }
265
    }
266
}
267
if (econ == 2)
268
{
269
    etimer++;
270
    if (etimer == 1)
271
    {
272
        snd_play(snd_tensionhorn);
273
        snd_play_delay(snd_tensionhorn, 10, undefined, 1.1);
274
    }
275
    if (etimer == 25)
276
    {
277
        global.flag[54 encounter_pointer] = encounterflag;
278
        
scr_battle
scr_battle

function
scr_battle(arg0, arg1, arg2, arg3, arg4)
{ global.specialbattle = arg1; global.encounterno = arg0; if (global.flag[9 battle_music] != 2) { global.flag[9 battle_music] = 1; if (global.chapter == 4 && room != room_dw_castle_dojo) global.batmusic[0] = snd_init("ch4_battle.ogg"); else global.batmusic[0] = snd_init("battle.ogg"); } instance_create(0, 0, obj_battleback); instance_create(0, 0, obj_encounterbasic); __enemymarker[0] = arg2; __enemymarker[1] = arg3; __enemymarker[2] = arg4; for (__ien = 0; __ien < 3; __ien++) { if (global.monstertype[__ien] != 0(None)) { if (!i_ex(__enemymarker[__ien])) { __enemymarker[__ien] =
scr_dark_marker(global.monstermakex[__ien] + 300, global.monstermakey[__ien], object_get_sprite(global.monsterinstancetype[__ien]));
__enemymarker[__ien].depth = -__ien; } __enemymarker[__ien].__ien = __ien; with (__enemymarker[__ien]) {
scr_move_to_point_over_time(global.monstermakex[__ien], global.monstermakey[__ien], 20);
__doom = instance_create(x, y, obj_doom); __doom.target = id; __doom.alarm[0] = 25; } } } }
(encounterno, 0, bat);
279
        econ = 3;
280
    }
281
}
282
if (econ == 3 && !i_ex(obj_battleback))
283
{
284
    econ = 4;
285
    forceactive = 0;
286
}