|
1
|
if (con == 0)
|
|
2
|
{
|
|
3
|
if (stealth.alert == 2)
|
|
4
|
{
|
|
5
|
con = 1;
|
|
6
|
timer = 0;
|
|
7
|
stealth.dir = 0;
|
|
8
|
stealth.updatedir = 1;
|
|
9
|
}
|
|
10
|
}
|
|
11
|
if (con == 1)
|
|
12
|
{
|
|
13
|
headct[0] = 0;
|
|
14
|
var headrange = 50;
|
|
15
|
with (obj_dw_ch3_b3bs_zapperhead)
|
|
16
|
{
|
|
17
|
if (x > (camerax() + headrange) && x < ((camerax() + 640) - headrange))
|
|
18
|
array_push(other.headct, id);
|
|
19
|
}
|
|
20
|
array_delete(headct, 0, 1);
|
|
21
|
show_debug_message(string(headct));
|
|
22
|
head = headct[irandom_range(0, array_length(headct) - 1)];
|
|
23
|
zapper = scr_dark_markerscr_dark_marker
function scr_dark_marker(arg0, arg1, arg2)
{
thismarker = instance_create(arg0, arg1, obj_marker);
with (thismarker)
{
sprite_index = arg2;
image_speed = 0;
image_xscale = 2;
image_yscale = 2;
}
return thismarker;
} (head.x + 64, head.y - 36, spr_zapper_jump_noshadow);
|
|
24
|
with (zapper)
|
|
25
|
scr_lerpvarscr_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_index", 0, 4, 7);
|
|
26
|
zapper.vspeed = -40;
|
|
27
|
zapper.gravity = 2;
|
|
28
|
zapper.image_xscale = -2;
|
|
29
|
zapper.image_blend = c_black;
|
|
30
|
scr_lerp_imageblendscr_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);
return lerpblend;
} (zapper, c_black, c_white, 8, 2, "out");
|
|
31
|
snd_play(snd_jump);
|
|
32
|
var desxloc = obj_mainchara.x - 48;
|
|
33
|
if (head.x > (obj_mainchara.x + 17))
|
|
34
|
{
|
|
35
|
desxloc = obj_mainchara.x + 90;
|
|
36
|
zapper.image_xscale = 2;
|
|
37
|
zapper.x -= 92;
|
|
38
|
}
|
|
39
|
with (zapper)
|
|
40
|
scr_lerpvarscr_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, desxloc, 30, 2, "out");
|
|
41
|
safe_delete(head);
|
|
42
|
con = 2;
|
|
43
|
}
|
|
44
|
var groundpos = scr_evenscr_even
function scr_even(arg0)
{
return round(arg0 / 2) * 2;
} (obj_mainchara.y - 60);
|
|
45
|
if (con == 2)
|
|
46
|
{
|
|
47
|
if (zapper.y < groundpos)
|
|
48
|
con = 3;
|
|
49
|
}
|
|
50
|
if (con == 3)
|
|
51
|
{
|
|
52
|
if (zapper.y >= groundpos)
|
|
53
|
{
|
|
54
|
zapper.y = groundpos;
|
|
55
|
zapper.image_index = 7;
|
|
56
|
with (zapper)
|
|
57
|
scr_delay_var("image_index", 8, 4);
|
|
58
|
zapper.gravity = 0;
|
|
59
|
zapper.vspeed = 0;
|
|
60
|
zapper.depth = obj_mainchara.depth;
|
|
61
|
snd_play(snd_wing);
|
|
62
|
con = 4;
|
|
63
|
}
|
|
64
|
}
|
|
65
|
if (con == 4)
|
|
66
|
{
|
|
67
|
with (instance_create(350, 200, obj_chaseenemy_zapper))
|
|
68
|
{
|
|
69
|
visible = 0;
|
|
70
|
con = 3;
|
|
71
|
}
|
|
72
|
con = 5;
|
|
73
|
}
|
|
74
|
if (con == 5 && d_ex())
|
|
75
|
con = 6;
|
|
76
|
if (con == 6 && !d_ex() && global.interact == 0)
|
|
77
|
{
|
|
78
|
global.interact = 1;
|
|
79
|
with (obj_chaseenemy_zapper)
|
|
80
|
instance_destroy();
|
|
81
|
with (obj_dw__backstagelight)
|
|
82
|
instance_destroy();
|
|
83
|
with (obj_b3bs_stealthSolid)
|
|
84
|
instance_destroy();
|
|
85
|
timer = 0;
|
|
86
|
con = 7;
|
|
87
|
}
|
|
88
|
if (con == 7)
|
|
89
|
{
|
|
90
|
timer++;
|
|
91
|
if (timer == 1)
|
|
92
|
{
|
|
93
|
with (zapper)
|
|
94
|
{
|
|
95
|
sprite_index = spr_zapper_jump_noshadow;
|
|
96
|
scr_lerpvarscr_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_index", 0, 4, 8, 2, "out");
|
|
97
|
}
|
|
98
|
}
|
|
99
|
if (timer > 1)
|
|
100
|
{
|
|
101
|
if (zapper.image_index >= 3 && zapper.gravity == 0)
|
|
102
|
{
|
|
103
|
with (zapper)
|
|
104
|
{
|
|
105
|
depth = 20;
|
|
106
|
snd_play(snd_jump);
|
|
107
|
vspeed = -12;
|
|
108
|
hspeed = 4;
|
|
109
|
gravity = 1;
|
|
110
|
}
|
|
111
|
}
|
|
112
|
if (zapper.y > 276)
|
|
113
|
{
|
|
114
|
timer = 0;
|
|
115
|
con = 8;
|
|
116
|
scr_lerp_imageblendscr_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);
return lerpblend;
} (zapper, c_white, c_black, 12, 2, "out");
|
|
117
|
scr_doomscr_doom
function scr_doom(arg0, arg1)
{
with (instance_create_depth(0, 0, 0, obj_doom))
{
alarm[0]
target = arg0;
}
} (zapper, 30);
|
|
118
|
scr_delay_var("con", 9, 8);
|
|
119
|
}
|
|
120
|
}
|
|
121
|
}
|
|
122
|
if (con == 9)
|
|
123
|
{
|
|
124
|
global.facing = 0;
|
|
125
|
global.interact = 0;
|
|
126
|
with (obj_caterpillarchara)
|
|
127
|
scr_caterpillar_interpolatescr_caterpillar_interpolate
function scr_caterpillar_interpolate()
{
_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;
}
} ();
|
|
128
|
with (obj_b3bs_stealtharea)
|
|
129
|
y = 0;
|
|
130
|
con = 10;
|
|
131
|
}
|