1 |
if (live_call()) |
2 |
return global.live_result; |
3 |
switch (scene) |
4 |
{ |
5 |
case 0: |
6 |
if (keyboard_multicheck_pressed(0) && scr_interactscr_interactfunction scr_interact()
{
if (distance_to_object(obj_pl) < 20 && obj_pl.state == scr_normal_state)
{
var pl_dir = obj_pl.direction;
var pl_x = 0;
var pl_y = 0;
var check_distance_x = 0;
var check_distance_y = 0;
switch (pl_dir)
{
case 0:
pl_x = obj_pl.bbox_right;
pl_y = obj_pl.bbox_top + 1;
check_distance_x = 20;
break;
case 180:
pl_x = obj_pl.bbox_left;
pl_y = obj_pl.bbox_top + 1;
check_distance_x = -20;
break;
case 90:
pl_x = obj_pl.x;
pl_y = obj_pl.bbox_top;
check_distance_y = -20;
break;
case 270:
pl_x = obj_pl.x;
pl_y = obj_pl.bbox_bottom;
check_distance_y = 20;
break;
}
if (collision_line_first(pl_x, pl_y, pl_x + check_distance_x, pl_y + check_distance_y, id, false, false))
return true;
}
} ()) |
7 |
{ |
8 |
scr_cutscene_start(); |
9 |
scene++; |
10 |
} |
11 |
break; |
12 |
case 1: |
13 |
scr_textscr_textfunction scr_text()
{
if (!instance_exists(obj_dialogue))
msg = instance_create(x, y, obj_dialogue);
} (); |
14 |
with (msg) |
15 |
{ |
16 |
message[0] = "* (Get on?)"; |
17 |
ch_msg = 0; |
18 |
ch[1] = "Yes"; |
19 |
ch[2] = "No"; |
20 |
if (outcome == 1) |
21 |
{ |
22 |
other.actor_clover = instance_create(obj_pl.x, obj_pl.y, obj_player_npc); |
23 |
other.scene = 2; |
24 |
} |
25 |
if (outcome == 2) |
26 |
{ |
27 |
other.scene = 0; |
28 |
scr_cutscene_end(); |
29 |
} |
30 |
} |
31 |
break; |
32 |
case 2: |
33 |
cutscene_npc_walk(actor_clover, 1140, 300, 3, "x", "up"); |
34 |
break; |
35 |
case 3: |
36 |
cutscene_wait(0.25); |
37 |
break; |
38 |
case 4: |
39 |
with (actor_clover) |
40 |
{ |
41 |
audio_play_sound(snd_playerjump, 1, 0); |
42 |
action_sprite = true; |
43 |
jump_noloop = false; |
44 |
image_speed = 0; |
45 |
sprite_index = spr_pl_run_up; |
46 |
image_index = 5; |
47 |
vspeed = -2; |
48 |
} |
49 |
cutscene_advance(); |
50 |
break; |
51 |
case 5: |
52 |
with (actor_clover) |
53 |
{ |
54 |
if (y < 265) |
55 |
jump_noloop = true; |
56 |
if (jump_noloop == true) |
57 |
{ |
58 |
vspeed += 0.5; |
59 |
if (vspeed >= 1.5) |
60 |
{ |
61 |
action_sprite = false; |
62 |
npc_direction = "up"; |
63 |
vspeed = 0; |
64 |
other.scene++; |
65 |
} |
66 |
} |
67 |
} |
68 |
break; |
69 |
case 6: |
70 |
cutscene_wait(1.5); |
71 |
break; |
72 |
case 7: |
73 |
with (obj_raft_flowey) |
74 |
{ |
75 |
if (vspeed > -1) |
76 |
vspeed -= 0.025; |
77 |
if (vspeed < 0.5) |
78 |
{ |
79 |
if (sprite_index != spr_ava_vertical) |
80 |
sprite_index = spr_ava_vertical; |
81 |
} |
82 |
obj_player_npc.vspeed = vspeed; |
83 |
} |
84 |
if (obj_player_npc.y < 120) |
85 |
{ |
86 |
obj_raft_flowey.vspeed = 0; |
87 |
obj_player_npc.vspeed = 0; |
88 |
cutscene_camera_freeze(); |
89 |
} |
90 |
break; |
91 |
case 8: |
92 |
if (cutscene_wait(1.5)) |
93 |
scr_audio_fade_outscr_audio_fade_outfunction scr_audio_fade_out(arg0, arg1)
{
var snd = arg0;
var fade_len = arg1;
if (!audio_is_playing(snd))
return false;
audio_sound_gain(snd, 0, fade_len);
if (instance_exists(obj_audio_fade_helper))
{
with (obj_audio_fade_helper)
{
if (audio_to_fade == snd)
return false;
}
}
with (instance_create(0, 0, obj_audio_fade_helper))
audio_to_fade = snd;
} (obj_radio.bgm, 1000); |
94 |
break; |
95 |
case 9: |
96 |
depth = obj_player_npc.depth + 1; |
97 |
layer_y("overlay", layer_get_y("overlay") + 1); |
98 |
if (layer_get_y("overlay") >= 0) |
99 |
scene++; |
100 |
break; |
101 |
case 10: |
102 |
cutscene_wait(1.5); |
103 |
break; |
104 |
case 11: |
105 |
if (vspeed < 0.5) |
106 |
vspeed += 0.025; |
107 |
if (obj_player_npc.y >= (camera_get_view_y(view_camera[0]) + 210)) |
108 |
{ |
109 |
vspeed = 0; |
110 |
cutscene_advance(); |
111 |
} |
112 |
obj_player_npc.vspeed = vspeed; |
113 |
break; |
114 |
case 12: |
115 |
cutscene_wait(1.5); |
116 |
break; |
117 |
case 13: |
118 |
image_alpha = 0; |
119 |
script_execute(scr_enemy_defragment); |
120 |
if (!audio_is_playing(snd_monster_damage_death)) |
121 |
audio_play_sound(snd_monster_damage_death, 20, 0); |
122 |
scene++; |
123 |
break; |
124 |
case 14: |
125 |
cutscene_wait(1.5); |
126 |
var x_target = camera_get_view_x(view_camera[0]) + 160; |
127 |
var y_target = camera_get_view_y(view_camera[0]) + 210; |
128 |
obj_player_npc.x = lerp(obj_player_npc.x, x_target, 0.05); |
129 |
obj_player_npc.y = lerp(obj_player_npc.y, y_target, 0.05); |
130 |
break; |
131 |
case 15: |
132 |
if (yellow_overlay_alpha < 1) |
133 |
yellow_overlay_alpha += 0.05; |
134 |
else |
135 |
cutscene_advance(); |
136 |
break; |
137 |
case 16: |
138 |
cutscene_wait(0.5); |
139 |
break; |
140 |
case 17: |
141 |
instance_destroy(obj_flowey_battle_ow_controller); |
142 |
room = rm_battle_flowey_phase_2; |
143 |
texture_flush("BattleHotlandFloweyPhase1"); |
144 |
break; |
145 |
} |