cx = camerax(); if (!init) { init = 1; with (obj_castlereflect_manager) { add_sprite_offset(5515, 8, 0); add_sprite_offset(8232, 8, 0); add_sprite_offset(7620, 2, 0); add_sprite_offset(3161, 11, 0); add_sprite_offset(5722, 0, -10, 6); } if (instance_exists(npc_shinobeetle)) { with (obj_castlereflect_manager) { add_reflection(other.npc_shinobeetle.marker); add_reflection(other.npc_aqua_netskie.marker); } } with (obj_custom_interactable_solid) { trigger_event = method(id, function() { scr_speaker("no_name"); msgsetloc(0, "* (No response...)/%", "obj_ch5_DWCR03_slash_Step_0_gml_26_0"); myinteract = 3; global.interact = 1; mydialoguer = instance_create(0, 0, obj_dialoguer); }); } if (global.tempflag[tempflag_index] >= 1) { with (obj_custom_interactable_solid) instance_destroy(); } if (global.flag[1455] == 100) { with (obj_camera_clamper) xmin = 680; with (obj_doorAny) { if (doorEntrance == 1) x += 680; } } } if (con == 0) { if (global.tempflag[tempflag_index] < 1) { if (i_ex(obj_mainchara) && obj_mainchara.x < bbox_right) { show_debug_message_concat("cutscene start"); alarm[0] = 1; global.interact = 1; } } else if (i_ex(obj_mainchara) && obj_mainchara.x < bbox_left) { show_debug_message_concat("rematch start"); con = 4.1; global.interact = 1; } } if (con == 1) { var _debuglayer = layer_get_id("DEBUG_ASSETS"); kr_pos1 = findspriteinfo(spr_debug_krmarker, _debuglayer, c_white); ra_pos1 = findspriteinfo(spr_debug_ramarker, _debuglayer, c_white); su_pos1 = findspriteinfo(spr_debug_sumarker, _debuglayer, c_white); ra_pos2 = findspriteinfo(spr_debug_ramarker, _debuglayer, c_red); su_pos2 = findspriteinfo(spr_debug_sumarker, _debuglayer, c_red); or_pos1 = findspriteinfo(spr_enemy_orange_walk_left, _debuglayer, c_white); or_pos2 = findspriteinfo(spr_orange_mad_r, _debuglayer, c_white); gr_pos1 = findspriteinfo(spr_enemy_green_walk_right, _debuglayer, c_white); cam_1 = findspriteinfo(spr_debug_cameraregionpreview, undefined, c_white); cam_2 = findspriteinfo(spr_debug_cameraregionpreview, undefined, c_red); orange_marker = scr_dark_marker_fancy(or_pos1.x, or_pos1.y, spr_enemy_orange_walk_left); green_marker = scr_dark_marker_fancy(gr_pos1.x, gr_pos1.y, spr_enemy_green_walk_right); green_marker.y += 200; green_marker.arrived = 0; green_marker.visible = false; green_marker.reflect_jump_y = 99999; green_marker.source_y = green_marker.ystart; green_marker.jumping = 1; green_marker.lastjumping = 1; orange_marker.reflect_jump_y = 0; orange_marker.jumping = 0; orange_marker.lastjumping = 0; orange_marker.source_y = orange_marker.ystart; green_reflection = obj_watersurface.make_reflection(green_marker); orange_reflection = obj_watersurface.make_reflection(orange_marker); with (obj_castlereflect_manager) { add_reflection(other.orange_marker); add_reflection(other.green_marker); } cutscene_master = scr_cutscene_make(); scr_maincharacters_actors(); scr_miniface_init_flowers(); ralsei_reflection = obj_watersurface.make_reflection(ra_actor); kris_reflection = obj_watersurface.make_reflection(kr_actor); susie_reflection = obj_watersurface.make_reflection(su_actor); c_pannable(true); c_mus2("volume", 0, 30); c_pan(cam_1.x, cam_1.y, 30); c_sel(kr); var _krtime = c_walkto_straight(kr_actor, kr_pos1, 4, 0, "l"); c_sel(ra); var _ratime = c_walkto_straight(ra_actor, ra_pos1, 4, 0, "l"); c_sel(su); var _sutime = c_walkto_straight(su_actor, su_pos1, 4, 0, "l"); var _timetoarrive = max(_krtime, _ratime, _sutime, 30); c_wait(ceil(_timetoarrive + 5)); c_mus2("free"); c_mus2("volume", 0, 0); c_mus2("volume", 1, 30); c_sel_sprite(ra, 508); c_mus2("free"); c_mus2("initloop", "meeting_flower.ogg", 0); c_mus2("volume", 0, 0); c_mus2("volume", 0.7, 30); c_speaker("ralsei"); c_msgsetloc(0, "\\E2* Orange^1! How are you doing?/%", "obj_ch5_DWCR03_slash_Step_0_gml_143_0"); c_talk_wait(); c_var_instance(orange_marker, "sprite_index", spr_orange_surprised); c_customfunc(function() { snd_play(snd_b); with (orange_marker) { jumping = true; scr_emote("!", 15); vspeed = -9; gravity = 1.5; var _jumpOnce = function() { with (obj_excblcon) y = ystart + (other.y - other.ystart); if ((y + vspeed) > ystart) { y = ystart; jumping = false; vspeed = 0; gravity = 0; } reflect_jump_y = (ystart - y - vspeed) * 2; }; step_func = method(id, _jumpOnce); } }); c_wait(15); c_var_instance(orange_marker, "sprite_index", spr_orange_yell_r); c_var_instance(orange_marker, "image_speed", 0.2); c_speaker("orange"); c_msgsetsubloc(0, "~1* You!^1! Y..^1. you bullies!!/%", (global.lang == "ja") ? "\\m2\t\t\t" : "\\m2\t\t", (global.lang == "ja") ? "&\t\t\t\t" : "&\t\t", "obj_ch5_DWCR03_slash_Step_0_gml_176_0"); c_talk_wait(); c_sel_sprite(ra, 513); c_var_instance(orange_marker, "sprite_index", spr_enemy_orange_walk_right_mad); c_var_instance(orange_marker, "image_speed", -0.25); c_var_lerp_to_instance(orange_marker, "x", or_pos1.x - 120, 20); c_wait(20); c_var_instance(orange_marker, "sprite_index", spr_orange_cry_yell_right); c_var_instance(orange_marker, "image_speed", 0.25); c_var_instance(orange_marker, "image_index", 0); c_speaker("orange"); c_msgsetsubloc(0, "~1* Green!^1! Green!!/%", (global.lang == "ja") ? "\\m2\t\t\t" : "\\m2\t\t", (global.lang == "ja") ? "&\t\t\t\t" : "&\t\t", "obj_ch5_DWCR03_slash_Step_0_gml_190_0"); c_talk_wait(); c_var_instance(orange_marker, "image_speed", 0); c_var_instance(orange_marker, "image_index", 0); c_customfunc(function() { with (green_marker) { instance_create_depth(x + (sprite_width / 2), bbox_bottom - 20, depth - 1, obj_utwaterpillar); snd_play(snd_splash); snd_play(snd_splash, 0.7, 0.6); snd_play(snd_rocket); snd_play(snd_swing, 0.6, 0.8); vspeed = -25; gravity = 0.95; visible = true; var _jumpOnce = function() { if (vspeed > 0 && reflect_jump_y > 999) reflect_jump_y = (y - source_y) * 2; if (arrived == 0 && vspeed > 0 && (y + vspeed) > ystart) { y = ystart; vspeed = 0; gravity = 0; arrived = 1; snd_play(snd_noise); } }; step_func = method(id, _jumpOnce); } }); c_wait_if(green_marker, "arrived", "=", 1); var _dripwithwater = function() { if (drip) { image_blend = c_white; image_alpha = 1; timer++; if (timer > 12) { var _side = 0; if (sprite_index == spr_enemy_green_walk || sprite_index == spr_enemy_green_sad || sprite_index == spr_green_upset_stages_l) _side = 1; var _xx = irandom_range(bbox_left + 2, bbox_right - 2); var _xxperc = ((_xx - bbox_left) + 2) / ((bbox_right - 2 - bbox_left) + 2); if (_side == 0) _xxperc = 1 - _xxperc; var _drop = instance_create_depth(_xx, bbox_top + 4 + irandom(14) + (_xxperc * 30), depth - 10, obj_marker_fancy); with (_drop) { owner = other.id; image_xscale = 2; image_yscale = image_xscale; sprite_index = spr_whitepixel; gravity = 0.2; image_blend = choose(#55BBFF, #99BBFF, #BBBBFF); step_func = function() { image_alpha -= 0.03; if (image_alpha <= 0 || y > owner.bbox_bottom) { with (owner) puddle_size = scr_approach(puddle_size, 1, 0.025); instance_destroy(); } }; } timer = 0; } } }; var _puddle = function() { draw_set_colour(#000066); draw_set_alpha(puddle_size * 0.4 * puddle_alpha); scr_draw_circle_lowres(xstart + 28, ystart + 90, puddle_size * 14, false, undefined, 0.4); draw_set_alpha(1); draw_self(); }; c_var_instance(green_marker, "drip", true); c_var_instance(green_marker, "puddle_size", 0.8); c_var_instance(green_marker, "puddle_alpha", 1); c_var_instance(green_marker, "timer", 0); c_set_func(green_marker, undefined, _dripwithwater); c_set_func(green_marker, "draw_func", _puddle); c_var_instance(orange_marker, "sprite_index", spr_enemy_orange_walk_right_mad); c_var_instance(orange_marker, "image_speed", 0.25); c_var_lerp_to_instance(orange_marker, "x", gr_pos1.x - 80, 15); c_wait(15); c_var_instance(orange_marker, "image_speed", 0.25); c_var_instance(orange_marker, "image_index", 0); c_var_instance(orange_marker, "sprite_index", spr_orange_cry_yell_right); c_var_instance(green_marker, "sprite_index", spr_enemy_green_walk); c_sel_sprite(su, 1026); c_sel_sprite(ra, 7196); c_speaker("orange"); c_msgsetsubloc(0, "~1* THEY WERE PICKING ON ME!!!/%", (global.lang == "ja") ? "\\m2\t\t\t" : "\\m2\t\t", (global.lang == "ja") ? "&\t\t\t\t" : "&\t\t", "obj_ch5_DWCR03_slash_Step_0_gml_301_0"); c_talk_wait(); c_var_instance(orange_marker, "image_speed", 0); c_var_instance(orange_marker, "image_index", 0); c_wait(15); c_sel_walkdirect(su, su_pos2.x, su_pos2.y, 20); c_sel_walkdirect(ra, ra_pos2.x, ra_pos2.y, 20); c_pan(cam_2.x, cam_2.y, 20); c_wait(20); c_sel_sprite(su, 6821); c_sel_sprite(ra, 517); c_snd_play(snd_xylophone_blink); c_mus2("pitch", 1.04, 10); c_var_instance(green_marker, "sprite_index", spr_green_upset_stages); c_speaker("susie"); c_msgsetloc(0, "\\EM* No we weren't!!/%", "obj_ch5_DWCR03_slash_Step_0_gml_322_0"); c_talk_wait(); c_snd_play(snd_xylophone_blink); c_mus2("pitch", 1.08, 10); c_var_instance(green_marker, "sprite_index", spr_green_upset_stages_l); c_var_instance(green_marker, "image_index", 1); c_speaker("orange"); c_msgsetsubloc(0, "~1* They were too!!/%", (global.lang == "ja") ? "\\m2\t\t\t" : "\\m2\t\t", (global.lang == "ja") ? "&\t\t\t\t" : "&\t\t", "obj_ch5_DWCR03_slash_Step_0_gml_331_0"); c_talk_wait(); c_snd_play(snd_xylophone_blink); c_mus2("pitch", 1.12, 10); c_var_instance(green_marker, "sprite_index", spr_green_upset_stages); c_var_instance(green_marker, "image_index", 1); c_sel_sprite(su, 1771); c_sel_sprite(ra, 508); c_speaker("susie"); c_msgsetloc(0, "\\E7* Green^1, you're cool^1, right!?/%", "obj_ch5_DWCR03_slash_Step_0_gml_342_0"); c_talk_wait(); var _jumpLoop = function() { if (!variable_instance_exists(id, "source_y")) source_y = ystart; reflect_jump_y = (y - source_y) * -2; if (vspeed > 0 && (y + vspeed) > ystart) { if (jumping) { y = ystart; vspeed = -9; gravity = 1.5; } else { y = ystart; vspeed = 0; gravity = 0; } } }; c_var_instance(orange_marker, "jumping", true); c_var_instance(orange_marker, "vspeed", -9); c_var_instance(orange_marker, "gravity", 1.5); c_var_instance(orange_marker, "image_speed", 0.25); c_set_func(orange_marker, undefined, _jumpLoop); c_snd_play(snd_xylophone_blink); c_mus2("pitch", 1.16, 10); c_var_instance(green_marker, "sprite_index", spr_green_upset_stages_l); c_speaker("orange"); c_msgsetsubloc(0, "~1* Green!^1! Don't listen to~2them!!^1! They're MEAN!!!/%", (global.lang == "ja") ? "\\m2\t\t\t" : "\\m2\t\t", (global.lang == "ja") ? "&\t\t\t\t" : "&\t\t", "obj_ch5_DWCR03_slash_Step_0_gml_377_0"); c_talk_wait(); c_var_instance(orange_marker, "image_speed", 0); c_var_instance(orange_marker, "image_index", 0); c_sel_sprite(ra, 581); c_autofacing(false); c_sel_walk(ra, "l", 2, 14); c_sel_walk(su, "l", 2, 5); c_sel_sprite(su, 6821); c_autofacing(false); c_wait(14); c_sel(ra); c_autowalk(false); c_sel_spriteimage(ra, 7660, 0, 0.4); c_snd_play(snd_xylophone_blink); c_mus2("pitch", 1.2, 10); c_var_instance(green_marker, "sprite_index", spr_green_upset_stages); c_var_instance(green_marker, "image_index", 2); c_speaker("ralsei"); c_msgsetloc(0, "\\EC* Green^1, promise^1, we weren't doing anything bad!!/%", "obj_ch5_DWCR03_slash_Step_0_gml_400_0"); c_talk_wait(); c_var_instance(ra_actor, "image_speed", 0); c_imageindex(0); c_var_lerp_to_instance(orange_marker, "x", gr_pos1.x - 60, 6); c_var_instance(orange_marker, "image_speed", 0); c_var_instance(orange_marker, "image_index", 1); c_wait(6); c_snd_play(snd_xylophone_blink); c_mus2("pitch", 1.24, 10); c_var_instance(green_marker, "sprite_index", spr_green_upset_stages_l); c_var_instance(green_marker, "image_index", 3); c_speaker("orange"); c_msgsetsubloc(0, "~1* GREEEEEEEEN!!!/%", (global.lang == "ja") ? "\\m2\t\t\t" : "\\m2\t\t", (global.lang == "ja") ? "&\t\t\t\t" : "&\t\t", "obj_ch5_DWCR03_slash_Step_0_gml_414_0"); c_talk_wait(); c_var_instance(orange_marker, "image_speed", 0); c_var_instance(orange_marker, "image_index", 0); c_snd_play(snd_xylophone_blink); c_mus2("pitch", 1.28, 10); c_var_instance(green_marker, "sprite_index", spr_green_upset_stages); c_var_instance(su_actor, "jumping", true); c_var_instance(su_actor, "ystart", su_pos2.y); c_var_instance(su_actor, "vspeed", -9); c_var_instance(su_actor, "gravity", 1.5); c_set_func(su_actor, undefined, _jumpLoop); c_wait(5); c_var_instance(ra_actor, "jumping", true); c_var_instance(ra_actor, "ystart", ra_pos2.y); c_var_instance(ra_actor, "vspeed", -9); c_var_instance(ra_actor, "gravity", 1.5); c_set_func(ra_actor, undefined, _jumpLoop); c_wait(15); c_mus2("pitch", 1.32, 10); c_snd_play(snd_xylophone_blink); c_var_instance(green_marker, "sprite_index", spr_green_upset_stages_l); c_wait(20); c_snd_play(snd_xylophone_blink); c_var_instance(green_marker, "sprite_index", spr_green_upset_stages); c_wait(20); c_snd_play(snd_xylophone_blink); c_var_instance(green_marker, "sprite_index", spr_green_upset_stages_l); c_wait(15); c_snd_play(snd_xylophone_blink); c_var_instance(green_marker, "sprite_index", spr_green_upset_stages); c_wait(10); c_snd_play(snd_xylophone_blink); c_var_instance(green_marker, "sprite_index", spr_green_upset_stages_l); c_wait(5); c_snd_play(snd_xylophone_blink); c_var_instance(green_marker, "sprite_index", spr_green_upset_stages); c_wait(5); c_snd_play(snd_xylophone_blink); c_var_instance(green_marker, "sprite_index", spr_green_upset_stages_l); c_wait(5); c_snd_play(snd_xylophone_blink); c_var_instance(green_marker, "sprite_index", spr_green_upset_stages); c_wait(30); c_var_instance(green_marker, "sprite_index", spr_enemy_green_behind); c_shaketarget(green_marker); c_sndplay(snd_metalhit); c_mus2("volume", 0, 0); c_var_instance(green_marker, "drip", false); c_var_instance(orange_marker, "sprite_index", spr_orange_surprise2_right); c_var_instance(orange_marker, "jumping", false); c_var_instance(ra_actor, "jumping", false); c_var_instance(su_actor, "jumping", false); c_wait(60); green_self_shadow = scr_makemarker_fromstruct(green_marker); green_cast_shadow = scr_makemarker_fromstruct(green_marker, true); green_self_shadow.image_alpha = 0; green_cast_shadow.sprite_index = spr_enemy_green_dropshadow; green_cast_shadow.image_alpha = 0; green_cast_shadow.depth = green_marker.depth + 1; c_customfunc(function() { with (green_self_shadow) scr_spritematch(other.green_marker); green_self_shadow.image_alpha = 0; green_self_shadow.sprite_index = spr_enemy_green_behind_shadow; green_self_shadow.depth = green_marker.depth - 1; green_self_shadow.x += 8; green_self_shadow.y += 4; green_cast_shadow.x = green_marker.x; green_cast_shadow.y = green_marker.y; }); c_var_lerp_to_instance(blackall, "image_alpha", 0.6, 40); c_var_lerp_to_instance(id, "shadow_alpha", 0.6, 40); c_var_lerp_to_instance(green_self_shadow, "image_alpha", 1, 40); c_var_lerp_to_instance(green_cast_shadow, "image_alpha", 0.6, 40); c_var_lerp_to_instance(green_marker, "puddle_alpha", 0, 50); c_var_instance(orange_marker, "depth", 25500); c_var_instance(green_marker, "depth", 25025); c_var_instance(green_self_shadow, "depth", 25024); c_var_instance(green_cast_shadow, "depth", 99999); c_wait(60); c_var_instance(green_marker, "sprite_index", spr_enemy_green_behind_shadow); c_var_add_instance(green_marker, "x", 8); c_var_add_instance(green_marker, "y", 4); var _walkbackdist = 16; c_sel_sprite(su, 8313); c_autowalk(true); c_autofacing(false); c_walk("r", 1, _walkbackdist); c_sel_sprite(ra, 581); c_autowalk(true); c_autofacing(false); c_walk("r", 1, _walkbackdist); c_var_instance(orange_marker, "sprite_index", spr_enemy_orange_walk_right_sad); c_var_instance(orange_marker, "image_speed", -0.25); c_var_lerp_to_instance(orange_marker, "x", gr_pos1.x - 60 - (_walkbackdist * 2), _walkbackdist); c_wait(_walkbackdist); c_var_instance(orange_marker, "image_index", 0); c_var_instance(orange_marker, "image_speed", 0); c_speaker("susie"); c_msgsetloc(0, "\\EV* .../", "obj_ch5_DWCR03_slash_Step_0_gml_531_0"); c_facenext("ralsei", "O"); c_msgnextloc("\\EO* (We..^1. disappointed Green by fighting...)/", "obj_ch5_DWCR03_slash_Step_0_gml_533_0"); c_msgcmd("var", orange_marker, "sprite_index", 6054); c_sel(su); c_spritenext(5693); c_sel(ra); c_spritenext(581); c_facenext("orange", 0); c_msgnextsubloc("~1* (Yeah..^1. let's just go...)/%", (global.lang == "ja") ? "\\m2\t\t\t" : "\\m2\t\t", (global.lang == "ja") ? "&\t\t\t\t" : "&\t\t", "obj_ch5_DWCR03_slash_Step_0_gml_540_0"); c_talk_wait(); c_var_lerp_to_instance(blackall, "image_alpha", 0, 30); c_var_lerp_to_instance(id, "shadow_alpha", 0, 30); c_sel(ra); c_autowalk(true); _ratime = c_walkto_straight(ra_pos2, ra_pos1, 2, 1, "l"); c_sel(su); c_autowalk(true); _sutime = c_walkto_straight(su_pos2, su_pos1, 2, 1, "l"); _timetoarrive = max(_krtime, _ratime, _sutime, 30); c_var_instance(orange_marker, "depth", 25000); c_var_lerp_to_instance(orange_marker, "x", ra_pos1.x + 60, _timetoarrive + 20); c_var_lerp_to_instance(orange_marker, "x", ra_pos1.x + 60, _timetoarrive + 20); c_var_instance(orange_marker, "image_speed", 0.25); c_var_instance(green_marker, "depth", 97160); c_customfunc(function(arg0) { scr_pan_lerp((kr_actor.x - 320) + 19, 40, arg0); }, _timetoarrive); c_wait(_timetoarrive + 20); c_var_instance(orange_marker, "image_speed", 0); c_var_instance(green_self_shadow, "visible", false); c_pannable(false); c_actortokris(); c_actortocaterpillar(); c_terminatekillactors(); con = 2; } if (con == 2 && !i_ex(obj_cutscene_master)) { show_debug_message_concat("cutscene part 1 ended"); global.interact = 0; global.facing = 0; con = 3; orange_marker.visible = false; orange_caterpillar = instance_create(orange_marker.x, orange_marker.y, obj_caterpillar_generic); orange_reflection2 = obj_watersurface.make_reflection(orange_caterpillar); with (orange_caterpillar) { with (obj_castlereflect_manager) add_reflection(other.id); name = "orange"; usprite = spr_enemy_orange_walk_up; dsprite = spr_enemy_orange_walk_down_sad; rsprite = spr_enemy_orange_walk_right_sad; lsprite = spr_enemy_orange_walk_left_sad; targetdist = 30; show_debug_message_concat(targetdist); interpolate = true; valign = -40; sprite_index = rsprite; scr_size(2, 2); } } if (con == 3) { if (waiting) { if (!d_ex()) { global.interact = 0; waiting = false; with (obj_caterpillarchara) { } with (obj_caterpillar_generic) interpolate = true; scr_caterpillar_interpolate("all"); } } else { if (i_ex(obj_mainchara) && obj_mainchara.x > bbox_right) { with (obj_mainchara) x = other.bbox_right; scr_miniface_init_flowers(); global.interact = 1; show_debug_message_concat("walked too far right..."); scr_speaker("orange"); msgsetsubloc(0, "~1* Oh..^1. that's not the right~2direction.../%", (global.lang == "ja") ? "\\m2\t\t\t" : "\\m2\t\t", (global.lang == "ja") ? "&\t\t\t\t" : "&\t\t", "obj_ch5_DWCR03_slash_Step_0_gml_652_0"); d_make(); waiting = true; } if (i_ex(obj_mainchara) && obj_mainchara.x < bbox_left) con = 4; } } if (con == 4) { cutscene_master = scr_cutscene_make(); scr_maincharacters_actors(); scr_miniface_init_flowers(); global.interact = 1; ralsei_reflection = obj_watersurface.make_reflection(ra_actor); kris_reflection = obj_watersurface.make_reflection(kr_actor); susie_reflection = obj_watersurface.make_reflection(su_actor); c_pannable(true); if (su_actor.x > (kr_actor.x + 55)) { c_sel(su); c_walkdirect(kr_actor.x + 55, su_actor.y, 15); } if (ra_actor.x > (kr_actor.x + 120)) { c_sel(ra); c_walkdirect(kr_actor.x + 120, ra_actor.y, 15); } c_customfunc(function() { orange_marker.x = orange_caterpillar.x; orange_marker.y = orange_caterpillar.y; orange_marker.sprite_index = spr_orange_surprised; orange_marker.visible = true; orange_marker.flsh = 0; orange_marker.source_y = orange_marker.y; orange_marker.reflect_jump_y = 0; var _flashFunc = function() { if (flsh > 0) flsh -= 0.06; draw_self(); var _alphawas = image_alpha; image_alpha = flsh; gpu_set_fog(true, c_lime, 0, 0); draw_self(); gpu_set_fog(false, c_lime, 0, 0); image_alpha = _alphawas; }; orange_marker.draw_func = method(orange_marker, _flashFunc); with (orange_caterpillar) { scr_emote("!", 30); snd_play(snd_b); instance_destroy(); } }); c_wait(30); c_sel_facing(kr, "r"); c_sel_facing(su, "r"); c_sprite(spr_susie_walk_right_dw_unhappy); c_sel_facing(ra, "r"); c_sprite(spr_ralsei_walk_right_unhappy); c_speaker("orange"); c_msgsetsubloc(0, "~1* Wait a second^1, didn't Flowery~2tell us to stop you guys!?/%", (global.lang == "ja") ? "\\m2\t\t\t" : "\\m2\t\t", (global.lang == "ja") ? "&\t\t\t\t" : "&\t\t", "obj_ch5_DWCR03_slash_Step_0_gml_719_0"); c_talk_wait(); c_pan(cam_1.x - 320, cam_1.y, 20); c_wait_if(id, "cx", "=", cam_1.x - 320); c_var_instance(orange_marker, "sprite_index", spr_orange_yell_r); c_var_instance(orange_marker, "image_speed", 0.25); c_speaker("orange"); c_msgzurasu(true); c_wait(1); c_msgsetsubloc(0, "~1* GREEN!!!/%", (global.lang == "ja") ? "\\m2\t\t\t" : "\\m2\t\t", (global.lang == "ja") ? "&\t\t\t\t" : "&\t\t", "obj_ch5_DWCR03_slash_Step_0_gml_731_0"); c_talk_wait(); c_var_instance(orange_marker, "image_speed", 0); c_var_instance(orange_marker, "image_index", 0); c_var_lerp_to_instance(orange_marker, "x", or_pos2.x - 90, 10); c_var_lerp_to_instance(orange_marker, "y", or_pos2.y, 10); c_var_instance(orange_marker, "sprite_index", spr_enemy_orange_walk_right_mad); c_var_instance(orange_marker, "image_speed", 0.35); c_wait(10); c_msgzurasu(false); c_var_instance(orange_marker, "sprite_index", spr_orange_yell_r); c_var_instance(orange_marker, "image_speed", 0.25); c_customfunc(function() { green_marker.sprite_index = spr_green_together; with (green_marker) { scr_emote("!", 30); snd_play(snd_b); } }); c_var_instance(green_cast_shadow, "visible", false); c_speaker("orange"); c_msgsetsubloc(0, "~1* Get me something to eat!!!/%", (global.lang == "ja") ? "\\m2\t\t\t" : "\\m2\t\t", (global.lang == "ja") ? "&\t\t\t\t" : "&\t\t", "obj_ch5_DWCR03_slash_Step_0_gml_763_0"); c_talk_wait(); c_var_lerp_to_instance(orange_marker, "x", or_pos2.x, 15); c_var_lerp_to_instance(orange_marker, "y", or_pos2.y, 15); c_var_instance(orange_marker, "sprite_index", spr_enemy_orange_walk_right_mad); c_var_instance(orange_marker, "image_speed", 0.25); c_delaycmd4(15, "varto", orange_marker, "image_speed", 0, 1); c_delay_customfunc(15, function() { orange_marker.image_speed = 0; orange_marker.sprite_index = spr_enemy_orange_walk_left; }); c_var_instance(green_marker, "sprite_index", spr_enemy_green_witharmandpan); c_snd_play_x(snd_wing, 0.7, 1.2); egg_marker = scr_marker_centered(gr_pos1.x - 48, gr_pos1.y + 34, 7088, 2, 2, undefined, undefined, undefined, 96000); egg_marker.flipfinish = -1; egg_marker.targety = or_pos2.y; flip_func = function() { if (visible) { if ((y + vspeed) > ystart && flipfinish < 2 && flipfinish >= 0) { flipfinish = 1; image_angle = 0; hspeed = 0; gravity = 0; } if ((y + vspeed) >= targety && flipfinish == 1) { flipfinish = 2; image_xscale = 2.4; image_yscale = 1.8; speed = 0; y = targety; visible = false; } if (flipfinish == 0) image_angle += 12; } }; egg_marker.step_func = method(egg_marker, flip_func); egg_marker.visible = false; var _height = 160; var _time = 30; var _grav = (8 * _height) / sqr(_time); var _vspd = -sqrt(2 * _height * _grav); c_snd_play(snd_item); c_var_instance(egg_marker, "visible", true); c_wait(15); c_snd_play(snd_wing); c_var_instance(green_marker, "image_index", 1); c_var_instance(egg_marker, "flipfinish", 0); c_var_instance(egg_marker, "vspeed", _vspd); c_var_instance(egg_marker, "gravity", _grav); c_var_instance(egg_marker, "hspeed", ((or_pos2.x + 30) - egg_marker.xstart) / _time); c_wait_if(egg_marker, "flipfinish", "=", 2); c_var_instance(orange_marker, "flsh", 1.2); c_snd_play(snd_power); c_snd_play_x(snd_knight_jump, 1.1, 0.9); c_var_instance(orange_marker, "squash", 1.2); c_customfunc(function() { var _h = instance_create(orange_marker.x, orange_marker.y, obj_healanim); _h.target = orange_marker; }); orange_marker2 = scr_marker_centered(or_pos2.x, or_pos2.y, 8247, 2, 2, 0); orange_marker2.visible = false; orange_marker2.reflect_jump_y = 0; orange_marker2.jumping = 1; orange_marker2.lastjumping = 1; orange_marker2.source_y = or_pos2.y; with (orange_marker2) { scr_depth(); var offset_x = (sprite_width / 2) - (sprite_get_xoffset(sprite_index) * image_xscale); var offset_y = (sprite_height / 2) - (sprite_get_yoffset(sprite_index) * image_yscale); x += offset_x; y += offset_y; squash = 0; var _orangeBigJump = function() { image_xscale = 2 + squash; image_yscale = 2 - squash; if (spin) image_angle += 32; if (y < 200 && reflect_jump_y > 999) { reflect_jump_y = 0; with (obj_castlereflect_manager) add_reflection(other.id); } scr_depth(); }; spin = false; step_func = method(id, _orangeBigJump); } c_wait(20); c_var_instance(orange_marker, "visible", false); c_var_instance(orange_marker2, "visible", true); c_var_lerp_to_instance(orange_marker2, "squash", 1.2, 4); c_wait(6); c_snd_play(snd_swing); c_var_lerp_to_instance(orange_marker2, "squash", -0.8, 4); c_wait(4); c_var_lerp_to_instance(orange_marker2, "y", 40, 20, 2, "out"); c_var_lerp_to_instance(orange_marker2, "squash", 0, 15); c_var_instance(orange_marker2, "spin", true); c_wait(8); c_snd_play(snd_smallswing); c_wait(8); c_snd_play(snd_smallswing); c_wait(8); c_snd_play(snd_smallswing); c_wait(16); c_var_instance(orange_marker2, "sprite_index", spr_enemy_orange_fly_withfist); c_var_instance(orange_marker2, "spin", false); c_var_instance(orange_marker2, "image_angle", 180); c_snd_play(snd_heavyswing); c_var_lerp_to_instance(orange_marker2, "y", or_pos2.y - 15, 7); crater_marker = scr_dark_marker(orange_marker2.x + 10, 320, spr_big_crack); crater_marker.visible = false; crater_marker.depth = 98000; c_wait(7); c_var_instance(orange_marker2, "jumping", 0); c_var_instance(crater_marker, "visible", true); c_snd_play(snd_closet_impact); c_shakex(25, 25, 1); c_sel_sprite(su, 1027); c_sel_sprite(ra, 1447); debrisSpawnCircle(); debrisSpawnFall(cam_1.x - 320); c_wait(50); c_speaker("orange"); c_msgsetsubloc(0, "~1* Hahaha^1, look who's getting~2picked on NOW!!/%", (global.lang == "ja") ? "\\m2\t\t\t" : "\\m2\t\t", (global.lang == "ja") ? "&\t\t\t\t" : "&\t\t", "obj_ch5_DWCR03_slash_Step_0_gml_1007_0"); c_talk_wait(); c_mus2("free"); c_customfunc(function() { orange_marker.depth = 5000; orange_marker.visible = true; orange_marker2.visible = false; green_marker.depth = 5000; }); c_waitcustom(); con = 5; timer = 0; } if (con == 4.1) { cutscene_master = scr_cutscene_make(); scr_maincharacters_actors(); scr_miniface_init_flowers(); if (su_actor.x > (kr_actor.x + 55)) { c_sel(su); c_walkdirect(kr_actor.x + 55, su_actor.y, 15); } if (ra_actor.x > (kr_actor.x + 120)) { c_sel(ra); c_walkdirect(kr_actor.x + 120, ra_actor.y, 15); } cam_3 = findspriteinfo(spr_debug_cameraregionpreview, undefined, c_lime); c_pannable(true); c_pan_fancy(cam_3.x, 40, 30, { doround: true, easetype: "easeoutquart" }); c_wait(20); or_pos2 = findspriteinfo(spr_orange_mad_r, "DEBUG_ASSETS", c_white); gr_pos1 = findspriteinfo(spr_enemy_green_walk_right, "DEBUG_ASSETS", c_white); orange_marker = scr_dark_marker_fancy(or_pos2.x, or_pos2.y, spr_enemy_orange_walk_left); green_marker = scr_dark_marker_fancy(gr_pos1.x, gr_pos1.y, spr_enemy_green_walk); green_marker.y += 200; orange_marker.visible = false; green_marker.arrived = 0; green_marker.visible = false; green_marker.reflect_jump_y = 99999; green_marker.source_y = green_marker.ystart; green_marker.jumping = 1; green_marker.lastjumping = 1; orange_marker.reflect_jump_y = 99999; orange_marker.jumping = 1; orange_marker.lastjumping = 1; orange_marker.source_y = orange_marker.ystart; with (obj_castlereflect_manager) { add_reflection(other.orange_marker); add_reflection(other.green_marker); } green_reflection = obj_watersurface.make_reflection(green_marker); orange_reflection = obj_watersurface.make_reflection(orange_marker); ralsei_reflection = obj_watersurface.make_reflection(ra_actor); kris_reflection = obj_watersurface.make_reflection(kr_actor); susie_reflection = obj_watersurface.make_reflection(su_actor); c_sel_facing(kr, "r"); c_sel_facing(su, "r"); c_sel_facing(ra, "r"); c_customfunc(function() { with (green_marker) { instance_create_depth(x + (sprite_width / 2), bbox_bottom - 20, depth - 1, obj_utwaterpillar); snd_play(snd_splash); snd_play(snd_splash, 0.7, 0.6); snd_play(snd_rocket); snd_play(snd_swing, 0.6, 0.8); vspeed = -25; gravity = 0.95; visible = true; var _jumpOnce = function() { if (vspeed > 0 && reflect_jump_y > 999) reflect_jump_y = 0; if (arrived == 0 && vspeed > 0 && (y + vspeed) > ystart) { y = ystart; vspeed = 0; gravity = 0; arrived = 1; snd_play(snd_noise); } }; step_func = method(id, _jumpOnce); } }); orange_marker2 = scr_marker_centered(or_pos2.x, or_pos2.y + 160, 8247, 2, 2, 0); orange_marker2.visible = false; orange_marker2.reflect_jump_y = 99999; orange_marker2.jumping = 1; orange_marker2.lastjumping = 1; orange_marker2.source_y = or_pos2.y; with (obj_castlereflect_manager) add_reflection(other.orange_marker2); with (orange_marker2) { scr_depth(); var offset_x = (sprite_width / 2) - (sprite_get_xoffset(sprite_index) * image_xscale); var offset_y = (sprite_height / 2) - (sprite_get_yoffset(sprite_index) * image_yscale); x += offset_x; y += offset_y; squash = 0; var _orangeBigJump = function() { image_xscale = 2 + squash; image_yscale = 2 - squash; if (spin) image_angle += 32; if (y < 200 && reflect_jump_y > 999) reflect_jump_y = 0; scr_depth(); }; spin = false; step_func = method(id, _orangeBigJump); } c_customfunc(function() { with (orange_marker2) instance_create_depth(x, bbox_bottom - 20, depth - 1, obj_utwaterpillar); }); c_var_instance(orange_marker2, "visible", true); c_var_instance(orange_marker2, "squash", -0.8); c_snd_play(snd_swing); c_var_lerp_to_instance(orange_marker2, "y", 40, 30, 2, "out"); c_var_lerp_to_instance(orange_marker2, "squash", 0, 25); c_var_instance(orange_marker2, "spin", true); c_wait(8); c_snd_play(snd_smallswing); c_wait(8); c_snd_play(snd_smallswing); c_wait(8); c_snd_play(snd_smallswing); c_wait(16); c_var_instance(orange_marker2, "sprite_index", spr_enemy_orange_fly_withfist); c_var_instance(orange_marker2, "spin", false); c_var_instance(orange_marker2, "image_angle", 180); c_snd_play(snd_heavyswing); c_var_lerp_to_instance(orange_marker2, "y", or_pos2.y - 15, 7); crater_marker = scr_dark_marker(orange_marker2.x + 10, 320, spr_big_crack); crater_marker.visible = false; crater_marker.depth = 98000; c_wait(7); c_var_instance(orange_marker2, "jumping", 0); c_var_instance(crater_marker, "visible", true); c_snd_play(snd_closet_impact); c_shakex(25, 25, 1); c_sel_sprite(su, 1027); c_sel_sprite(ra, 1447); debrisSpawnCircle(); debrisSpawnFall(cam_3.x); c_wait_if(green_marker, "arrived", "=", 1); c_wait(70); c_customfunc(function() { orange_marker.depth = 5000; orange_marker.visible = true; orange_marker2.visible = false; green_marker.depth = 5000; }); con = 5; c_waitcustom(); } if (con == 5 && customcon == 1) { if (timer == 0) { setxy(kr_actor.x, kr_actor.y, 1198); with (obj_caterpillarchara) { if (name == "ralsei") setxy(other.ra_actor.x, other.ra_actor.y); if (name == "susie") setxy(other.su_actor.x, other.su_actor.y); } with (obj_actor) visible = false; scr_battle(221, 3, orange_marker, green_marker, 0); with (orange_marker) scr_var_delay("visible", 0, 24); with (green_marker) scr_var_delay("visible", 0, 24); global.tempflag[tempflag_index]++; global.cutscene = 0; if (scr_debug()) show_debug_message_concat("greenorange already fought count: ", global.tempflag[tempflag_index]); } timer++; if (timer > 45 && !i_ex(obj_battlecontroller)) { timer = 0; con = 6; with (obj_actor) visible = false; } } if (con == 6) { if (!i_ex(obj_endbattle)) { con = 7; customcon = 0; with (obj_caterpillarchara) visible = false; with (obj_mainchara) visible = false; c_waitcustom_end(); global.cutscene = 1; } show_debug_message_concat("cutscene: ", global.cutscene); } if (con == 7) { c_sel(kr); c_visible(true); c_sel(ra); c_visible(true); c_sprite(spr_ralsei_walk_right); c_sel(su); c_visible(true); c_sprite(spr_susie_walk_right_dw); con = 8; c_pan(0, 40, 30); c_wait(30); c_sel_facing(kr, "d"); c_pannable(false); c_actortokris(); c_actortocaterpillar(); c_terminatekillactors(); with (obj_custom_interactable_solid) instance_destroy(); } if (con == 8 && !i_ex(obj_cutscene_master)) { with (obj_marker_fancy) { if (variable_instance_exists(id, "rock") && rock == true) { depth = 98000 - y; step_func = method(id, function() { }); } } show_debug_message_concat("cutscene part 2 ended"); global.interact = 0; global.facing = 0; global.flag[1811] = 1; if (plot_check_on) scr_flag_set(plot_flag, plot_post); con = 999; } with (orange_marker) { if (reflect_jump_y > 999) continue; if (!lastjumping) source_y = y; if (jumping) reflect_jump_y = (y - source_y) * -2; else reflect_jump_y = 0; lastjumping = jumping; } with (orange_marker2) { if (reflect_jump_y > 999) continue; if (!lastjumping) source_y = y; if (jumping) reflect_jump_y = (y - source_y) * -2; else reflect_jump_y = 0; lastjumping = jumping; } with (green_marker) { if (reflect_jump_y > 999) continue; if (!lastjumping) source_y = y; if (jumping) reflect_jump_y = (y - source_y) * -2; else reflect_jump_y = 0; lastjumping = jumping; }