if (ask_about_jumping && !global.pause_plat && button2_p()) { with (obj_plat_player) { if (grounded) ask_about_jumping = false; } } if (!init) { init = 1; if (global.plot < 295) { with (obj_plat_vinehook_small) instance_destroy(); if (global.flag[24] == 1) instance_create(0, 0, obj_plat_ralsei_menu_message); } else { pause_enemies = true; } with (obj_plat_attacktrigger) on_slash = other.attack_wall; if (scr_flag_get_ext(_ROOM_STATE_FLAG, _BRAMBLES_ACTED_BIT, 1) == 0) { with (obj_bramble) { on_acted = other.bramble_interact; on_slashed = other.on_slashed; } } else { with (obj_bramble) scr_destroy_platmode_act(); } } if (failcounter < 999 && (global.plot >= 295 || scr_trigcheck_ext("stophelpingme", 910))) failcounter = 999; var plat_susie = -4; var plat_ralsei = -4; with (obj_plat_follower) { if (name == "susie") plat_susie = self; if (name == "ralsei") plat_ralsei = self; } if (plat_susie == -4 || plat_ralsei == -4) exit; timer++; with (obj_plat_follower) { if (attacking > 0 || is_platform_mode > 0) { other.act_tutorial_con = 1; with (other.acttutdialoguer) instance_destroy(); } } with (obj_plat_pinatabell) { if (y < 0) cull_buffer_bottom = abs(y) + 120; } if (con < 206 && scr_trigcheck_ext("xtalktrig3", 910)) con = 206; if (con < 206 && scr_trigcheck_ext("xtalktrig2", 910)) { scr_speaker("ralsei"); msgsetsubloc(0, "* (Try ACTing on that WARDROBE!)", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_garden_aquaplatforming_slash_Step_0_gml_59_0"); d_make_plat(false, 10); con = 206; } if (global.interact == 0 && !global.pause_plat && con < 207 && scr_trigcheck_ext("xtalktrig4", 910) && obj_plat_player.grounded) { scr_tempsave(); scr_flag_set_ext(_ROOM_STATE_FLAG, _JUMP_TUTORIAL_BIT, 1); scr_flag_set_ext(_ROOM_STATE_FLAG, _ACT_TUTORIAL_BIT, 1); global.plot = 295; con = 207.5; with (obj_dialoguer_plat) instance_destroy(); scr_delay_var("con", 208, 1); global.interact = 1; cutscene_master = scr_cutscene_make(); c_pannable(1); c_pan(aqua_cam_zone.x, aqua_cam_zone.y, 30); c_mus2("volume", 0, 30); scr_maincharacters_actors(); aq = scr_setup_plat_actor(npc_aqua, "aqua"); c_plat_prepare_followers(); c_plat_moveto(kr_actor, "cut1kr"); c_plat_moveto(su_actor, "cut1su"); c_plat_moveto(ra_actor, "cut1ra"); c_wait(10); c_plat_goal_reached(kr_actor); c_plat_goal_reached(su_actor); c_plat_goal_reached(ra_actor); c_plat_turn(kr_actor, "r"); c_plat_turn(su_actor, "r"); c_plat_turn(ra_actor, "r"); c_wait(40); var _pos_update = function() { x = movewith.x; y = movewith.y; }; c_sel(su); c_sprite(spr_susie_point_right_normal); c_sel(ra); c_sprite(spr_plat_ralsei_idle); scr_miniface_init_flowers(); c_speaker("susie"); c_msgsetsubloc(0, "\\E2* Hey^1! It's you^1! Feather girl!/%", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_garden_aquaplatforming_slash_Step_0_gml_157_0"); c_talk_wait(); c_sel(aq); c_sprite(spr_enemy_aqua_pose); c_imagespeed(0.2); c_wait(20); c_sprite(spr_aqua_sleevewave); c_customfunc(function() { snd_free_all(); scr_musicer("meeting_flower.ogg", 0.7); }); c_speaker("aqua"); c_msgsetsubloc(0, "~1* Oh^1, it's humans^1, humans!/%", (global.lang == "ja") ? "\\m0\t\t\t" : "\\m0\t\t", (global.lang == "ja") ? "&\t\t\t\t" : "&\t\t", "obj_dw_garden_aquaplatforming_slash_Step_0_gml_170_0"); c_talk_wait(); c_sel(su); c_sprite(spr_plat_susie_idle); c_sel(ra); c_visible(true); c_sprite(spr_plat_ralsei_pose_arms); c_speaker("ralsei"); c_msgsetsubloc(0, "\\E2* We're really enjoying your gift^1! Thank you!/%", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_garden_aquaplatforming_slash_Step_0_gml_179_0"); c_talk_wait(); c_sprite(spr_plat_ralsei_idle); aqua_vspeed = -9; aqua_grav = 0.5; aqua_time = (-aqua_vspeed / aqua_grav) * 2; c_customfunc(function(arg0) { arg0.image_speed = (5 / aqua_time) * 2; arg0.set_sprite(3476); snd_play(snd_wing); arg0.vspeed = aqua_vspeed; arg0.entity_gravity = aqua_grav; arg0.physics = true; }, npc_aqua); c_wait(aqua_time); c_sel(aq); c_sprite(spr_aqua_sleevewave); } if (con == 208) { con = 209; c_speaker("aqua"); c_msgsetsubloc(0, "~1* Uuu^1, really!^1? I'm so happy!!/", (global.lang == "ja") ? "\\m0\t\t\t" : "\\m0\t\t", (global.lang == "ja") ? "&\t\t\t\t" : "&\t\t", "obj_dw_garden_aquaplatforming_slash_Step_0_gml_227_0"); c_msgnextsubloc("~1* Hmm..^1. what else do I have to~2give.../", (global.lang == "ja") ? "\\m0\t\t\t" : "\\m0\t\t", (global.lang == "ja") ? "&\t\t\t\t" : "&\t\t", "obj_dw_garden_aquaplatforming_slash_Step_0_gml_228_0"); c_msgnextsubloc("~1* Uuu^1, I know^1! Yes^1, something~2brand new.../%", (global.lang == "ja") ? "\\m0\t\t\t" : "\\m0\t\t", (global.lang == "ja") ? "&\t\t\t\t" : "&\t\t", "obj_dw_garden_aquaplatforming_slash_Step_0_gml_229_0"); c_talk(); c_wait_box(1); c_sel(aq); c_sprite(spr_aqua_shakehead); c_imagespeed(0); c_imageindex(0); c_wait_talk(); c_sprite(spr_aqua_sleevewave); c_imagespeed(0.25); c_msgsetsubloc(0, "~1* Uuu^1, how about this!?/%", (global.lang == "ja") ? "\\m0\t\t\t" : "\\m0\t\t", (global.lang == "ja") ? "&\t\t\t\t" : "&\t\t", "obj_dw_garden_aquaplatforming_slash_Step_0_gml_239_0"); c_talk_wait(); c_mus2("volume", 0, 0); c_customfunc(function(arg0) { with (instance_create(arg0.x - 20, arg0.y - 180, obj_flower_spawner)) { obj_index = 569; image_blend = c_aqua; colored = true; } scr_plat_barrier_enable(); }, npc_aqua); c_sel(ra); c_shake(); c_sprite(spr_ralsei_shocked_right); c_sel(su); c_shake(); c_sprite(spr_susie_shock_r); c_wait(30); c_sel(aq); c_sprite(spr_enemy_aqua_spin); c_imagespeed(0.25); c_msgsetsubloc(0, "~1* It's my brand-new bullet pattern!/", (global.lang == "ja") ? "\\m0\t\t\t" : "\\m0\t\t", (global.lang == "ja") ? "&\t\t\t\t" : "&\t\t", "obj_dw_garden_aquaplatforming_slash_Step_0_gml_261_0"); c_msgnextsubloc("~1* Here^1, play with it while I'm gone!~2Uee hee hee!/%", (global.lang == "ja") ? "\\m0\t\t\t" : "\\m0\t\t", (global.lang == "ja") ? "&\t\t\t\t" : "&\t\t", "obj_dw_garden_aquaplatforming_slash_Step_0_gml_262_0"); c_talk_wait(); c_customfunc(function(arg0) { snd_play(snd_wing); arg0.hspeed = 8; arg0.vspeed = -16; arg0.entity_gravity = 0.5; arg0.physics = false; scr_doom(arg0, 100); }, npc_aqua); c_wait(30); c_actortokris(); c_actortocaterpillar(); c_terminatekillactors(); } if (con == 209 && !i_ex(obj_cutscene_master)) { global.interact = 0; global.facing = 0; snd_free_all(); scr_musicer("rudebuster_boss.ogg", undefined, undefined, undefined, 5); scr_speaker("noname"); msgsetsubloc(0, "* BULLET PATTERN attacked!", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_garden_aquaplatforming_slash_Step_0_gml_288_0"); d_make_plat(0, 10, undefined, undefined, 1); con = 210; } if (con == 210) { if (enemywavetimer >= 0 && !global.pause_plat) { enemywavetimer++; if (enemywavetimer == 300) { var do_advice = false; with (obj_plat_enm_aqua_miniboss) { if (hp >= 7) { do_advice = true; break; } } if (do_advice) { scr_speaker("ralsei"); msgsetsubloc(0, "\\EE* Kris^1, it's just a bullet pattern^1! It's okay to ATTACK!", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_garden_aquaplatforming_slash_Step_0_gml_307_0"); msgnextsubloc("\\EK* Though^1, I suppose the pattern will eventually stop...?", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_garden_aquaplatforming_slash_Step_0_gml_308_0"); d_make_plat(0, 3); } } if (enemywavetimer >= 2700 && instance_exists(obj_plat_enm_aqua_miniboss)) { with (obj_plat_enm_aqua_miniboss) { hp = 999999; hit = 20; con = 99; with (obj_plat_bulletred) { if (sprite_index == spr_faqua_knife_cracked) { if (variable_instance_exists(id, "owner")) { if (!instance_exists(owner)) { event_user(10); lifetime = 0; } else if (owner.id == other.id) { event_user(10); lifetime = 0; } } } } with (__spawner) instance_destroy(); snd_play(snd_spearappear_choppy); flash_hurt(16777215); with (scr_afterimage_monochrome(16777215, 1)) { image_alpha = 0.3; scr_lerpvar("image_xscale", image_xscale, image_xscale + 0.5, 15, 1, "out"); scr_lerpvar("image_yscale", image_yscale, image_yscale + 0.5, 15, 1, "out"); } scr_lerpvar("image_alpha", image_alpha, 0, 30); scr_delay_var("y", y - 10000, 80); scr_doom(self, 80); } bullettimeout = 1; } } } if (con == 210 && (!scr_plat_enemy_wave_active() || bullettimeout)) { con = 210.1; scr_delay_var("con", 210.25, 20); } if (con >= 210.2 && con < 210.5) { con = 210.5; with (obj_dialoguer_plat) instance_destroy(); scr_delay_var("con", 211, 1); global.interact = 1; cutscene_master = scr_cutscene_make(); scr_maincharacters_actors(); c_plat_prepare_followers(); c_customfunc(function() { snd_free_all(); }); c_wait(30); c_plat_moveto(kr_actor, "cut2kr"); c_plat_moveto(su_actor, "cut2su"); c_plat_moveto(ra_actor, "cut2ra"); c_wait(10); c_plat_goal_reached(kr_actor); c_plat_goal_reached(su_actor); c_plat_goal_reached(ra_actor); c_sndplay(snd_swing); c_plat_animate(su_actor, 8084); c_plat_animate(ra_actor, 2415); c_plat_animate(kr_actor, 5475); c_wait(15); c_sndplay(snd_feather_get); c_plat_animate(su_actor, 6035); c_plat_animate(ra_actor, 7396); c_plat_animate(kr_actor, 6176); c_wait(45); c_speaker("no_name"); if (!bullettimeout) c_msgsetsubloc(0, "* BULLET PATTERN was defeated!/%", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_garden_aquaplatforming_slash_Step_0_gml_386_0"); else c_msgsetsubloc(0, "* BULLET PATTERN ran out of energy and dissipated!/%", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_garden_aquaplatforming_slash_Step_0_gml_388_0"); c_talk_wait(); c_sndplay(snd_wing); c_customfunc(function(arg0) { scr_plat_barrier_disable(); }, npc_aqua); c_wait(15); c_plat_stop_animation(su_actor); c_plat_stop_animation(ra_actor); c_plat_stop_animation(kr_actor); c_plat_turn(kr_actor, "r"); c_plat_turn(ra_actor, "r"); c_plat_turn(su_actor, "r"); c_wait(1); c_panobj(kr_actor, 17); c_customfunc(function() { with (obj_panner) { panx += 12; finalx += 12; pany = 0; finaly = cameray(); } }); c_wait(19); c_pannable(0); c_actortokris(); c_actortocaterpillar(); c_terminatekillactors(); } if (con == 211 && !i_ex(obj_cutscene_master)) { global.interact = 0; global.facing = 0; snd_free_all(); scr_musicer("birds_ch5.ogg", 1, undefined, undefined, 30); con = 212; scr_tempsave(); } if (plat_ralsei.x >= 2300 && plat_ralsei.x <= 2700) { if (ralseiplatprogress == 0) { if (plat_ralsei.is_platform_mode == 3 && !d_plat_exists(3)) { act_tutorial_con = 1; scr_speaker("ralsei"); msgsetsubloc(0, "\\EH* Here^1! Jump on me^1, friends!", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_garden_aquaplatforming_slash_Step_0_gml_429_0"); d_make_plat(0, 3); ralseiplatprogress = 1; scr_delay_var("ralseiplatprogress", 2, 300); } } else if (ralseiplatprogress == 1) { if (plat_ralsei.is_platform_mode < 3 || scr_plat_standing_on("kr", plat_ralsei.platform)) { ralseiplatprogress = 99; cancel_ralseiplat = 1; } } else if (ralseiplatprogress == 2) { if (!cancel_ralseiplat && !d_plat_exists(3)) { scr_speaker("ralsei"); msgsetsubloc(0, "\\E2* It's me^1! Your friendly neighborhood^1, um^1, platform!", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_garden_aquaplatforming_slash_Step_0_gml_442_0"); d_make_plat(0, 3); ralseiplatprogress = 1; scr_delay_var("ralseiplatprogress", 3, 300); } } else if (ralseiplatprogress == 3) { if (!cancel_ralseiplat && !d_plat_exists(3)) { scr_speaker("ralsei"); msgsetsubloc(0, "\\EK* A..^1. anyone...?", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_garden_aquaplatforming_slash_Step_0_gml_450_0"); d_make_plat(0, 3); ralseiplatprogress = 99; } } if (wavedashprogress < 3) { if (wavedashcon == 0) { if (plat_ralsei.is_platform_mode && plat_ralsei.image_index == 2) { wavedashcon = 1; wavedash_last_player_dir = obj_plat_player.image_xscale; } } else if (!plat_ralsei.is_platform_mode || plat_ralsei.image_index < 2) { wavedashcon = 0; } else { if (obj_plat_player.image_xscale != wavedash_last_player_dir) { if (wavedashwindow > 0) { wavedash_last_player_dir = obj_plat_player.image_xscale; wavedashcount++; } wavedashwindow = 30; } if (wavedashcount >= (15 * (wavedashprogress + 1))) { wavedashcount = 0; wavedashprogress++; if (wavedashprogress == 1) { scr_speaker("ralsei"); msgsetsubloc(0, "\\EO* Umm^1, h-how long are you guys going to wavedash on me?", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_garden_aquaplatforming_slash_Step_0_gml_479_0"); d_make_plat(0, 4); } else if (wavedashprogress == 2) { scr_speaker("susie"); msgsetsubloc(0, "\\E2* As long as it takes.", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_garden_aquaplatforming_slash_Step_0_gml_483_0"); d_make_plat(0, 4); } else { scr_speaker("ralsei"); msgsetsubloc(0, "\\Eo* As long as it takes for what!?", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_garden_aquaplatforming_slash_Step_0_gml_487_0"); d_make_plat(0, 4); } } } wavedashwindow--; } } if (instance_number(obj_bramble) < 3) bramble_con = 999; if (bramble_con >= 2 && bramble_con <= 240) { with (obj_bramble) { if (abs(obj_plat_player.x - x) < 300) { other.bramble_con++; break; } } if (bramble_con == 240) { bramble_con = 900; scr_speaker("ralsei"); msgsetsubloc(0, "\\EK* (Try pressing ~1, Kris...)", scr_get_input_name(4), (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_garden_aquaplatforming_slash_Step_0_gml_510_0"); bramble_act_dialoguer = d_make_plat(0, 4, [-2]); } } if (bramble_con == 1000) { if (instance_exists(bramble_act_dialoguer)) bramble_con = 1001; } if (bramble_con > 1000) { bramble_con++; if (bramble_con > 1120 && instance_exists(bramble_act_dialoguer)) { with (bramble_act_dialoguer) instance_destroy(); bramble_con = -1; } }