if (con == 0) { skip = false; var ind = min(textind, array_length(proceedActions) - 1); scr_speaker("noelle"); global.fc = 3; global.typer = 63; proceedActions[ind](); textind++; scr_anyface_next("no_name", 0); if (skip) scr_speaker("no_name"); var opt1 = str_stop; var opt2 = str_proceed; if (textind >= 7) opt1 = opt2; scr_readychoicer(opt1, opt2, undefined, undefined, false, skip); with (d_make()) { var _skippable = false; if (!_skippable) { skippable = 0; preventcskip = true; } } con = 1.01; } if (con == 1.01 && global.choice != -1) { var s1vol = 1 - (wprog(19, 34) * 0.3); if (textind > 34) s1vol = 0.7 - (wprog(34, 37) * 0.7); if (s1vol > 0) snd_play(snd_ominous, s1vol); var s2vol = wprog(19, 34); if (textind > 34) s2vol = (1 - wprog(34, 58)) * 0.8; if (s2vol > 0) snd_play(snd_ominous_hell, s2vol); var s3vol = clamp(wprog(34, 54), 0, 1); var pitch = lerp(1, 1.6, wprog(54, 74)); if (s3vol > 0) snd_play(snd_ominous_hell_super, s3vol, pitch); if (global.choice == 0 && textind < 7) { k_d(3); timer = 0; con = 1.02; } else { k_d(3); con = 2; timer = 0; } if (textind >= endind) { con = 95; k_d(); } } if (con == 1.02) { timer++; if (timer == 2) { var ind = min(global.flag[1742], array_length(stopActions) - 1); stopActions[ind](); global.flag[1742]++; scr_speaker("noelle"); global.fc = 3; global.typer = 63; with (d_make()) { var _skippable = false; if (!_skippable) { skippable = 0; preventcskip = true; } } con = 2; timer = 0; } } if (con == 2 && !d_ex()) { timer++; if (timer == 2) { timer = 0; con = 2.1; } } if (con == 2.1) { timer++; if (timer == 1) { moveamount = max(2, round(lerp(51, 20, wprog(0, 54)))); if (textind > 28) moveamount = round(lerp(15, 4, wprog(28, 54))); if (textind > drownindex) moveamount = round(moveamount / 2); movespd = lerp(1.5, 2, clamp(textind / 20, 0, 1)); startX = actor.x; endX = actor.x + moveamount; movetime = round(moveamount * movespd); } actor.x = round(lerp(startX, endX, timer / movetime)); with (actor) camera_setxy(round(x - camxoff)); for (var i = 0; i < sinkSprCount; i++) { if (actor.x >= sinkSpr[i].x) { if (actor.sprite_index != sinkSpr[i].sprite_index) actor.sprite_index = sinkSpr[i].sprite_index; break; } } var mem = actor.image_index; actor.image_index += 0.125 / movespd; var playsnd = false; if (textind < 13 && round(mem / 2) != round(actor.image_index / 2)) playsnd = true; if (actor.x < 420) playsnd = false; if (noellewatersound == 0) { playsnd = false; if (actor.x >= 400) { noellewatersound = 1; playsnd = true; } } if (kriswatersound == 0) { if (actor.x == 419) { playsnd = true; kriswatersound = 1; } } if (playsnd) { var s1vol = 1 - (wprog(19, 34) * 0.3); if (textind > 34) s1vol = 0.7 - (wprog(34, 37) * 0.7); if (s1vol > 0) snd_play(snd_wading, s1vol); var s2vol = wprog(19, 34); if (textind > 34) s2vol = (1 - wprog(34, 54)) * 0.8; if (s2vol > 0) snd_play(snd_wading_type2, s2vol); var s3vol = wprog(34, 54); if (s3vol > 0) snd_play(snd_wading_type3_deep, s3vol); } if (textind >= 13) { if (timer == 1) { var s2vol = 1 - wprog(13, 54); if (s2vol > 0) snd_play(snd_wading_type2, s2vol); var s3vol = wprog(34, 54); if (s3vol > 0) snd_play(snd_wading_type3_deep, s3vol); } } if (timer >= movetime) { actor.image_index = 0; actor.x = endX; timer = 0; con = 3; } } if (con == 3) { timer++; if (timer == 1) pauseTime = lerp(30, -1, wprog(0, 12)); if (timer >= pauseTime) { timer = 0; con = 0; if (musicstart == false) { _bgm_track[0] = snd_init("ch5_inversion_lake_chant.ogg"); _bgm_track[1] = mus_loop_ext(_bgm_track[0], 1, 1); mus_volume(_bgm_track[1], 0, 0); snd_pitch(_bgm_track[1], 0.35); _bgm_pitch = 0.35; _bgm_volume = 0; musicstart = true; } } } if (con == 95) { timer = 0; con = 96; } if (con == 96) { timer++; if (timer >= 300) { snd_free_all(); makeEnd(); timer = 0; con = 1000; } } if (con == 99) { if (failed == 1) { failed = 2; failtimer = 0; timer = 0; } timer++; if (timer == 1) { with (obj_ch5_LW20W_blur) instance_destroy(); with (obj_ch5_LW20W_blur2) instance_destroy(); with (obj_choicer_neo) instance_destroy(); with (obj_writer) scr_doom(id, 1); k_d(); scr_flag_set(1743, 1); scr_flag_set(916, 1); scr_litemremove(20); } with (failwhite) { visible = 1; image_alpha = 1; var cam = scr_getcam(); x = cam.x - 20; y = cam.y - 20; depth = 5; image_blend = merge_color(c_white, c_black, clamp(lerp_inout_cubic(0, 1, other.timer / 60), 0, 1)); } if (timer == 90) { scr_speaker("noelle"); global.fc = 0; global.fe = 0; msgsetloc(0, "* I was wrong./", "obj_ch5_LW20W_handoff_slash_Step_0_gml_253_0"); msgnextloc("* The dream never happened./", "obj_ch5_LW20W_handoff_slash_Step_0_gml_254_0"); msgnextloc("* Kris hadn't changed./", "obj_ch5_LW20W_handoff_slash_Step_0_gml_255_0"); msgnextloc("* I hadn't changed./", "obj_ch5_LW20W_handoff_slash_Step_0_gml_256_0"); msgnextloc("* I had simply^2&gotten carried away./%", "obj_ch5_LW20W_handoff_slash_Step_0_gml_257_0"); global.typer = 63; var d = instance_create(camerax() + 40, cameray() + 170, obj_writer); with (d) { depth = -40; skippable = 0; preventcskip = true; } con = 70; timer = 0; snd_free_all(); } } if (con == 70 && !i_ex(obj_writer)) { global.interact = 0; global.facing = 0; global.plot = 189; room_restart(); con = -1; }