|
1
|
scr_populatecharsscr_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;
}
}
} ();
|
|
2
|
if (!init)
|
|
3
|
init = 1;
|
|
4
|
if (con == 0)
|
|
5
|
{
|
|
6
|
with (obj_mainchara)
|
|
7
|
{
|
|
8
|
var trigger = instance_place(x, y, obj_overworld_bulletarea);
|
|
9
|
if (trigger != -4)
|
|
10
|
{
|
|
11
|
other.con = 1;
|
|
12
|
scr_lerpvar_instancescr_lerpvar_instance
function scr_lerpvar_instance()
{
__lerpvar = instance_create(0, 0, obj_lerpvar);
__lerpvar.target = argument[0];
__lerpvar.varname = argument[1];
__lerpvar.pointa = argument[2];
__lerpvar.pointb = argument[3];
__lerpvar.maxtime = argument[4];
if (argument_count >= 6)
__lerpvar.easetype = argument[5];
if (argument_count >= 7)
__lerpvar.easeinout = argument[6];
return __lerpvar;
}
function scr_lerp_var_instance()
{
if (argument_count >= 6)
return scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5);
else if (argument_count >= 7)
return scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5, argument6);
else
return scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4);
}
function scr_lerp_instance_var()
{
if (argument_count >= 6)
return scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5);
else if (argument_count >= 7)
return scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5, argument6);
else
return scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4);
} (other.darkness, "image_alpha", other.darkness.image_alpha, other.onalpha, other.fadespeed);
|
|
13
|
}
|
|
14
|
}
|
|
15
|
}
|
|
16
|
if (con > 0)
|
|
17
|
{
|
|
18
|
timer += 1;
|
|
19
|
if (con == 1)
|
|
20
|
{
|
|
21
|
if (timer > (5 + fadespeed))
|
|
22
|
{
|
|
23
|
con = 2;
|
|
24
|
timer = 0;
|
|
25
|
scr_lerpvar_instancescr_lerpvar_instance
function scr_lerpvar_instance()
{
__lerpvar = instance_create(0, 0, obj_lerpvar);
__lerpvar.target = argument[0];
__lerpvar.varname = argument[1];
__lerpvar.pointa = argument[2];
__lerpvar.pointb = argument[3];
__lerpvar.maxtime = argument[4];
if (argument_count >= 6)
__lerpvar.easetype = argument[5];
if (argument_count >= 7)
__lerpvar.easeinout = argument[6];
return __lerpvar;
}
function scr_lerp_var_instance()
{
if (argument_count >= 6)
return scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5);
else if (argument_count >= 7)
return scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5, argument6);
else
return scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4);
}
function scr_lerp_instance_var()
{
if (argument_count >= 6)
return scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5);
else if (argument_count >= 7)
return scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5, argument6);
else
return scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4);
} (other.darkness, "image_alpha", other.darkness.image_alpha, other.offalpha, other.fadespeed);
|
|
26
|
var chance = [[1, 1], [1, 1], [1], [1], [1, 1], [1, 1, 1, 1, 1, 1, 1, 1]];
|
|
27
|
with (obj_mainchara)
|
|
28
|
{
|
|
29
|
var trigger = instance_place(x, y, obj_overworld_bulletarea);
|
|
30
|
if (trigger == -4)
|
|
31
|
{
|
|
32
|
other.con = 0;
|
|
33
|
exit;
|
|
34
|
}
|
|
35
|
else
|
|
36
|
{
|
|
37
|
var bullet_trigger = instance_place(x, y, obj_dw_churchc_dodge_trigger);
|
|
38
|
if (bullet_trigger != -4)
|
|
39
|
chance = bullet_trigger.chances;
|
|
40
|
}
|
|
41
|
}
|
|
42
|
snd_play(snd_spawn_weaker, 0.8, 0.45);
|
|
43
|
if (con == 2)
|
|
44
|
{
|
|
45
|
var angleAdd = 0;
|
|
46
|
var valid = [];
|
|
47
|
var invalid = [false, false, false, false, false, false];
|
|
48
|
for (var i = 0; i < array_length(blacklist); i++)
|
|
49
|
invalid[blacklist[i]] = true;
|
|
50
|
for (var i = 0; i < array_length(chance); i++)
|
|
51
|
{
|
|
52
|
if (chance[i] != 0 && invalid[i] == 0)
|
|
53
|
array_push(valid, i);
|
|
54
|
}
|
|
55
|
var selected_index = irandom_range(0, array_length(valid) - 1);
|
|
56
|
var pattern = patterns[valid[selected_index]];
|
|
57
|
var total = 0;
|
|
58
|
var selected_group = chance[valid[selected_index]];
|
|
59
|
for (var i = 0; i < array_length(selected_group); i++)
|
|
60
|
total += selected_group[i];
|
|
61
|
var select = random_range(0, total);
|
|
62
|
var accumulate = 0;
|
|
63
|
var selected_variation = 0;
|
|
64
|
for (var i = 0; i < array_length(selected_group); i++)
|
|
65
|
{
|
|
66
|
accumulate += selected_group[i];
|
|
67
|
if (select <= accumulate)
|
|
68
|
{
|
|
69
|
selected_variation = i;
|
|
70
|
break;
|
|
71
|
}
|
|
72
|
}
|
|
73
|
angleAdd = pattern[0][selected_variation];
|
|
74
|
blacklist = pattern[1];
|
|
75
|
for (var i = 2; i < array_length(pattern); i++)
|
|
76
|
{
|
|
77
|
var offset = new Vector2(pattern[i][0], pattern[i][0]);
|
|
78
|
var angle = ((pattern[i][2] - 90) + angleAdd) % 360;
|
|
79
|
var xx = obj_mainchara.x + 20 + (250 * pattern[i][0]);
|
|
80
|
var yy = obj_mainchara.y + 20 + 25 + (250 * pattern[i][1]);
|
|
81
|
var enemy = instance_create(xx, yy, obj_ow_pathingenemy);
|
|
82
|
enemy.image_angle = angle;
|
|
83
|
enemy.direction = enemy.image_angle;
|
|
84
|
enemy.speed = pattern[i][3];
|
|
85
|
enemy.x -= pattern[i][4] * enemy.hspeed * 0.8;
|
|
86
|
enemy.y -= pattern[i][4] * enemy.vspeed * 0.8;
|
|
87
|
enemy.neutralcon = -1;
|
|
88
|
enemy.movetime = 9;
|
|
89
|
enemy.movetype = 3;
|
|
90
|
enemy.movevistype = 0;
|
|
91
|
enemy.waittime = 0;
|
|
92
|
}
|
|
93
|
}
|
|
94
|
}
|
|
95
|
}
|
|
96
|
else if (timer > (35 + other.fadespeed))
|
|
97
|
{
|
|
98
|
con = 1;
|
|
99
|
timer = 0;
|
|
100
|
var fade = other.fadespeed;
|
|
101
|
scr_lerpvar_instancescr_lerpvar_instance
function scr_lerpvar_instance()
{
__lerpvar = instance_create(0, 0, obj_lerpvar);
__lerpvar.target = argument[0];
__lerpvar.varname = argument[1];
__lerpvar.pointa = argument[2];
__lerpvar.pointb = argument[3];
__lerpvar.maxtime = argument[4];
if (argument_count >= 6)
__lerpvar.easetype = argument[5];
if (argument_count >= 7)
__lerpvar.easeinout = argument[6];
return __lerpvar;
}
function scr_lerp_var_instance()
{
if (argument_count >= 6)
return scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5);
else if (argument_count >= 7)
return scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5, argument6);
else
return scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4);
}
function scr_lerp_instance_var()
{
if (argument_count >= 6)
return scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5);
else if (argument_count >= 7)
return scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4, argument5, argument6);
else
return scr_lerpvar_instance(argument0, argument1, argument2, argument3, argument4);
} (other.darkness, "image_alpha", other.darkness.image_alpha, other.onalpha, fade / 2);
|
|
102
|
with (obj_ow_pathingenemy)
|
|
103
|
scr_doomscr_doom
function scr_doom(arg0 = id, arg1)
{
with (instance_create_depth(0, 0, 0, obj_doom))
{
alarm[0]
target = arg0;
persistent = arg0.persistent;
}
} (self, fade / 2);
|
|
104
|
}
|
|
105
|
}
|
|
106
|
with (obj_ow_pathingenemy)
|
|
107
|
{
|
|
108
|
image_alpha = 1 - ((other.darkness.image_alpha - other.offalpha) / (other.onalpha - other.offalpha));
|
|
109
|
active = image_alpha >= 0.9;
|
|
110
|
}
|