From 602c12259c1f3e6f620bfd2c0b7bc35bb0644be3 Mon Sep 17 00:00:00 2001 From: Alexander Yee Date: Sun, 21 Dec 2025 17:25:01 -0800 Subject: [PATCH 1/3] Partial ticks migration for AutoStory. --- .../AutoStory/PokemonSV_AutoStoryTools.cpp | 12 ++-- .../PokemonSV_AutoStory_Segment_01.cpp | 10 +-- .../PokemonSV_AutoStory_Segment_02.cpp | 2 +- .../PokemonSV_AutoStory_Segment_03.cpp | 8 ++- .../PokemonSV_AutoStory_Segment_04.cpp | 26 +++++++- .../PokemonSV_AutoStory_Segment_08.cpp | 24 ++++++- .../PokemonSV_AutoStory_Segment_09.cpp | 4 +- .../PokemonSV_AutoStory_Segment_10.cpp | 28 ++++---- .../PokemonSV_AutoStory_Segment_11.cpp | 18 ++--- .../PokemonSV_AutoStory_Segment_12.cpp | 6 +- .../PokemonSV_AutoStory_Segment_13.cpp | 56 ++++++++-------- .../PokemonSV_AutoStory_Segment_14.cpp | 56 ++++++++-------- .../PokemonSV_AutoStory_Segment_15.cpp | 28 ++++---- .../PokemonSV_AutoStory_Segment_16.cpp | 22 +++---- .../PokemonSV_AutoStory_Segment_17.cpp | 14 ++-- .../PokemonSV_AutoStory_Segment_18.cpp | 52 +++++++-------- .../PokemonSV_AutoStory_Segment_19.cpp | 34 +++++----- .../PokemonSV_AutoStory_Segment_20.cpp | 42 +++++++++--- .../PokemonSV_AutoStory_Segment_21.cpp | 24 +++---- .../PokemonSV_AutoStory_Segment_22.cpp | 22 +++---- .../PokemonSV_AutoStory_Segment_23.cpp | 30 ++++----- .../PokemonSV_AutoStory_Segment_24.cpp | 28 ++++---- .../PokemonSV_AutoStory_Segment_25.cpp | 32 ++++----- .../PokemonSV_AutoStory_Segment_26.cpp | 44 ++++++------- .../PokemonSV_AutoStory_Segment_27.cpp | 34 +++++----- .../PokemonSV_AutoStory_Segment_28.cpp | 22 +++---- .../PokemonSV_AutoStory_Segment_29.cpp | 42 ++++++------ .../PokemonSV_AutoStory_Segment_30.cpp | 34 +++++----- .../PokemonSV_AutoStory_Segment_31.cpp | 56 +++++++++------- .../PokemonSV_AutoStory_Segment_32.cpp | 16 ++--- .../PokemonSV_AutoStory_Segment_33.cpp | 22 +++---- .../PokemonSV_AutoStory_Segment_34.cpp | 10 +-- .../PokemonSV_AutoStory_Segment_35.cpp | 66 ++++++++++++++----- .../PokemonSV_AutoStory_Segment_36.cpp | 2 +- .../PokemonSV_AutoStory_Segment_37.cpp | 17 ++++- .../PokemonSV_AutoStory_Segment_38.cpp | 2 +- .../PokemonSV_AutoStory_Segment_39.cpp | 8 +-- .../PokemonSV_AutoStory_Segment_40.cpp | 6 +- .../Programs/PokemonSV_WorldNavigation.cpp | 14 ++-- .../Programs/PokemonSV_WorldNavigation.h | 4 +- 40 files changed, 552 insertions(+), 425 deletions(-) diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStoryTools.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStoryTools.cpp index 7f71fcf8a..597839b59 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStoryTools.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStoryTools.cpp @@ -1207,8 +1207,8 @@ void realign_player_from_landmark( } uint8_t move_x1 = move_cursor_near_landmark.move_x; uint8_t move_y1 = move_cursor_near_landmark.move_y; - uint16_t move_duration1 = move_cursor_near_landmark.move_duration; - pbf_move_left_joystick(context, move_x1, move_y1, move_duration1, 1 * TICKS_PER_SECOND); + Milliseconds move_duration1 = move_cursor_near_landmark.move_duration; + pbf_move_left_joystick(context, move_x1, move_y1, move_duration1, 1000ms); // move cursor to pokecenter double push_scale = 0.29 * adjustment_table[try_count]; @@ -1243,8 +1243,8 @@ void realign_player_from_landmark( } uint8_t move_x2 = move_cursor_to_target.move_x; uint8_t move_y2 = move_cursor_to_target.move_y; - uint16_t move_duration2 = move_cursor_to_target.move_duration; - pbf_move_left_joystick(context, move_x2, move_y2, move_duration2, 1 * TICKS_PER_SECOND); + Milliseconds move_duration2 = move_cursor_to_target.move_duration; + pbf_move_left_joystick(context, move_x2, move_y2, move_duration2, 1000ms); // place down marker pbf_press_button(context, BUTTON_A, 20, 105); @@ -1337,8 +1337,8 @@ void move_cursor_towards_flypoint_and_go_there( } uint8_t move_x1 = move_cursor_near_flypoint.move_x; uint8_t move_y1 = move_cursor_near_flypoint.move_y; - uint16_t move_duration1 = move_cursor_near_flypoint.move_duration; - pbf_move_left_joystick(context, move_x1, move_y1, move_duration1, 1 * TICKS_PER_SECOND); + Milliseconds move_duration1 = move_cursor_near_flypoint.move_duration; + pbf_move_left_joystick(context, move_x1, move_y1, move_duration1, 1000ms); double push_scale = 0.29 * adjustment_table[try_count]; if (!fly_to_visible_closest_flypoint_cur_zoom_level(info, stream, context, fly_point, push_scale)){ diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_01.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_01.cpp index 9851f9af5..25a906731 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_01.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_01.cpp @@ -131,7 +131,7 @@ void checkpoint_02( env.console.log("Go to the kitchen, talk with mom"); env.console.overlay().add_log("Go to the kitchen, talk with mom", COLOR_WHITE); pbf_move_left_joystick(context, 128, 255, 2000ms, 160ms); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60, 0, 128); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms, 0, 128); env.console.log("clear_dialog: Talk with Mom."); clear_dialog(env.console, context, ClearDialogMode::STOP_TIMEOUT, 5, {}); @@ -140,7 +140,7 @@ void checkpoint_02( env.console.log("Go to the front door, talk with Clavell"); env.console.overlay().add_log("Go to the front door, talk with Clavell", COLOR_WHITE); pbf_move_left_joystick(context, 230, 200, 2000ms, 160ms); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60, 255, 128); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms, 255, 128); env.console.log("clear_dialog: Talk with Clavell at front door."); clear_dialog(env.console, context, ClearDialogMode::STOP_TIMEOUT, 5, {}); @@ -162,7 +162,7 @@ void checkpoint_02( pbf_move_left_joystick(context, 0, 0, 3000ms, 160ms); pbf_move_left_joystick(context, 0, 128, 3000ms, 160ms); pbf_move_left_joystick(context, 128, 255, 4000ms, 160ms); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60, 0, 128); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms, 0, 128); env.console.log("clear_dialog: Talk with Clavell at living room."); clear_dialog(env.console, context, ClearDialogMode::STOP_TIMEOUT, 10, {}); @@ -170,7 +170,7 @@ void checkpoint_02( context.wait_for_all_requests(); env.console.log("Go outside, receive Rotom Phone"); env.console.overlay().add_log("Go outside, receive Rotom Phone", COLOR_WHITE); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60, 245, 230); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms, 245, 230); env.console.log("clear_dialog: Talk with Clavell outside. Receive Rotom phone. Stop when detect overworld."); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::OVERWORLD, CallbackEnum::WHITE_A_BUTTON}); @@ -201,7 +201,7 @@ void checkpoint_03( pbf_move_left_joystick(context, 0, 128, 30, 50); direction.change_direction(env.program_info(), env.console, context, 4.62); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20000ms); context.wait_for_all_requests(); env.console.log("Entered Nemona's house"); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_02.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_02.cpp index 0e5106377..b110dadab 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_02.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_02.cpp @@ -85,7 +85,7 @@ void checkpoint_04( direction.change_direction(env.program_info(), env.console, context, 4.55); pbf_move_left_joystick(context, 128, 0, 600, 50); direction.change_direction(env.program_info(), env.console, context, 5.27); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 160ms); context.wait_for_all_requests(); env.console.log("Starting battle..."); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_03.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_03.cpp index eee8ff6ff..9a2ebc70e 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_03.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_03.cpp @@ -92,7 +92,13 @@ void checkpoint_05( direction.change_direction(env.program_info(), env.console, context, 1.92); pbf_move_left_joystick(context, 128, 0, 7000ms, 400ms); direction.change_direction(env.program_info(), env.console, context, 1.13); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20); + walk_forward_until_dialog( + env.program_info(), + env.console, + context, + NavigationMovementMode::DIRECTIONAL_ONLY, + 20000ms + ); context.wait_for_all_requests(); env.console.log("Get mom's sandwich"); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_04.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_04.cpp index 9da9c02e2..eda3465f4 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_04.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_04.cpp @@ -92,7 +92,13 @@ void checkpoint_08( context.wait_for_all_requests(); clear_dialog(env.console, context, ClearDialogMode::STOP_TIMEOUT, 10, {}); env.console.log("Go to Legendary pokemon laying on the beach."); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30); + walk_forward_until_dialog( + env.program_info(), + env.console, + context, + NavigationMovementMode::DIRECTIONAL_SPAM_A, + 30000ms + ); env.console.log("clear_dialog: Offer Miraidon/Koraidon a sandwich."); clear_dialog(env.console, context, ClearDialogMode::STOP_TIMEOUT, 10, {}); @@ -139,7 +145,14 @@ void checkpoint_08( realign_player(env.program_info(), stream, context, PlayerRealignMode::REALIGN_NO_MARKER, 150, 20, 20); pbf_move_left_joystick(context, 128, 0, 1000, 50); realign_player(env.program_info(), stream, context, PlayerRealignMode::REALIGN_NO_MARKER, 160, 20, 20); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60, 128, 0); + walk_forward_until_dialog( + env.program_info(), + env.console, + context, + NavigationMovementMode::DIRECTIONAL_ONLY, + 60000ms, + 128, 0 + ); } ); @@ -190,7 +203,14 @@ void checkpoint_08( ); env.console.log("overworld_navigation: Go to Houndoom."); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60, 128, 0); + walk_forward_until_dialog( + env.program_info(), + env.console, + context, + NavigationMovementMode::DIRECTIONAL_ONLY, + 60000ms, + 128, 0 + ); mash_button_till_overworld(env.console, context, BUTTON_A); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_08.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_08.cpp index dd6efc6d0..39d91c1b6 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_08.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_08.cpp @@ -105,7 +105,13 @@ void checkpoint_13( context.wait_for_all_requests(); realign_player(info, env.console, context, PlayerRealignMode::REALIGN_NEW_MARKER, 0, 80, 50); walk_forward_while_clear_front_path(info, env.console, context, 500); - walk_forward_until_dialog(info, env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30); + walk_forward_until_dialog( + info, + env.console, + context, + NavigationMovementMode::DIRECTIONAL_ONLY, + 30000ms + ); }); env.console.log("clear_dialog: Talk with Nemona at Mesagoza gate. Stop when detect battle."); @@ -151,7 +157,13 @@ void checkpoint_14( // realign going straight realign_player(env.program_info(), env.console, context, PlayerRealignMode::REALIGN_NEW_MARKER, 128, 0, 100); // walk forward until hit dialog at top of stairs - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60); + walk_forward_until_dialog( + env.program_info(), + env.console, + context, + NavigationMovementMode::DIRECTIONAL_ONLY, + 60000ms + ); // clear dialog until battle. with prompt, battle env.console.log("clear_dialog: Talk with Team Star at the top of the stairs. Stop when detect battle."); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::PROMPT_DIALOG, CallbackEnum::BATTLE, CallbackEnum::DIALOG_ARROW}); @@ -194,7 +206,13 @@ void checkpoint_15( // realign going straight realign_player(env.program_info(), env.console, context, PlayerRealignMode::REALIGN_OLD_MARKER); // walk forward until hit dialog inside the school - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60); + walk_forward_until_dialog( + env.program_info(), + env.console, + context, + NavigationMovementMode::DIRECTIONAL_ONLY, + 60000ms + ); env.console.log("clear_dialog: Talk with Nemona, Clavell, and Jacq inside the school. Stop when detect overworld."); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_09.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_09.cpp index fabc95473..ee9612cd6 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_09.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_09.cpp @@ -156,7 +156,7 @@ void checkpoint_17( context.wait_for_all_requests(); // walk backwards until dialog - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20, 128, 255); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20000ms, 128, 255); env.console.log("Talk with Cassiopeia."); mash_button_till_overworld(env.console, context, BUTTON_A, 360); @@ -277,7 +277,7 @@ void checkpoint_20( env.console.log("Leave dorm for schoolyard."); mash_button_till_overworld(env.console, context, BUTTON_A, 360); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60, 128, 0); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms, 128, 0); env.console.log("Talk to Nemona, Arven, Cassiopeia."); clear_dialog(env.console, context, ClearDialogMode::STOP_TIMEOUT, 16, diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_10.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_10.cpp index 4f6df82d0..91a7f46cd 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_10.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_10.cpp @@ -158,8 +158,8 @@ void checkpoint_22( // section 1 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 128, 80}, - {ZoomChange::KEEP_ZOOM, 255, 80, 37} + {ZoomChange::ZOOM_IN, 0, 128, 640ms}, + {ZoomChange::KEEP_ZOOM, 255, 80, 296ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -168,8 +168,8 @@ void checkpoint_22( // section 2 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 128, 40}, - {ZoomChange::KEEP_ZOOM, 255, 255, 27} + {ZoomChange::ZOOM_IN, 0, 128, 320ms}, + {ZoomChange::KEEP_ZOOM, 255, 255, 216ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -178,8 +178,8 @@ void checkpoint_22( // section 3. set marker to pokecenter realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 128, 128, 0}, - {ZoomChange::KEEP_ZOOM, 128, 128, 0} + {ZoomChange::ZOOM_IN, 128, 128, 0ms}, + {ZoomChange::KEEP_ZOOM, 128, 128, 0ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -225,8 +225,8 @@ void checkpoint_23( // section 2 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 128, 80}, - {ZoomChange::KEEP_ZOOM, 255, 95, 100} + {ZoomChange::ZOOM_IN, 0, 128, 640ms}, + {ZoomChange::KEEP_ZOOM, 255, 95, 800ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ @@ -243,8 +243,8 @@ void checkpoint_23( // section 3 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 128, 80}, - {ZoomChange::KEEP_ZOOM, 255, 75, 65} + {ZoomChange::ZOOM_IN, 0, 128, 640ms}, + {ZoomChange::KEEP_ZOOM, 255, 75, 520ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ @@ -261,8 +261,8 @@ void checkpoint_23( // section 4 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 128, 50}, - {ZoomChange::KEEP_ZOOM, 255, 180, 17} + {ZoomChange::ZOOM_IN, 0, 128, 400ms}, + {ZoomChange::KEEP_ZOOM, 255, 180, 136ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ @@ -279,8 +279,8 @@ void checkpoint_23( // section 5. set marker to pokecenter realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 128, 128, 0}, - {ZoomChange::KEEP_ZOOM, 128, 128, 0} + {ZoomChange::ZOOM_IN, 128, 128, 0ms}, + {ZoomChange::KEEP_ZOOM, 128, 128, 0ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_11.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_11.cpp index 550fce768..83b765e53 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_11.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_11.cpp @@ -117,8 +117,8 @@ void checkpoint_24( DirectionDetector direction; if (attempt_number > 0 || ENABLE_TEST){ env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}); } do_action_and_monitor_for_battles(env.program_info(), env.console, context, @@ -135,7 +135,7 @@ void checkpoint_24( context.wait_for_all_requests(); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20000ms); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 0, 0, 100, 20); @@ -145,7 +145,7 @@ void checkpoint_24( // enter gym building. talk go Nemona mash_button_till_overworld(env.console, context, BUTTON_A, 360); // talk to receptionist - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::OVERWORLD}); pbf_move_left_joystick(context, 128, 255, 300, 100); @@ -184,7 +184,7 @@ void checkpoint_25( // section 1.1. keep walking forward and talk to Olive roll NPC do_action_and_monitor_for_battles(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms); } ); mash_button_till_overworld(env.console, context, BUTTON_A); @@ -207,7 +207,7 @@ void checkpoint_25( // section 5. battle first NPC direction.change_direction(env.program_info(), env.console, context, 1.485); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10, 128, 20); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms, 128, 20); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE, CallbackEnum::DIALOG_ARROW}); env.console.log("Battle Olive Roll NPC 1."); run_trainer_battle_press_A(env.console, context, BattleStopCondition::STOP_DIALOG); @@ -227,7 +227,7 @@ void checkpoint_25( // section 9. battle second NPC direction.change_direction(env.program_info(), env.console, context, 4.275); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10, 128, 20); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms, 128, 20); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE, CallbackEnum::DIALOG_ARROW}); env.console.log("Battle Olive Roll NPC 2."); run_trainer_battle_press_A(env.console, context, BattleStopCondition::STOP_DIALOG); @@ -261,7 +261,7 @@ void checkpoint_26( reset_game_from_home(env.program_info(), env.console, context); // talk to Olive roll NPC - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10, 128, 20); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms, 128, 20); mash_button_till_overworld(env.console, context, BUTTON_A); // section 1 @@ -610,7 +610,7 @@ void checkpoint_27( checkpoint_reattempt_loop(env, context, notif_status_update, stats, [&](size_t attempt_number){ context.wait_for_all_requests(); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 128, 40}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 128, 320ms}); }); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_12.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_12.cpp index 34cb951e1..c70fb926b 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_12.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_12.cpp @@ -87,8 +87,8 @@ void checkpoint_28( DirectionDetector direction; if (attempt_number > 0 || ENABLE_TEST){ env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}); } do_action_and_monitor_for_battles(env.program_info(), env.console, context, @@ -128,7 +128,7 @@ void checkpoint_28( wait_for_overworld(env.program_info(), env.console, context); // talk to receptionist - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE, CallbackEnum::PROMPT_DIALOG, CallbackEnum::DIALOG_ARROW}); // battle Katy diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_13.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_13.cpp index abdbd0969..8d97c1d57 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_13.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_13.cpp @@ -79,8 +79,8 @@ void checkpoint_29( if (attempt_number > 0 || ENABLE_TEST){ env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}); } // align for long stretch 1, part 1 @@ -102,8 +102,8 @@ void checkpoint_29( // align for long stretch 1, part 2 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 128, 255, 40}, - {ZoomChange::KEEP_ZOOM, 80, 0, 75} + {ZoomChange::ZOOM_IN, 128, 255, 320ms}, + {ZoomChange::KEEP_ZOOM, 80, 0, 600ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, @@ -122,8 +122,8 @@ void checkpoint_29( realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 128, 255, 60}, - {ZoomChange::KEEP_ZOOM, 95, 0, 115} + {ZoomChange::ZOOM_IN, 128, 255, 480ms}, + {ZoomChange::KEEP_ZOOM, 95, 0, 920ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, @@ -141,8 +141,8 @@ void checkpoint_29( // align for long stretch 2 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 128, 255, 100}, - {ZoomChange::KEEP_ZOOM, 0, 105, 65} + {ZoomChange::ZOOM_IN, 128, 255, 800ms}, + {ZoomChange::KEEP_ZOOM, 0, 105, 520ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, @@ -160,8 +160,8 @@ void checkpoint_29( // align for long stretch 3, part 1 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 255, 128, 65}, - {ZoomChange::KEEP_ZOOM, 0, 50, 87} + {ZoomChange::ZOOM_IN, 255, 128, 520ms}, + {ZoomChange::KEEP_ZOOM, 0, 50, 696ms} ); @@ -180,8 +180,8 @@ void checkpoint_29( // align for long stretch 3, part 2 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 255, 160, 65}, - {ZoomChange::KEEP_ZOOM, 20, 0, 110} + {ZoomChange::ZOOM_IN, 255, 160, 520ms}, + {ZoomChange::KEEP_ZOOM, 20, 0, 880ms} ); @@ -200,8 +200,8 @@ void checkpoint_29( // align for long stretch 3, part 3 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 60, 110}, - {ZoomChange::KEEP_ZOOM, 255, 128, 115} + {ZoomChange::ZOOM_IN, 0, 60, 880ms}, + {ZoomChange::KEEP_ZOOM, 255, 128, 920ms} ); @@ -226,7 +226,7 @@ void checkpoint_29( //align for long stretch 3, part 4. just prior to bridge. {0.339062, 0.612037} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.339062, 0.612037} ); @@ -253,7 +253,7 @@ void checkpoint_29( // align to cross bridge {0.385937, 0.615741} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.385937, 0.615741} ); @@ -290,7 +290,7 @@ void checkpoint_29( // walk back to start position before bridge // {0.310937, 0.580556} {0.310937, 0.589815} {0.310937, 0.584259} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.310937, 0.584259} ); @@ -309,7 +309,7 @@ void checkpoint_29( // align to cross bridge {0.385937, 0.615741} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.385937, 0.615741} ); @@ -330,8 +330,8 @@ void checkpoint_29( // align for post-bridge section 1 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 150, 60}, - {ZoomChange::KEEP_ZOOM, 255, 60, 50} // {ZoomChange::KEEP_ZOOM, 255, 60, 50} + {ZoomChange::ZOOM_IN, 0, 150, 480ms}, + {ZoomChange::KEEP_ZOOM, 255, 60, 400ms} // {ZoomChange::KEEP_ZOOM, 255, 60, 50} ); @@ -351,8 +351,8 @@ void checkpoint_29( // align for post-bridge section 2 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 150, 60}, - {ZoomChange::KEEP_ZOOM, 255, 105, 50} + {ZoomChange::ZOOM_IN, 0, 150, 480ms}, + {ZoomChange::KEEP_ZOOM, 255, 105, 400ms} ); @@ -371,8 +371,8 @@ void checkpoint_29( // align for post-bridge section 3. move up towards tree realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 128, 50}, - {ZoomChange::KEEP_ZOOM, 255, 90, 35} + {ZoomChange::ZOOM_IN, 0, 128, 400ms}, + {ZoomChange::KEEP_ZOOM, 255, 90, 280ms} ); @@ -391,8 +391,8 @@ void checkpoint_29( // align for post-bridge section 4 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 128, 50}, - {ZoomChange::KEEP_ZOOM, 255, 55, 25} + {ZoomChange::ZOOM_IN, 0, 128, 400ms}, + {ZoomChange::KEEP_ZOOM, 255, 55, 200ms} ); @@ -413,8 +413,8 @@ void checkpoint_29( // align for post-bridge section 5. set marker to pokecenter. realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 128, 50}, - {ZoomChange::KEEP_ZOOM, 128, 128, 0} + {ZoomChange::ZOOM_IN, 0, 128, 400ms}, + {ZoomChange::KEEP_ZOOM, 128, 128, 0ms} ); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_14.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_14.cpp index 581af7fa7..dd6faf3ec 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_14.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_14.cpp @@ -87,8 +87,8 @@ void checkpoint_30( if (attempt_number > 0 || ENABLE_TEST){ env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 255, 100}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 100}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 255, 800ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 800ms}); } heal_at_pokecenter(env.program_info(), env.console, context); @@ -103,8 +103,8 @@ void checkpoint_30( // section 2 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 255, 200, 200}, - {ZoomChange::KEEP_ZOOM, 0, 65, 220} + {ZoomChange::ZOOM_IN, 255, 200, 1600ms}, + {ZoomChange::KEEP_ZOOM, 0, 65, 1760ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -113,8 +113,8 @@ void checkpoint_30( // section 3 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 255, 200, 200}, - {ZoomChange::KEEP_ZOOM, 0, 80, 235} + {ZoomChange::ZOOM_IN, 255, 200, 1600ms}, + {ZoomChange::KEEP_ZOOM, 0, 80, 1880ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -123,8 +123,8 @@ void checkpoint_30( // section 4. walk until Arven dialog realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 255, 200, 200}, - {ZoomChange::KEEP_ZOOM, 0, 60, 280} + {ZoomChange::ZOOM_IN, 255, 200, 1600ms}, + {ZoomChange::KEEP_ZOOM, 0, 60, 2240ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_DIALOG, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -141,8 +141,8 @@ void checkpoint_30( // section 6 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 0, 0}, - {ZoomChange::KEEP_ZOOM, 0, 20, 65} + {ZoomChange::ZOOM_IN, 0, 0, 0ms}, + {ZoomChange::KEEP_ZOOM, 0, 20, 520ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -153,8 +153,8 @@ void checkpoint_30( // section 7 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 0, 0}, - {ZoomChange::KEEP_ZOOM, 0, 30, 80} + {ZoomChange::ZOOM_IN, 0, 0, 0ms}, + {ZoomChange::KEEP_ZOOM, 0, 30, 640ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -163,8 +163,8 @@ void checkpoint_30( // section 8. enter left side of boulder field realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 255, 255, 50}, - {ZoomChange::KEEP_ZOOM, 0, 40, 95} + {ZoomChange::ZOOM_IN, 255, 255, 400ms}, + {ZoomChange::KEEP_ZOOM, 0, 40, 760ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -177,8 +177,8 @@ void checkpoint_30( // section 9. go to middle-right of boulder field realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 255, 255, 50}, - {ZoomChange::KEEP_ZOOM, 0, 15, 110} + {ZoomChange::ZOOM_IN, 255, 255, 400ms}, + {ZoomChange::KEEP_ZOOM, 0, 15, 880ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -191,8 +191,8 @@ void checkpoint_30( // section 10. walk up right edge realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 255, 255, 80}, - {ZoomChange::KEEP_ZOOM, 0, 12, 130} + {ZoomChange::ZOOM_IN, 255, 255, 640ms}, + {ZoomChange::KEEP_ZOOM, 0, 12, 1040ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -212,8 +212,8 @@ void checkpoint_30( // section 11 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 255, 255, 100}, - {ZoomChange::KEEP_ZOOM, 0, 5, 150} + {ZoomChange::ZOOM_IN, 255, 255, 800ms}, + {ZoomChange::KEEP_ZOOM, 0, 5, 1200ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -222,8 +222,8 @@ void checkpoint_30( // section 12. reach the top. battle Bombirdier realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 255, 255, 100}, - {ZoomChange::KEEP_ZOOM, 50, 0, 170} + {ZoomChange::ZOOM_IN, 255, 255, 800ms}, + {ZoomChange::KEEP_ZOOM, 50, 0, 1360ms} ); try{ overworld_navigation(env.program_info(), env.console, context, @@ -271,8 +271,8 @@ void checkpoint_31( // section 1. fall down the mountain realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 255, 80, 180}, - {ZoomChange::KEEP_ZOOM, 0, 170, 120} + {ZoomChange::ZOOM_IN, 255, 80, 1440ms}, + {ZoomChange::KEEP_ZOOM, 0, 170, 960ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -280,8 +280,8 @@ void checkpoint_31( // section 2 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 255, 80, 100}, - {ZoomChange::KEEP_ZOOM, 0, 255, 55} + {ZoomChange::ZOOM_IN, 255, 80, 800ms}, + {ZoomChange::KEEP_ZOOM, 0, 255, 440ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -289,8 +289,8 @@ void checkpoint_31( // section 3. align to pokecenter realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 255, 0, 40}, - {ZoomChange::KEEP_ZOOM, 0, 0, 0} + {ZoomChange::ZOOM_IN, 255, 0, 320ms}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_15.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_15.cpp index 495df363a..16a8dce06 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_15.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_15.cpp @@ -118,8 +118,8 @@ void checkpoint_33( if (attempt_number > 0 || ENABLE_TEST){ env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 80, 255, 85}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 180, 0, 85}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 80, 255, 680ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 180, 0, 680ms}); } // section 1 @@ -131,8 +131,8 @@ void checkpoint_33( // section 2 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 0, 80}, - {ZoomChange::ZOOM_IN, 5, 230, 145} + {ZoomChange::KEEP_ZOOM, 255, 0, 640ms}, + {ZoomChange::ZOOM_IN, 5, 230, 1160ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -141,8 +141,8 @@ void checkpoint_33( // section 3 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 0, 60}, - {ZoomChange::ZOOM_IN, 5, 205, 100} + {ZoomChange::KEEP_ZOOM, 255, 0, 480ms}, + {ZoomChange::ZOOM_IN, 5, 205, 800ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -151,8 +151,8 @@ void checkpoint_33( // section 4 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 128, 255, 40}, - {ZoomChange::KEEP_ZOOM, 255, 0, 110} + {ZoomChange::ZOOM_IN, 128, 255, 320ms}, + {ZoomChange::KEEP_ZOOM, 255, 0, 880ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_DIALOG, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -298,8 +298,8 @@ void checkpoint_34( // section 1 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 128, 40}, - {ZoomChange::ZOOM_IN, 230, 0, 100} + {ZoomChange::KEEP_ZOOM, 0, 128, 320ms}, + {ZoomChange::ZOOM_IN, 230, 0, 800ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -308,8 +308,8 @@ void checkpoint_34( // section 2 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 100, 30}, - {ZoomChange::ZOOM_IN, 0, 240, 40} + {ZoomChange::KEEP_ZOOM, 255, 100, 240ms}, + {ZoomChange::ZOOM_IN, 0, 240, 320ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -318,8 +318,8 @@ void checkpoint_34( // section 3. set marker to pokecenter realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, - {ZoomChange::ZOOM_IN, 0, 0, 0} + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, + {ZoomChange::ZOOM_IN, 0, 0, 0ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_16.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_16.cpp index 0b4e95230..06cb5f5a9 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_16.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_16.cpp @@ -91,8 +91,8 @@ void checkpoint_35( if (attempt_number > 0 || ENABLE_TEST){ env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}); } do_action_and_monitor_for_battles(env.program_info(), env.console, context, @@ -114,8 +114,8 @@ void checkpoint_35( wait_for_overworld(env.program_info(), env.console, context, 30); pbf_move_left_joystick(context, 128, 0, 120, 100); - direction.change_direction(env.program_info(), env.console, context, 5.11); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20); + direction.change_direction(env.program_info(), env.console, context, 5.11); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 160ms); mash_button_till_overworld(env.console, context, BUTTON_A); }); @@ -136,7 +136,7 @@ void checkpoint_36( // At this startpoint, no Pokemon show up on minimap/map // fly from Cascaraffa Gym to Cascaraffa North Pokecenter - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 100, 0, 80}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 100, 0, 640ms}); // section 1 // warning: can't reliably set the marker when in Cascarrafa, possibly due to too many NPCs. worse when sandstorm is up. @@ -151,8 +151,8 @@ void checkpoint_36( // section 2 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 80}, - {ZoomChange::ZOOM_IN, 255, 255, 110} + {ZoomChange::KEEP_ZOOM, 0, 0, 640ms}, + {ZoomChange::ZOOM_IN, 255, 255, 880ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -161,8 +161,8 @@ void checkpoint_36( // section 3 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 40}, - {ZoomChange::ZOOM_IN, 255, 128, 45} + {ZoomChange::KEEP_ZOOM, 0, 0, 320ms}, + {ZoomChange::ZOOM_IN, 255, 128, 360ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_DIALOG, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -174,8 +174,8 @@ void checkpoint_36( // section 4. set marker to pokecenter realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, - {ZoomChange::ZOOM_IN, 0, 0, 0} + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, + {ZoomChange::ZOOM_IN, 0, 0, 0ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_17.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_17.cpp index 933dfd8c4..f13eff206 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_17.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_17.cpp @@ -90,8 +90,8 @@ void checkpoint_37( DirectionDetector direction; if (attempt_number > 0 || ENABLE_TEST){ env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 255, 128, 50}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 0, 128, 80}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 255, 128, 400ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 0, 128, 640ms}); } do_action_and_monitor_for_battles(env.program_info(), env.console, context, @@ -113,7 +113,7 @@ void checkpoint_37( 128, 0, 30, 10, false); // section 3. set marker to shop/Kofu realign_player(env.program_info(), env.console, context, PlayerRealignMode::REALIGN_NEW_MARKER, 0, 140, 27); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20000ms); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE, CallbackEnum::PROMPT_DIALOG, CallbackEnum::DIALOG_ARROW}); env.console.log("Battle Kofu's assistant."); @@ -135,7 +135,7 @@ void checkpoint_38( checkpoint_reattempt_loop(env, context, notif_status_update, stats, [&](size_t attempt_number){ context.wait_for_all_requests(); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 180, 170}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 180, 1360ms}); DirectionDetector direction; // recently flew a significant distance, so minimap should be clear of Pokemon @@ -166,7 +166,7 @@ void checkpoint_38( handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 18); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 18000ms); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 255, 0, 100, 50); @@ -177,7 +177,7 @@ void checkpoint_38( mash_button_till_overworld(env.console, context, BUTTON_A, 360); // talk to reception. Battle Kofu - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE, CallbackEnum::PROMPT_DIALOG, CallbackEnum::DIALOG_ARROW}); env.console.log("Battle Water Gym."); run_trainer_battle_press_A(env.console, context, BattleStopCondition::STOP_DIALOG); @@ -191,7 +191,7 @@ void checkpoint_38( wait_for_overworld(env.program_info(), env.console, context, 30); // fly to Porto Marinada pokecenter - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 80, 150}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 80, 1200ms}); }); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_18.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_18.cpp index f94508bca..9f320a67a 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_18.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_18.cpp @@ -109,9 +109,9 @@ void checkpoint_39( // section 3. enter circle realign_player_from_landmark( - env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 50}, - {ZoomChange::ZOOM_IN, 175, 255, 120} + env.program_info(), env.console, context, + {ZoomChange::KEEP_ZOOM, 0, 0, 400ms}, + {ZoomChange::ZOOM_IN, 175, 255, 960ms} ); overworld_navigation(env.program_info(), env.console, context, @@ -134,8 +134,8 @@ void checkpoint_39( // std::cout << "1:00" << std::endl; realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 0, 50}, - {ZoomChange::ZOOM_IN, 160, 255, 90} + {ZoomChange::KEEP_ZOOM, 128, 0, 400ms}, + {ZoomChange::ZOOM_IN, 160, 255, 720ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -145,8 +145,8 @@ void checkpoint_39( // std::cout << "11:00" << std::endl; realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 0, 50}, - {ZoomChange::ZOOM_IN, 135, 255, 90} + {ZoomChange::KEEP_ZOOM, 128, 0, 400ms}, + {ZoomChange::ZOOM_IN, 135, 255, 720ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -156,8 +156,8 @@ void checkpoint_39( // std::cout << "10:00" << std::endl; realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 0, 50}, - {ZoomChange::ZOOM_IN, 120, 255, 105} + {ZoomChange::KEEP_ZOOM, 128, 0, 400ms}, + {ZoomChange::ZOOM_IN, 120, 255, 840ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -166,8 +166,8 @@ void checkpoint_39( // std::cout << "7:00" << std::endl; realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 0, 50}, - {ZoomChange::ZOOM_IN, 115, 255, 127} + {ZoomChange::KEEP_ZOOM, 128, 0, 400ms}, + {ZoomChange::ZOOM_IN, 115, 255, 1016ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -176,8 +176,8 @@ void checkpoint_39( // std::cout << "6:00" << std::endl; realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 0, 50}, - {ZoomChange::ZOOM_IN, 135, 255, 137} + {ZoomChange::KEEP_ZOOM, 128, 0, 400ms}, + {ZoomChange::ZOOM_IN, 135, 255, 1096ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -186,8 +186,8 @@ void checkpoint_39( // std::cout << "2:00" << std::endl; realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 0, 50}, - {ZoomChange::ZOOM_IN, 200, 255, 120} + {ZoomChange::KEEP_ZOOM, 128, 0, 400ms}, + {ZoomChange::ZOOM_IN, 200, 255, 960ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -216,8 +216,8 @@ void checkpoint_39( // section 5 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 0, 40}, - {ZoomChange::ZOOM_IN, 122, 255, 130} + {ZoomChange::KEEP_ZOOM, 128, 0, 320ms}, + {ZoomChange::ZOOM_IN, 122, 255, 1040ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, @@ -226,8 +226,8 @@ void checkpoint_39( // section 6 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 0, 50}, - {ZoomChange::ZOOM_IN, 90, 255, 170} + {ZoomChange::KEEP_ZOOM, 128, 0, 400ms}, + {ZoomChange::ZOOM_IN, 90, 255, 1360ms} ); overworld_navigation(env.program_info(), env.console, context, @@ -259,7 +259,7 @@ void checkpoint_40( context.wait_for_all_requests(); // fly to Mesagoza East from Great Tusk/Iron Treads // this clears Pokemon in minimap - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 185, 440}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 185, 3520ms}); // place down marker, for section 1 realign_player(env.program_info(), env.console, context, PlayerRealignMode::REALIGN_NEW_MARKER, 255, 180, 90); @@ -294,8 +294,8 @@ void checkpoint_40( // section 2 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 128, 40}, - {ZoomChange::ZOOM_IN, 255, 140, 100} + {ZoomChange::KEEP_ZOOM, 0, 128, 320ms}, + {ZoomChange::ZOOM_IN, 255, 140, 800ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ @@ -312,8 +312,8 @@ void checkpoint_40( // section 3 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 150, 50}, - {ZoomChange::ZOOM_IN, 255, 90, 120} + {ZoomChange::KEEP_ZOOM, 0, 150, 400ms}, + {ZoomChange::ZOOM_IN, 255, 90, 960ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ @@ -330,8 +330,8 @@ void checkpoint_40( // section 4. set marker to pokecenter realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 255, 50, 30}, - {ZoomChange::KEEP_ZOOM, 0, 0, 0} + {ZoomChange::ZOOM_IN, 255, 50, 240ms}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_19.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_19.cpp index 03df60421..dbd205c9e 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_19.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_19.cpp @@ -96,8 +96,8 @@ void checkpoint_41( DirectionDetector direction; if (attempt_number > 0 || ENABLE_TEST){ env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 128, 60}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 128, 60}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 128, 480ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 128, 480ms}); } direction.change_direction(env.program_info(), env.console, context, 0.14); @@ -115,7 +115,7 @@ void checkpoint_41( //{0.242708, 0.690741} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 128, 0}, + {ZoomChange::KEEP_ZOOM, 128, 128, 0ms}, FlyPoint::FAST_TRAVEL, {0.242708, 0.690741} ); @@ -151,7 +151,7 @@ void checkpoint_41( // section 4 // {0.793229, 0.643519} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 128, 30}, + {ZoomChange::KEEP_ZOOM, 255, 128, 240ms}, FlyPoint::POKECENTER, {0.793229, 0.643519} ); @@ -171,7 +171,7 @@ void checkpoint_41( // section 5 // {0.710938, 0.584259} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 128, 30}, + {ZoomChange::KEEP_ZOOM, 255, 128, 240ms}, FlyPoint::POKECENTER, {0.710938, 0.584259} ); @@ -190,7 +190,7 @@ void checkpoint_41( // section 6 //{0.670312, 0.678704} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 128, 0}, + {ZoomChange::KEEP_ZOOM, 128, 128, 0ms}, FlyPoint::POKECENTER, {0.670312, 0.678704} ); @@ -210,8 +210,8 @@ void checkpoint_41( // section 7. walk up to Klawf on the lower wall, so it moves to the high ground realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 150, 50}, - {ZoomChange::ZOOM_IN, 0, 40, 110} + {ZoomChange::KEEP_ZOOM, 255, 150, 400ms}, + {ZoomChange::ZOOM_IN, 0, 40, 880ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ @@ -228,7 +228,7 @@ void checkpoint_41( // section 8. walk up to Klawf on lower wall // {0.666667, 0.238889} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 0, 30}, + {ZoomChange::KEEP_ZOOM, 128, 0, 240ms}, FlyPoint::POKECENTER, {0.666667, 0.238889} ); @@ -306,8 +306,8 @@ void checkpoint_42( // section 1 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 180, 50}, - {ZoomChange::ZOOM_IN, 0, 80, 110} + {ZoomChange::KEEP_ZOOM, 255, 180, 400ms}, + {ZoomChange::ZOOM_IN, 0, 80, 880ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ @@ -324,8 +324,8 @@ void checkpoint_42( // section 2 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 150, 50}, - {ZoomChange::ZOOM_IN, 0, 80, 38} + {ZoomChange::KEEP_ZOOM, 255, 150, 400ms}, + {ZoomChange::ZOOM_IN, 0, 80, 304ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ @@ -342,8 +342,8 @@ void checkpoint_42( // section 3 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, - {ZoomChange::ZOOM_IN, 65, 0, 45} + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, + {ZoomChange::ZOOM_IN, 65, 0, 360ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ @@ -360,8 +360,8 @@ void checkpoint_42( // section 4. set marker to pokecenter realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, - {ZoomChange::ZOOM_IN, 0, 0, 0} + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, + {ZoomChange::ZOOM_IN, 0, 0, 0ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_20.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_20.cpp index 20fc8a823..042055daa 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_20.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_20.cpp @@ -115,8 +115,8 @@ void checkpoint_43( DirectionDetector direction; if (attempt_number > 0 || ENABLE_TEST){ env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 128, 30}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 128, 240ms}); } do_action_and_monitor_for_battles(env.program_info(), env.console, context, @@ -146,7 +146,13 @@ void checkpoint_43( handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20); + walk_forward_until_dialog( + env.program_info(), + env.console, + context, + NavigationMovementMode::DIRECTIONAL_ONLY, + 20000ms + ); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 0, 0, 100, 50); @@ -179,7 +185,13 @@ void checkpoint_44( // talk to receptionist env.console.log("Talk to Artazon gym receptionist."); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10); + walk_forward_until_dialog( + env.program_info(), + env.console, + context, + NavigationMovementMode::DIRECTIONAL_SPAM_A, + 10000ms + ); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::OVERWORLD}); pbf_move_left_joystick(context, 128, 255, 300, 100); @@ -190,7 +202,13 @@ void checkpoint_44( // talk to Sunflora NPC DirectionDetector direction; direction.change_direction(env.program_info(), env.console, context, 4.91); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10); + walk_forward_until_dialog( + env.program_info(), + env.console, + context, + NavigationMovementMode::DIRECTIONAL_SPAM_A, + 10000ms + ); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::OVERWORLD, CallbackEnum::PROMPT_DIALOG}); // realign to wall @@ -521,7 +539,13 @@ void checkpoint_45( handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20); + walk_forward_until_dialog( + env.program_info(), + env.console, + context, + NavigationMovementMode::DIRECTIONAL_SPAM_A, + 20000ms + ); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 0, 0, 100, 50); @@ -561,13 +585,13 @@ void checkpoint_46( // At this startpoint, no Pokemon show up on minimap/map // fly to Artazon east pokecenter - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 255, 128, 50}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 255, 128, 400ms}); // section 1. set marker to pokecenter realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 0, 50}, - {ZoomChange::ZOOM_IN, 0, 0, 0} + {ZoomChange::KEEP_ZOOM, 255, 0, 400ms}, + {ZoomChange::ZOOM_IN, 0, 0, 0ms} ); overworld_navigation(env.program_info(), env.console, context, NavigationStopCondition::STOP_MARKER, NavigationMovementMode::DIRECTIONAL_ONLY, diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_21.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_21.cpp index 60c84f151..b3c43ded8 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_21.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_21.cpp @@ -118,8 +118,8 @@ void checkpoint_48( DirectionDetector direction; if (attempt_number > 0 || ENABLE_TEST){ env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 128, 255, 50}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 128, 0, 50}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 128, 255, 400ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 128, 0, 400ms}); } direction.change_direction(env.program_info(), env.console, context, 2.06); @@ -305,8 +305,8 @@ void checkpoint_49( // marker 1 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 128, 30}, - {ZoomChange::ZOOM_IN, 0, 90, 90} + {ZoomChange::KEEP_ZOOM, 255, 128, 240ms}, + {ZoomChange::ZOOM_IN, 0, 90, 720ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ @@ -323,8 +323,8 @@ void checkpoint_49( // marker 2 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 0, 30}, - {ZoomChange::ZOOM_IN, 128, 255, 30} + {ZoomChange::KEEP_ZOOM, 128, 0, 240ms}, + {ZoomChange::ZOOM_IN, 128, 255, 240ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ @@ -341,8 +341,8 @@ void checkpoint_49( // marker 3 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 180, 50}, - {ZoomChange::ZOOM_IN, 0, 70, 175} + {ZoomChange::KEEP_ZOOM, 255, 180, 400ms}, + {ZoomChange::ZOOM_IN, 0, 70, 1400ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ @@ -359,8 +359,8 @@ void checkpoint_49( // marker 4 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 180, 50}, - {ZoomChange::ZOOM_IN, 0, 50, 185} + {ZoomChange::KEEP_ZOOM, 255, 180, 400ms}, + {ZoomChange::ZOOM_IN, 0, 50, 1480ms} ); // walk until you run into the wall overworld_navigation(env.program_info(), env.console, context, @@ -371,8 +371,8 @@ void checkpoint_49( // marker 5. put marker on other side of bridge realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 128, 128, 0}, - {ZoomChange::ZOOM_IN, 128, 0, 10} + {ZoomChange::ZOOM_IN, 128, 128, 0ms}, + {ZoomChange::ZOOM_IN, 128, 0, 800ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_22.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_22.cpp index 735a9c7ef..d5c58f360 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_22.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_22.cpp @@ -113,8 +113,8 @@ void checkpoint_50( DirectionDetector direction; if (attempt_number > 0 || ENABLE_TEST){ env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 255, 70}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 80, 80}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 255, 560ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 80, 640ms}); } direction.change_direction(env.program_info(), env.console, context, 0); @@ -138,8 +138,8 @@ void checkpoint_50( // marker 2 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 50, 50}, - {ZoomChange::ZOOM_IN, 0, 100, 60} + {ZoomChange::KEEP_ZOOM, 255, 50, 400ms}, + {ZoomChange::ZOOM_IN, 0, 100, 480ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ @@ -158,8 +158,8 @@ void checkpoint_50( // marker 3 realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 128, 20}, - {ZoomChange::ZOOM_IN, 0, 0, 0} + {ZoomChange::KEEP_ZOOM, 255, 128, 160ms}, + {ZoomChange::ZOOM_IN, 0, 0, 0ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ @@ -201,7 +201,7 @@ void checkpoint_51( handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 160ms); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 0, 0, 100, 50); // move forward/left @@ -227,13 +227,13 @@ void checkpoint_52( [&](size_t attempt_number){ // talk to receptionist env.console.log("Talk to Levincia gym receptionist."); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::OVERWORLD}); pbf_move_left_joystick(context, 128, 255, 300, 100); pbf_wait(context, 3000ms); // wait for dialog after leaving gym - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20, 128, 255); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20000ms, 128, 255); WhiteTriangleWatcher white_triangle(COLOR_RED, ImageFloatBox(0.948773, 0.034156, 0.013874, 0.024668)); // mash A until detect top right white triangle 1 @@ -367,7 +367,7 @@ void checkpoint_53( pbf_wait(context, 3000ms); // talk to Gym receptionist - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30000ms); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::PROMPT_DIALOG, CallbackEnum::BATTLE, CallbackEnum::DIALOG_ARROW}); env.console.log("Battle Electric Gym leader."); @@ -381,7 +381,7 @@ void checkpoint_53( wait_for_overworld(env.program_info(), env.console, context, 30); // fly to Levincia (North) Pokecenter - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 100, 0, 50}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 100, 0, 400ms}); }); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_23.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_23.cpp index 77ec9d213..69c2d8b06 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_23.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_23.cpp @@ -103,7 +103,7 @@ void checkpoint_54( // marker 2. x=0.411979, y=0.730556 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.411979, 0.730556} ); @@ -121,7 +121,7 @@ void checkpoint_54( // marker 3. x=0.444792, y=0.640741. zoom out place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_OUT, 0, 0, 0}, + {ZoomChange::ZOOM_OUT, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.444792, 0.640741} ); @@ -140,9 +140,9 @@ void checkpoint_54( // marker 4. blind marker placement realign_player_from_landmark( - env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 255, 50}, - {ZoomChange::ZOOM_IN, 150, 0, 112} + env.program_info(), env.console, context, + {ZoomChange::KEEP_ZOOM, 128, 255, 400ms}, + {ZoomChange::ZOOM_IN, 150, 0, 896ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ @@ -159,8 +159,8 @@ void checkpoint_54( // marker 5. blind marker placement realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 255, 50}, - {ZoomChange::ZOOM_IN, 135, 0, 107} + {ZoomChange::KEEP_ZOOM, 128, 255, 400ms}, + {ZoomChange::ZOOM_IN, 135, 0, 856ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ @@ -177,8 +177,8 @@ void checkpoint_54( // marker 6. blind marker placement realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 255, 50}, - {ZoomChange::ZOOM_IN, 120, 0, 95} + {ZoomChange::KEEP_ZOOM, 128, 255, 400ms}, + {ZoomChange::ZOOM_IN, 120, 0, 760ms} ); @@ -214,7 +214,7 @@ void checkpoint_54( // marker 7. x=0.505729, y=0.675926 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 255, 30}, + {ZoomChange::KEEP_ZOOM, 128, 255, 240ms}, FlyPoint::POKECENTER, {0.505729, 0.675926} ); @@ -232,7 +232,7 @@ void checkpoint_54( // marker 8. x=0.591146, y=0.575926, place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.591146, 0.575926} ); @@ -250,7 +250,7 @@ void checkpoint_54( // marker 9. at crossroads. x=0.723958, y=0.55463 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.723958, 0.55463} ); @@ -268,7 +268,7 @@ void checkpoint_54( // marker 10. x=0.752604, y=0.643519 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.752604, 0.643519} ); @@ -288,7 +288,7 @@ void checkpoint_54( // marker 11. x=0.752083, y=0.702778 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.752083, 0.702778} ); @@ -307,7 +307,7 @@ void checkpoint_54( // marker 12. x=0.685417, y=0.748148 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.685417, 0.748148} ); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_24.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_24.cpp index 2480ab503..3c6692bc7 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_24.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_24.cpp @@ -104,8 +104,8 @@ void checkpoint_55( DirectionDetector direction; if (attempt_number > 0 || ENABLE_TEST){ env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 128, 50}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 0, 100, 130}, FlyPoint::FAST_TRAVEL); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 128, 400ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 0, 100, 1040ms}, FlyPoint::FAST_TRAVEL); } direction.change_direction(env.program_info(), env.console, context, 3.909067); @@ -160,7 +160,13 @@ void checkpoint_55( direction.change_direction(env.program_info(), env.console, context, 0.625226); }); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30); + walk_forward_until_dialog( + env.program_info(), + env.console, + context, + NavigationMovementMode::DIRECTIONAL_ONLY, + 30000ms + ); confirm_titan_battle(env, context); env.console.log("Battle Orthworm Titan phase 1."); @@ -216,7 +222,7 @@ void checkpoint_55( pbf_move_left_joystick(context, 128, 0, 2651ms, 0ms); }); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30000ms); // battle the titan phase 2 clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE}); @@ -239,11 +245,11 @@ void checkpoint_56( [&](size_t attempt_number){ // fly back to East Province (Area Three) Watchtower. from Orthworm // this clears Pokemon in minimap - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0}, FlyPoint::FAST_TRAVEL); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::FAST_TRAVEL); // marker 1 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.769792, 0.725926} ); @@ -261,7 +267,7 @@ void checkpoint_56( // marker 2 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.280208, 0.447222} ); @@ -279,7 +285,7 @@ void checkpoint_56( // marker 3 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 128, 60}, + {ZoomChange::ZOOM_IN, 0, 128, 480ms}, FlyPoint::POKECENTER, {0.354167, 0.375} ); @@ -297,7 +303,7 @@ void checkpoint_56( // marker 4 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 128, 50}, + {ZoomChange::ZOOM_IN, 0, 128, 400ms}, FlyPoint::POKECENTER, {0.497917, 0.274074} ); @@ -316,8 +322,8 @@ void checkpoint_56( // marker 5. set marker to pokecenter realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 0, 0}, - {ZoomChange::KEEP_ZOOM, 0, 0, 0} + {ZoomChange::ZOOM_IN, 0, 0, 0ms}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_25.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_25.cpp index c14a41943..7e8132572 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_25.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_25.cpp @@ -115,15 +115,15 @@ void checkpoint_59( // marker 1 {0.795312, 0.626852} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::FAST_TRAVEL, {0.795312, 0.626852} ); if (attempt_number > 0 || ENABLE_TEST){ env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 180, 130}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 70, 130}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 180, 1040ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 70, 1040ms}); } @@ -141,7 +141,7 @@ void checkpoint_59( // marker 2 {0.672396, 0.532407} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 0, 0}, + {ZoomChange::ZOOM_IN, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.672396, 0.532407} ); @@ -163,7 +163,7 @@ void checkpoint_59( // marker 3 {0.685417, 0.571296} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.685417, 0.571296} ); @@ -324,7 +324,7 @@ void checkpoint_60( [&](size_t attempt_number){ // fly back to Porto Marinada Pokecenter from Team Star Poison // this clears Pokemon in minimap - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 0, 128, 600}, FlyPoint::POKECENTER); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 0, 128, 4800ms}, FlyPoint::POKECENTER); move_from_porto_marinada_to_medali(env, context); @@ -352,7 +352,7 @@ void move_from_porto_marinada_to_medali(SingleSwitchProgramEnvironment& env, Pro // marker 2. x=0.3875, y=0.60463 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_OUT, 0, 0, 0}, + {ZoomChange::ZOOM_OUT, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.3875, 0.60463} ); @@ -371,7 +371,7 @@ void move_from_porto_marinada_to_medali(SingleSwitchProgramEnvironment& env, Pro // marker 3. : x=0.316146, y=0.623148 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_OUT, 0, 0, 0}, + {ZoomChange::ZOOM_OUT, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.316146, 0.623148} ); @@ -391,7 +391,7 @@ void move_from_porto_marinada_to_medali(SingleSwitchProgramEnvironment& env, Pro // marker 4. cross bridge 1 x=0.310417, y=0.712963. place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_OUT, 0, 0, 0}, + {ZoomChange::ZOOM_OUT, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.310417, 0.712963} ); @@ -414,7 +414,7 @@ void move_from_porto_marinada_to_medali(SingleSwitchProgramEnvironment& env, Pro // marker 5. : x=0.582292, y=0.692593 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_OUT, 0, 0, 0}, + {ZoomChange::ZOOM_OUT, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.582292, 0.692593} ); @@ -434,7 +434,7 @@ void move_from_porto_marinada_to_medali(SingleSwitchProgramEnvironment& env, Pro // marker 6. cross bridge 2 : x=0.555208, y=0.627778 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_OUT, 0, 0, 0}, + {ZoomChange::ZOOM_OUT, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.555208, 0.627778} ); @@ -455,8 +455,8 @@ void move_from_porto_marinada_to_medali(SingleSwitchProgramEnvironment& env, Pro get_off_ride(env.program_info(), env.console, context); // marker 7. : x=0.678646, y=0.669444 - place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 255, 30}, + place_marker_offset_from_flypoint(env.program_info(), env.console, context, + {ZoomChange::KEEP_ZOOM, 255, 255, 240ms}, FlyPoint::POKECENTER, {0.678646, 0.669444} ); @@ -474,7 +474,7 @@ void move_from_porto_marinada_to_medali(SingleSwitchProgramEnvironment& env, Pro // marker 8. : x=0.533333, y=0.640741 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 255, 50}, + {ZoomChange::KEEP_ZOOM, 255, 255, 400ms}, FlyPoint::POKECENTER, {0.533333, 0.640741} ); @@ -494,8 +494,8 @@ void move_from_porto_marinada_to_medali(SingleSwitchProgramEnvironment& env, Pro // marker 9. set marker to pokecenter realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 128, 255, 50}, - {ZoomChange::KEEP_ZOOM, 0, 0, 0} + {ZoomChange::ZOOM_IN, 128, 255, 400ms}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_26.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_26.cpp index 9de566ca7..1b30b4b89 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_26.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_26.cpp @@ -102,13 +102,13 @@ void checkpoint_61( // first, clear Pokemon in Minimap. if (attempt_number > 0 || ENABLE_TEST){ env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}); } // marker 1 keep{0.490625, 0.594444} in{0.589583, 0.569444} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 0, 0}, + {ZoomChange::ZOOM_IN, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.589583, 0.569444} ); @@ -136,7 +136,7 @@ void checkpoint_61( handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20000ms); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 255, 0, 100, 50); // if to the left of the door, will move right and enter @@ -149,7 +149,7 @@ void checkpoint_61( mash_button_till_overworld(env.console, context, BUTTON_A); // speak to gym receptionist - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20000ms); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::OVERWORLD}); }); @@ -175,9 +175,9 @@ void checkpoint_62( env.console.log("Fly back to Medali East Pokecenter"); env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); env.console.log("Fly to Cascaraffa north to clear minimap. Then Medali West. End up in Medal East Pokecenter."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 180, 100}, FlyPoint::POKECENTER); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 80, 85}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 0, 0, 0}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 180, 800ms}, FlyPoint::POKECENTER); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 80, 680ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 0, 0, 0ms}); pbf_press_button(context, BUTTON_L, 50, 50); @@ -258,9 +258,9 @@ void checkpoint_63( env.console.log("Fly back to Medali East Pokecenter"); env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); env.console.log("Fly to Cascaraffa north to clear minimap. Then Medali West. End up in Medal East Pokecenter."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 180, 100}, FlyPoint::POKECENTER); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 80, 85}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 0, 0, 0}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 180, 800ms}, FlyPoint::POKECENTER); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 80, 680ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 0, 0, 0ms}); move_from_medali_to_glaseado_mountain(env, context); @@ -276,7 +276,7 @@ void move_from_medali_to_glaseado_mountain(SingleSwitchProgramEnvironment& env, // marker 1. x=0.399479, y=0.713889 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.399479, 0.713889} ); @@ -295,7 +295,7 @@ void move_from_medali_to_glaseado_mountain(SingleSwitchProgramEnvironment& env, // marker 2. x=0.410417, y=0.760185 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 0, 30}, + {ZoomChange::KEEP_ZOOM, 255, 0, 240ms}, FlyPoint::POKECENTER, {0.410417, 0.760185} ); @@ -314,7 +314,7 @@ void move_from_medali_to_glaseado_mountain(SingleSwitchProgramEnvironment& env, // marker 3. : x=0.3875, y=0.712037 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_OUT, 0, 0, 0}, + {ZoomChange::ZOOM_OUT, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.3875, 0.712037} ); @@ -333,7 +333,7 @@ void move_from_medali_to_glaseado_mountain(SingleSwitchProgramEnvironment& env, // marker 4. cross creek x=0.502083, y=0.255556 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_OUT, 128, 0, 20}, + {ZoomChange::ZOOM_OUT, 128, 0, 160ms}, FlyPoint::POKECENTER, {0.502083, 0.255556} ); @@ -360,7 +360,7 @@ void move_from_medali_to_glaseado_mountain(SingleSwitchProgramEnvironment& env, // marker 5. x=0.461458, y=0.297222 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_OUT, 0, 0, 0}, + {ZoomChange::ZOOM_OUT, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.461458, 0.297222} ); @@ -378,7 +378,7 @@ void move_from_medali_to_glaseado_mountain(SingleSwitchProgramEnvironment& env, // marker 6. x=0.451562, y=0.288889 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 0, 50}, + {ZoomChange::KEEP_ZOOM, 128, 0, 400ms}, FlyPoint::POKECENTER, {0.451562, 0.288889} ); @@ -397,7 +397,7 @@ void move_from_medali_to_glaseado_mountain(SingleSwitchProgramEnvironment& env, // marker 7. : x=0.623958, y=0.35463 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 0, 50}, + {ZoomChange::ZOOM_IN, 0, 0, 400ms}, FlyPoint::POKECENTER, {0.623958, 0.35463} ); @@ -415,7 +415,7 @@ void move_from_medali_to_glaseado_mountain(SingleSwitchProgramEnvironment& env, // marker 8. x=0.544271, y=0.5 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 0, 0}, + {ZoomChange::ZOOM_IN, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.544271, 0.5} ); @@ -433,7 +433,7 @@ void move_from_medali_to_glaseado_mountain(SingleSwitchProgramEnvironment& env, // marker 9. : x=0.417708, y=0.388889 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 0, 0}, + {ZoomChange::ZOOM_IN, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.417708, 0.388889} ); @@ -453,8 +453,8 @@ void move_from_medali_to_glaseado_mountain(SingleSwitchProgramEnvironment& env, // marker 10. set marker to pokecenter realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 0, 0}, - {ZoomChange::KEEP_ZOOM, 0, 0, 0} + {ZoomChange::ZOOM_IN, 0, 0, 0ms}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_27.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_27.cpp index 36d68fdd0..5413d673c 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_27.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_27.cpp @@ -106,8 +106,8 @@ void checkpoint_64(SingleSwitchProgramEnvironment& env, ProControllerContext& co if (attempt_number > 0 || ENABLE_TEST){ env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 128, 255, 180}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 128, 0, 180}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 128, 255, 1440ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 128, 0, 1440ms}); } move_from_glaseado_mountain_to_casseroya_watchtower3(env, context, attempt_number); @@ -122,8 +122,8 @@ void checkpoint_65(SingleSwitchProgramEnvironment& env, ProControllerContext& co if (attempt_number > 0 || ENABLE_TEST){ env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 128, 128, 0}, FlyPoint::POKECENTER); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 128, 128, 0}, FlyPoint::FAST_TRAVEL); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 128, 128, 0ms}, FlyPoint::POKECENTER); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 128, 128, 0ms}, FlyPoint::FAST_TRAVEL); } move_from_casseroya_watchtower3_to_dondozo_titan(env, context); @@ -147,7 +147,7 @@ void checkpoint_67(SingleSwitchProgramEnvironment& env, ProControllerContext& co // fly to Glaseado Mountain Pokecenter from Dondozo // this clears Pokemon in minimap - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 0, 0, 0}, FlyPoint::POKECENTER); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 0, 0, 0ms}, FlyPoint::POKECENTER); move_from_glaseado_mountain_to_north_province_area_three(env, context); }); @@ -164,8 +164,8 @@ void move_from_glaseado_mountain_to_casseroya_watchtower3(SingleSwitchProgramEnv DirectionDetector direction; if (attempt_number > 0 || ENABLE_TEST){ env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 100, 255, 60}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 128, 0, 60}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 100, 255, 480ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 128, 0, 480ms}); } direction.change_direction(env.program_info(), env.console, context, 1.448679); @@ -175,7 +175,7 @@ void move_from_glaseado_mountain_to_casseroya_watchtower3(SingleSwitchProgramEnv // marker 1 x=0.548438, y=0.273148 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_OUT, 0, 0, 0}, + {ZoomChange::ZOOM_OUT, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.548438, 0.273148} ); @@ -196,7 +196,7 @@ void move_from_glaseado_mountain_to_casseroya_watchtower3(SingleSwitchProgramEnv // marker 2. : x=0.693229, y=0.459259 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.693229, 0.459259} ); @@ -223,7 +223,7 @@ void move_from_casseroya_watchtower3_to_dondozo_titan(SingleSwitchProgramEnviron // marker 1 x=0.779167, y=0.274074 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.779167, 0.274074} ); @@ -244,7 +244,7 @@ void move_from_casseroya_watchtower3_to_dondozo_titan(SingleSwitchProgramEnviron // marker 2. : x=0.76875, y=0.298148 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::FAST_TRAVEL, {0.76875, 0.298148} ); @@ -255,7 +255,7 @@ void move_from_casseroya_watchtower3_to_dondozo_titan(SingleSwitchProgramEnviron // marker 3. : x=0.752604, y=0.401852 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::FAST_TRAVEL, {0.752604, 0.401852} ); @@ -278,7 +278,7 @@ void move_from_dondozo_titan_phase1_to_phase2(SingleSwitchProgramEnvironment& en // marker 1 x=0.832292, y=0.54537 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::FAST_TRAVEL, {0.832292, 0.54537} ); @@ -291,7 +291,7 @@ void move_from_dondozo_titan_phase1_to_phase2(SingleSwitchProgramEnvironment& en // marker 2 x=0.393229, y=0.748148 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 0, 0}, + {ZoomChange::ZOOM_IN, 0, 0, 0ms}, FlyPoint::FAST_TRAVEL, {0.393229, 0.748148} ); @@ -302,7 +302,7 @@ void move_from_dondozo_titan_phase1_to_phase2(SingleSwitchProgramEnvironment& en // marker 3. go to Dondozo/Tatsugiri part 2 x=0.55625, y=0.324074 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 255, 40}, + {ZoomChange::KEEP_ZOOM, 128, 255, 320ms}, FlyPoint::FAST_TRAVEL, {0.55625, 0.324074} ); @@ -332,8 +332,8 @@ void move_from_glaseado_mountain_to_north_province_area_three(SingleSwitchProgra // marker 1. set marker to pokecenter realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 0, 50}, - {ZoomChange::KEEP_ZOOM, 0, 0, 0} + {ZoomChange::KEEP_ZOOM, 128, 0, 400ms}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_28.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_28.cpp index 9a69b75c5..35476ec25 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_28.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_28.cpp @@ -111,8 +111,8 @@ void checkpoint_69(SingleSwitchProgramEnvironment& env, ProControllerContext& co DirectionDetector direction; if (attempt_number > 0 || ENABLE_TEST){ env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 128, 255, 50}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 128, 0, 50}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 128, 255, 400ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 128, 0, 400ms}); } direction.change_direction(env.program_info(), env.console, context, 0.696613); @@ -305,11 +305,11 @@ void checkpoint_70(SingleSwitchProgramEnvironment& env, ProControllerContext& co [&](size_t attempt_number){ context.wait_for_all_requests(); // fly back to North Province Area Three - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0}, FlyPoint::POKECENTER); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER); // fly back to Glaseado Mountain Pokecenter // this clears Pokemon in minimap - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 0, 0, 0}, FlyPoint::POKECENTER); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 0, 0, 0ms}, FlyPoint::POKECENTER); move_from_glaseado_mountain_to_montenevera(env, context); @@ -323,7 +323,7 @@ void move_from_glaseado_mountain_to_montenevera(SingleSwitchProgramEnvironment& // marker 1 {0.745313, 0.637037} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.745313, 0.637037} ); @@ -341,7 +341,7 @@ void move_from_glaseado_mountain_to_montenevera(SingleSwitchProgramEnvironment& // marker 2 x=0.225521, y=0.380556. {0.229687, 0.37037} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 0, 50}, + {ZoomChange::KEEP_ZOOM, 255, 0, 400ms}, FlyPoint::POKECENTER, {0.229687, 0.37037} ); @@ -359,7 +359,7 @@ void move_from_glaseado_mountain_to_montenevera(SingleSwitchProgramEnvironment& // marker 3 x=0.396354, y=0.69537. x=0.396875, y=0.725926 place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 200, 50}, + {ZoomChange::KEEP_ZOOM, 255, 200, 400ms}, FlyPoint::POKECENTER, {0.396875, 0.725926} ); @@ -377,7 +377,7 @@ void move_from_glaseado_mountain_to_montenevera(SingleSwitchProgramEnvironment& // marker 4 (0.409896, 0.65) place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.409896, 0.65} ); @@ -396,7 +396,7 @@ void move_from_glaseado_mountain_to_montenevera(SingleSwitchProgramEnvironment& // marker 5 {0.509896, 0.639815} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.509896, 0.639815} ); @@ -414,7 +414,7 @@ void move_from_glaseado_mountain_to_montenevera(SingleSwitchProgramEnvironment& // marker 6 {0.508333, 0.566667} {0.521875, 0.483333} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 128, 255, 20}, + {ZoomChange::ZOOM_IN, 128, 255, 160ms}, FlyPoint::POKECENTER, {0.508333, 0.566667} ); @@ -432,7 +432,7 @@ void move_from_glaseado_mountain_to_montenevera(SingleSwitchProgramEnvironment& // marker 7 {0.508333, 0.566667} {0.521875, 0.483333} {0.529687, 0.483333} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 0, 0}, + {ZoomChange::ZOOM_IN, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.529687, 0.483333} ); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_29.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_29.cpp index a8fc3ffc8..8cb3836be 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_29.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_29.cpp @@ -107,14 +107,14 @@ void checkpoint_71(SingleSwitchProgramEnvironment& env, ProControllerContext& co env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); // fly_to_overworld_from_map() may fail since the snowy background on the map will false positive the destinationMenuItemWatcher (MapDestinationMenuDetector at box {0.523000, 0.680000, 0.080000, 0.010000}), which causes the fly to fail // we can get around this by either placing down a marker, or by zooming out so that that section isn't white snow. - place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 255, 35}, + place_marker_offset_from_flypoint(env.program_info(), env.console, context, + {ZoomChange::KEEP_ZOOM, 128, 255, 280ms}, FlyPoint::POKECENTER, {0.54375, 0.662037} ); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 128, 75}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 128, 75}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 128, 600ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 128, 600ms}); direction.change_direction(env.program_info(), env.console, context, 1.536225); @@ -134,7 +134,7 @@ void checkpoint_71(SingleSwitchProgramEnvironment& env, ProControllerContext& co handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30000ms); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 255, 0, 100, 50); // if to the left of the door, will move right and enter @@ -147,7 +147,7 @@ void checkpoint_71(SingleSwitchProgramEnvironment& env, ProControllerContext& co mash_button_till_overworld(env.console, context, BUTTON_A); // speak to gym receptionist - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20000ms); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::OVERWORLD}); @@ -167,7 +167,7 @@ void checkpoint_72(SingleSwitchProgramEnvironment& env, ProControllerContext& co DirectionDetector direction; // Minimap should be clear of Pokemon, since we haven't opened the map, since we cleared the Pokemon in checkpoint 71 direction.change_direction(env.program_info(), env.console, context, 2.462858); // 2.496149 // 2.479418 - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20000ms); // speak to MC Sledge clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::PROMPT_DIALOG, CallbackEnum::BATTLE, CallbackEnum:: DIALOG_ARROW}); @@ -197,7 +197,7 @@ void checkpoint_73(SingleSwitchProgramEnvironment& env, ProControllerContext& co handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30000ms); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 255, 128, 200, 50); // if to the left of the door, will move right @@ -227,13 +227,13 @@ void checkpoint_74(SingleSwitchProgramEnvironment& env, ProControllerContext& co // remove old marker, then place new one realign_player(env.program_info(), env.console, context, PlayerRealignMode::REALIGN_NEW_MARKER, 0, 128, 50); place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 255, 35}, + {ZoomChange::KEEP_ZOOM, 128, 255, 280ms}, FlyPoint::POKECENTER, {0.54375, 0.662037} ); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 128, 75}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 128, 75}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 128, 600ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 128, 600ms}); move_from_montenevera_to_glaseado_gym(env, context); @@ -256,7 +256,7 @@ void move_from_montenevera_to_glaseado_gym(SingleSwitchProgramEnvironment& env, // marker 1 {0.585938, 0.236111} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 255, 20}, + {ZoomChange::KEEP_ZOOM, 128, 255, 160ms}, FlyPoint::POKECENTER, {0.585938, 0.236111} ); @@ -275,7 +275,7 @@ void move_from_montenevera_to_glaseado_gym(SingleSwitchProgramEnvironment& env, // marker 2 cross bridge {0.719271, 0.585185} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 255, 30}, + {ZoomChange::KEEP_ZOOM, 128, 255, 240ms}, FlyPoint::POKECENTER, {0.719271, 0.585185} ); @@ -300,7 +300,7 @@ void move_from_montenevera_to_glaseado_gym(SingleSwitchProgramEnvironment& env, // marker 3 {0.73125, 0.481481} {0.7375, 0.488889} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 255, 30}, + {ZoomChange::KEEP_ZOOM, 128, 255, 240ms}, FlyPoint::POKECENTER, {0.7375, 0.488889} ); @@ -319,7 +319,7 @@ void move_from_montenevera_to_glaseado_gym(SingleSwitchProgramEnvironment& env, // marker 4 {0.691146, 0.347222} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.691146, 0.347222} ); @@ -337,7 +337,7 @@ void move_from_montenevera_to_glaseado_gym(SingleSwitchProgramEnvironment& env, // marker 5 {0.632292, 0.376852} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.632292, 0.376852} ); @@ -356,7 +356,7 @@ void move_from_montenevera_to_glaseado_gym(SingleSwitchProgramEnvironment& env, // marker 6 {0.61875, 0.432407} {0.610417, 0.42037} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.610417, 0.42037} ); @@ -374,7 +374,7 @@ void move_from_montenevera_to_glaseado_gym(SingleSwitchProgramEnvironment& env, // marker 7 {0.613542, 0.540741} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.613542, 0.540741} ); @@ -392,7 +392,7 @@ void move_from_montenevera_to_glaseado_gym(SingleSwitchProgramEnvironment& env, // marker 8 {0.588021, 0.578704} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.588021, 0.578704} ); @@ -410,7 +410,7 @@ void move_from_montenevera_to_glaseado_gym(SingleSwitchProgramEnvironment& env, // marker 9 {0.579167, 0.610185} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 0, 0}, + {ZoomChange::ZOOM_IN, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.579167, 0.610185} ); @@ -428,7 +428,7 @@ void move_from_montenevera_to_glaseado_gym(SingleSwitchProgramEnvironment& env, // marker 10. end up next to Pokecenter {0.520833, 0.443519} {0.490625, 0.4} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 0, 0}, + {ZoomChange::ZOOM_IN, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.490625, 0.4} ); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_30.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_30.cpp index 2f0667300..abd7ff41f 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_30.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_30.cpp @@ -108,8 +108,8 @@ void checkpoint_75(SingleSwitchProgramEnvironment& env, ProControllerContext& co // FlyPoint::POKECENTER, // {0.404687, 0.261111} // ); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 128, 0, 30}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 200, 255, 110}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 128, 0, 240ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 200, 255, 880ms}); } do_action_and_monitor_for_battles(env.program_info(), env.console, context, @@ -131,7 +131,7 @@ void checkpoint_75(SingleSwitchProgramEnvironment& env, ProControllerContext& co handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30000ms); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 0, 0, 150, 50); // move left @@ -148,7 +148,7 @@ void checkpoint_75(SingleSwitchProgramEnvironment& env, ProControllerContext& co mash_button_till_overworld(env.console, context, BUTTON_A); // speak to gym receptionist - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20000ms); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::OVERWORLD}); @@ -176,8 +176,8 @@ void checkpoint_76(SingleSwitchProgramEnvironment& env, ProControllerContext& co realign_player(env.program_info(), env.console, context, PlayerRealignMode::REALIGN_NEW_MARKER, 0, 0, 0); realign_player(env.program_info(), env.console, context, PlayerRealignMode::REALIGN_NEW_MARKER, 255, 180, 45); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 128, 0, 30}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 200, 255, 110}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 128, 0, 240ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 200, 255, 880ms}); DirectionDetector direction; @@ -190,7 +190,7 @@ void checkpoint_76(SingleSwitchProgramEnvironment& env, ProControllerContext& co direction.change_direction(env.program_info(), env.console, context, 2.513925); // talk to - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30000ms); }); @@ -234,7 +234,7 @@ void checkpoint_76(SingleSwitchProgramEnvironment& env, ProControllerContext& co // pokemon are cleared from minimap after the Snow Slope run // fly back to Glaseado Gym Pokecenter - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 0, 0, 0}, FlyPoint::POKECENTER); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 0, 0, 0ms}, FlyPoint::POKECENTER); // walk back to gym building @@ -257,7 +257,7 @@ void checkpoint_76(SingleSwitchProgramEnvironment& env, ProControllerContext& co handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30000ms); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 0, 0, 150, 50); // move left @@ -294,8 +294,8 @@ void checkpoint_77(SingleSwitchProgramEnvironment& env, ProControllerContext& co realign_player(env.program_info(), env.console, context, PlayerRealignMode::REALIGN_NEW_MARKER, 0, 0, 0); realign_player(env.program_info(), env.console, context, PlayerRealignMode::REALIGN_NEW_MARKER, 255, 180, 45); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 128, 0, 30}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 200, 255, 110}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 128, 0, 240ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 200, 255, 880ms}); DirectionDetector direction; @@ -331,7 +331,7 @@ void move_from_glaseado_gym_to_north_province_area_one(SingleSwitchProgramEnviro // marker 0 {0.460938, 0.310185} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 0, 0}, + {ZoomChange::ZOOM_IN, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.460938, 0.310185} ); @@ -350,7 +350,7 @@ void move_from_glaseado_gym_to_north_province_area_one(SingleSwitchProgramEnviro // marker 1 {0.33125, 0.314815} {0.297396, 0.322222} {0.313021, 0.322222} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 0, 0}, + {ZoomChange::ZOOM_IN, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.313021, 0.322222} ); @@ -368,7 +368,7 @@ void move_from_glaseado_gym_to_north_province_area_one(SingleSwitchProgramEnviro // marker 2 {0.222396, 0.413889} {0.253646, 0.386111} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 0, 0}, + {ZoomChange::ZOOM_IN, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.253646, 0.386111} ); @@ -388,7 +388,7 @@ void move_from_glaseado_gym_to_north_province_area_one(SingleSwitchProgramEnviro // marker 3 {0.80625, 0.574074} {0.803125, 0.615741} {0.794792, 0.614815} (0.794792, 0.609259). place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 0, 50}, + {ZoomChange::KEEP_ZOOM, 255, 0, 400ms}, FlyPoint::POKECENTER, {0.794792, 0.609259} ); @@ -407,8 +407,8 @@ void move_from_glaseado_gym_to_north_province_area_one(SingleSwitchProgramEnviro // marker 4. set marker to pokecenter realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 128, 80}, - {ZoomChange::KEEP_ZOOM, 0, 0, 0} + {ZoomChange::KEEP_ZOOM, 255, 128, 640ms}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_31.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_31.cpp index cfced53bd..88a6f9b5b 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_31.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_31.cpp @@ -137,7 +137,13 @@ void checkpoint_80(SingleSwitchProgramEnvironment& env, ProControllerContext& co void checkpoint_81(SingleSwitchProgramEnvironment& env, ProControllerContext& context, EventNotificationOption& notif_status_update, AutoStoryStats& stats){ checkpoint_reattempt_loop(env, context, notif_status_update, stats, [&](size_t attempt_number){ - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 0, 170, 550}, FlyPoint::POKECENTER); + move_cursor_towards_flypoint_and_go_there( + env.program_info(), + env.console, + context, + {ZoomChange::ZOOM_OUT, 0, 170, 4400ms}, + FlyPoint::POKECENTER + ); move_from_west_province_area_one_north_to_alfornada(env, context); }); } @@ -156,8 +162,8 @@ void move_from_north_province_area_one_to_north_province_area_two(SingleSwitchPr DirectionDetector direction; if (attempt_number > 0 || ENABLE_TEST){ env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 128, 100}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 128, 100}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 128, 800ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 128, 800ms}); } do_action_and_monitor_for_battles(env.program_info(), env.console, context, @@ -171,7 +177,7 @@ void move_from_north_province_area_one_to_north_province_area_two(SingleSwitchPr // marker 1 {0.825, 0.361111} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 255, 30}, + {ZoomChange::KEEP_ZOOM, 255, 255, 240ms}, FlyPoint::POKECENTER, {0.825, 0.361111} ); @@ -189,7 +195,7 @@ void move_from_north_province_area_one_to_north_province_area_two(SingleSwitchPr // marker 2 {0.839062, 0.267593} {0.834896, 0.267593} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.834896, 0.267593} ); @@ -209,7 +215,7 @@ void move_from_north_province_area_one_to_north_province_area_two(SingleSwitchPr // marker 3 {0.764583, 0.244444} (0.775000, 0.250000). place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.775000, 0.250000} ); @@ -227,7 +233,7 @@ void move_from_north_province_area_one_to_north_province_area_two(SingleSwitchPr // marker 4 {0.604167, 0.326852} {0.597396, 0.32037} {0.600521, 0.325} {0.589583, 0.319444} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_OUT, 0, 0, 0}, + {ZoomChange::ZOOM_OUT, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.597396, 0.32037} ); @@ -245,7 +251,7 @@ void move_from_north_province_area_one_to_north_province_area_two(SingleSwitchPr // marker 5 enter bamboo forest keep zoom{0.679688, 0.19537} zoom out {0.571875, 0.360185} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_OUT, 0, 0, 0}, + {ZoomChange::ZOOM_OUT, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.571875, 0.360185} ); @@ -263,7 +269,7 @@ void move_from_north_province_area_one_to_north_province_area_two(SingleSwitchPr // marker 6 {0.668229, 0.336111} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 0, 20}, + {ZoomChange::KEEP_ZOOM, 128, 0, 160ms}, FlyPoint::POKECENTER, {0.668229, 0.336111} ); @@ -281,7 +287,7 @@ void move_from_north_province_area_one_to_north_province_area_two(SingleSwitchPr // marker 7 {0.496354, 0.20463} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 255, 100, 80}, + {ZoomChange::ZOOM_IN, 255, 100, 640ms}, FlyPoint::POKECENTER, {0.496354, 0.20463} ); @@ -299,7 +305,7 @@ void move_from_north_province_area_one_to_north_province_area_two(SingleSwitchPr // marker 8 {0.428125, 0.483333} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 255, 0, 50}, + {ZoomChange::ZOOM_IN, 255, 0, 400ms}, FlyPoint::POKECENTER, {0.428125, 0.483333} ); @@ -321,7 +327,7 @@ void move_from_north_province_area_one_to_north_province_area_two(SingleSwitchPr // place marker past pokecenter {0.25625, 0.566667} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 80, 50}, + {ZoomChange::KEEP_ZOOM, 0, 80, 400ms}, FlyPoint::POKECENTER, {0.25625, 0.566667} ); @@ -340,8 +346,8 @@ void beat_team_star_fighting1(SingleSwitchProgramEnvironment& env, ProController if (attempt_number > 0 || ENABLE_TEST){ env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 128, 80}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 128, 80}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 128, 640ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 128, 640ms}); } // marker 1 @@ -361,7 +367,7 @@ void beat_team_star_fighting1(SingleSwitchProgramEnvironment& env, ProController // marker 2. navigate to gate {0.244792, 0.37037} {0.244792, 0.359259} {0.265625, 0.371296} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_OUT, 255, 128, 0}, + {ZoomChange::ZOOM_OUT, 255, 128, 0ms}, FlyPoint::POKECENTER, {0.265625, 0.371296} ); @@ -587,8 +593,8 @@ void move_from_fighting_base_to_north_province_area_two(SingleSwitchProgramEnvir // marker 1. set marker to pokecenter realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 0, 0}, - {ZoomChange::KEEP_ZOOM, 0, 0, 0} + {ZoomChange::ZOOM_IN, 0, 0, 0ms}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ @@ -647,7 +653,7 @@ void move_from_west_province_area_one_north_to_alfornada(SingleSwitchProgramEnvi // marker 2 zoom in{0.605729, 0.30463}, zoom out{0.684375, 0.616667} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_OUT, 0, 150, 15}, + {ZoomChange::ZOOM_OUT, 0, 150, 120ms}, FlyPoint::POKECENTER, {0.684375, 0.616667} ); @@ -665,7 +671,7 @@ void move_from_west_province_area_one_north_to_alfornada(SingleSwitchProgramEnvi // marker 3 {0.767708, 0.45} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 255, 60}, + {ZoomChange::KEEP_ZOOM, 255, 255, 480ms}, FlyPoint::POKECENTER, {0.767708, 0.45} ); @@ -684,7 +690,7 @@ void move_from_west_province_area_one_north_to_alfornada(SingleSwitchProgramEnvi // marker 4 {0.763021, 0.253704} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.763021, 0.253704} ); @@ -702,7 +708,7 @@ void move_from_west_province_area_one_north_to_alfornada(SingleSwitchProgramEnvi // marker 5 {0.780729, 0.216667} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.780729, 0.216667} ); @@ -720,7 +726,7 @@ void move_from_west_province_area_one_north_to_alfornada(SingleSwitchProgramEnvi // marker 6. place the marker at the top of the cliff. {0.633333, 0.304630} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_OUT, 0, 0, 0}, + {ZoomChange::ZOOM_OUT, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.633333, 0.304630} ); @@ -775,7 +781,7 @@ void move_from_west_province_area_one_north_to_alfornada(SingleSwitchProgramEnvi // marker 7 {0.501042, 0.738889} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 200, 30}, + {ZoomChange::KEEP_ZOOM, 0, 200, 240ms}, FlyPoint::POKECENTER, {0.501042, 0.738889} ); @@ -794,8 +800,8 @@ void move_from_west_province_area_one_north_to_alfornada(SingleSwitchProgramEnvi // marker 8. set marker to pokecenter realign_player_from_landmark( env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 128, 255, 30}, - {ZoomChange::KEEP_ZOOM, 0, 0, 0} + {ZoomChange::KEEP_ZOOM, 128, 255, 240ms}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms} ); handle_when_stationary_in_overworld(env.program_info(), env.console, context, diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_32.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_32.cpp index dcff5ac6b..2ac840c78 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_32.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_32.cpp @@ -99,8 +99,8 @@ void checkpoint_84(SingleSwitchProgramEnvironment& env, ProControllerContext& co if (attempt_number > 0 || ENABLE_TEST){ env.console.log("Fly to neighbouring Pokecenter, then fly back, to clear any pokemon covering the minimap."); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 128, 0, 150}); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 128, 255, 150}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 128, 0, 1200ms}); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 128, 255, 1200ms}); } realign_player(env.program_info(), env.console, context, PlayerRealignMode::REALIGN_NEW_MARKER, 255, 140, 70); @@ -123,7 +123,7 @@ void checkpoint_84(SingleSwitchProgramEnvironment& env, ProControllerContext& co // {0.326042, 0.438889} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 0, 0}, + {ZoomChange::ZOOM_IN, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.326042, 0.438889} ); @@ -144,7 +144,7 @@ void checkpoint_84(SingleSwitchProgramEnvironment& env, ProControllerContext& co handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 240ms); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 0, 0, 300, 50); // move left @@ -156,7 +156,7 @@ void checkpoint_84(SingleSwitchProgramEnvironment& env, ProControllerContext& co // speak to Nemona clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::OVERWORLD}); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 240ms); // speak to receptionist clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::OVERWORLD}); @@ -173,7 +173,7 @@ void checkpoint_84(SingleSwitchProgramEnvironment& env, ProControllerContext& co direction.change_direction(env.program_info(), env.console, context, 5.516255); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 240ms); clear_dialog(env.console, context, ClearDialogMode::STOP_PROMPT, 60, {CallbackEnum::PROMPT_DIALOG}); //mash past other dialog @@ -223,7 +223,7 @@ void checkpoint_84(SingleSwitchProgramEnvironment& env, ProControllerContext& co handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 240ms); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 0, 0, 300, 50); // move left @@ -244,7 +244,7 @@ void checkpoint_84(SingleSwitchProgramEnvironment& env, ProControllerContext& co pbf_wait(context, 3000ms); // wait for overworld after leaving gym wait_for_overworld(env.program_info(), env.console, context, 30); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0}, FlyPoint::POKECENTER); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER); }); } diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_33.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_33.cpp index 805830f7c..67b3a5bec 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_33.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_33.cpp @@ -116,10 +116,10 @@ void AutoStory_Checkpoint_89::run_checkpoint(SingleSwitchProgramEnvironment& env void checkpoint_85(SingleSwitchProgramEnvironment& env, ProControllerContext& context, EventNotificationOption& notif_status_update, AutoStoryStats& stats){ checkpoint_reattempt_loop(env, context, notif_status_update, stats, [&](size_t attempt_number){ - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 50, 320}, FlyPoint::FAST_TRAVEL); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 50, 2560ms}, FlyPoint::FAST_TRAVEL); realign_player(env.program_info(), env.console, context, PlayerRealignMode::REALIGN_NEW_MARKER, 128, 0, 80); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30000ms); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::PROMPT_DIALOG, CallbackEnum::BATTLE, CallbackEnum:: DIALOG_ARROW}); @@ -127,7 +127,7 @@ void checkpoint_85(SingleSwitchProgramEnvironment& env, ProControllerContext& co run_trainer_battle_press_A(env.console, context, BattleStopCondition::STOP_DIALOG); mash_button_till_overworld(env.console, context, BUTTON_A); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 0, 0, 0}, FlyPoint::FAST_TRAVEL); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 0, 0, 0ms}, FlyPoint::FAST_TRAVEL); }); } @@ -155,7 +155,7 @@ void checkpoint_86(SingleSwitchProgramEnvironment& env, ProControllerContext& co // marker 1 {0.429688, 0.299074} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.429688, 0.299074} ); @@ -174,7 +174,7 @@ void checkpoint_86(SingleSwitchProgramEnvironment& env, ProControllerContext& co // marker 2 {0.482812, 0.378704} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_IN, 0, 0, 50}, + {ZoomChange::ZOOM_IN, 0, 0, 400ms}, FlyPoint::POKECENTER, {0.482812, 0.378704} ); @@ -193,7 +193,7 @@ void checkpoint_86(SingleSwitchProgramEnvironment& env, ProControllerContext& co // marker 3 {0.638021, 0.676852} place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 50}, + {ZoomChange::KEEP_ZOOM, 0, 0, 400ms}, FlyPoint::POKECENTER, {0.638021, 0.676852} ); @@ -333,7 +333,7 @@ void checkpoint_88(SingleSwitchProgramEnvironment& env, ProControllerContext& co pbf_move_left_joystick(context, 128, 0, 200, 50); // straight pbf_move_left_joystick(context, 255, 128, 50, 50); // right - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE, CallbackEnum::DIALOG_ARROW}); @@ -364,7 +364,7 @@ void checkpoint_88(SingleSwitchProgramEnvironment& env, ProControllerContext& co auto_heal_from_menu_or_overworld(env.program_info(), env.console, context, 0, true); // engage next battle - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE, CallbackEnum::DIALOG_ARROW, CallbackEnum::PROMPT_DIALOG}); env.console.log("Battle Elite Four 2."); // select move 2, which should be a fire move. to battle the steel trainer @@ -385,7 +385,7 @@ void checkpoint_88(SingleSwitchProgramEnvironment& env, ProControllerContext& co auto_heal_from_menu_or_overworld(env.program_info(), env.console, context, 0, true); // engage next battle - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE, CallbackEnum::DIALOG_ARROW, CallbackEnum::PROMPT_DIALOG}); env.console.log("Battle Elite Four 3."); @@ -395,7 +395,7 @@ void checkpoint_88(SingleSwitchProgramEnvironment& env, ProControllerContext& co mash_button_till_overworld(env.console, context, BUTTON_A); // engage next battle - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE, CallbackEnum::DIALOG_ARROW, CallbackEnum::PROMPT_DIALOG}); env.console.log("Battle Elite Four 4."); @@ -410,7 +410,7 @@ void checkpoint_88(SingleSwitchProgramEnvironment& env, ProControllerContext& co void checkpoint_89(SingleSwitchProgramEnvironment& env, ProControllerContext& context, EventNotificationOption& notif_status_update, AutoStoryStats& stats){ checkpoint_reattempt_loop(env, context, notif_status_update, stats, [&](size_t attempt_number){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE, CallbackEnum::DIALOG_ARROW, CallbackEnum::PROMPT_DIALOG}); env.console.log("Battle Geeta."); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_34.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_34.cpp index 995dbeb55..8300ace1f 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_34.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_34.cpp @@ -89,7 +89,7 @@ void checkpoint_90(SingleSwitchProgramEnvironment& env, ProControllerContext& co checkpoint_reattempt_loop(env, context, notif_status_update, stats, [&](size_t attempt_number){ // Fly to Academy - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 230, 80}, FlyPoint::FAST_TRAVEL); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 230, 640ms}, FlyPoint::FAST_TRAVEL); realign_player(env.program_info(), env.console, context, PlayerRealignMode::REALIGN_NEW_MARKER, 128, 255, 100); @@ -166,7 +166,7 @@ void checkpoint_91(SingleSwitchProgramEnvironment& env, ProControllerContext& co wait_for_overworld(env.program_info(), env.console, context); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30000ms); mash_button_till_overworld(env.console, context, BUTTON_A); @@ -202,7 +202,7 @@ void checkpoint_91(SingleSwitchProgramEnvironment& env, ProControllerContext& co mash_button_till_overworld(env.console, context, BUTTON_A); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 0, 0, 0}, FlyPoint::FAST_TRAVEL); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 0, 0, 0ms}, FlyPoint::FAST_TRAVEL); }); @@ -211,7 +211,7 @@ void checkpoint_91(SingleSwitchProgramEnvironment& env, ProControllerContext& co void checkpoint_92(SingleSwitchProgramEnvironment& env, ProControllerContext& context, EventNotificationOption& notif_status_update, AutoStoryStats& stats){ checkpoint_reattempt_loop(env, context, notif_status_update, stats, [&](size_t attempt_number){ - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 145, 255, 350}, FlyPoint::FAST_TRAVEL); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_IN, 145, 255, 2800ms}, FlyPoint::FAST_TRAVEL); handle_unexpected_battles(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 0, 128, 1000ms, 100ms); @@ -240,7 +240,7 @@ void checkpoint_92(SingleSwitchProgramEnvironment& env, ProControllerContext& co mash_button_till_overworld(env.console, context, BUTTON_A); - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0}, FlyPoint::POKECENTER); + move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER); }); } diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_35.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_35.cpp index b8b0c1fcd..7d1ae358b 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_35.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_35.cpp @@ -90,11 +90,20 @@ void checkpoint_93(SingleSwitchProgramEnvironment& env, ProControllerContext& co [&](size_t attempt_number){ // fly to Medali West from Los Platos Pokecenter // this clears Pokemon in minimap - move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::ZOOM_OUT, 95, 0, 170}, FlyPoint::POKECENTER); + move_cursor_towards_flypoint_and_go_there( + env.program_info(), + env.console, + context, + {ZoomChange::ZOOM_OUT, 95, 0, 1360ms}, + FlyPoint::POKECENTER + ); // marker 1 {0.580729, 0.286111} - place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + place_marker_offset_from_flypoint( + env.program_info(), + env.console, + context, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.580729, 0.286111} ); @@ -111,8 +120,11 @@ void checkpoint_93(SingleSwitchProgramEnvironment& env, ProControllerContext& co ); // marker 2 {0.475, 0.4} - place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + place_marker_offset_from_flypoint( + env.program_info(), + env.console, + context, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.475, 0.4} ); @@ -129,8 +141,9 @@ void checkpoint_93(SingleSwitchProgramEnvironment& env, ProControllerContext& co ); // marker 3 {0.473958, 0.260185} {0.479687, 0.250926} - place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 255, 30}, + place_marker_offset_from_flypoint( + env.program_info(), env.console, context, + {ZoomChange::KEEP_ZOOM, 0, 255, 240ms}, FlyPoint::POKECENTER, {0.479687, 0.250926} ); @@ -147,8 +160,9 @@ void checkpoint_93(SingleSwitchProgramEnvironment& env, ProControllerContext& co ); // marker 4 {0.425, 0.289815} - place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 0, 0, 0}, + place_marker_offset_from_flypoint( + env.program_info(), env.console, context, + {ZoomChange::KEEP_ZOOM, 0, 0, 0ms}, FlyPoint::POKECENTER, {0.425, 0.289815} ); @@ -165,8 +179,9 @@ void checkpoint_93(SingleSwitchProgramEnvironment& env, ProControllerContext& co ); // marker 5 {0.465104, 0.292593} - place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::KEEP_ZOOM, 255, 0, 20}, + place_marker_offset_from_flypoint( + env.program_info(), env.console, context, + {ZoomChange::KEEP_ZOOM, 255, 0, 160ms}, FlyPoint::POKECENTER, {0.465104, 0.292593} ); @@ -183,8 +198,9 @@ void checkpoint_93(SingleSwitchProgramEnvironment& env, ProControllerContext& co ); // marker 6 {0.439583, 0.274074} - place_marker_offset_from_flypoint(env.program_info(), env.console, context, - {ZoomChange::ZOOM_OUT, 255, 255, 20}, + place_marker_offset_from_flypoint( + env.program_info(), env.console, context, + {ZoomChange::ZOOM_OUT, 255, 255, 160ms}, FlyPoint::POKECENTER, {0.439583, 0.274074} ); @@ -206,7 +222,13 @@ void checkpoint_93(SingleSwitchProgramEnvironment& env, ProControllerContext& co mash_button_till_overworld(env.console, context, BUTTON_A); // clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 120, {CallbackEnum::OVERWORLD, CallbackEnum::BLACK_DIALOG_BOX, CallbackEnum::PROMPT_DIALOG}); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30); + walk_forward_until_dialog( + env.program_info(), + env.console, + context, + NavigationMovementMode::DIRECTIONAL_ONLY, + 30000ms + ); mash_button_till_overworld(env.console, context, BUTTON_A); // prompt, black dialog. random A press }); @@ -618,11 +640,23 @@ void checkpoint_95(SingleSwitchProgramEnvironment& env, ProControllerContext& co // enter Station 1 - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20); + walk_forward_until_dialog( + env.program_info(), + env.console, + context, + NavigationMovementMode::DIRECTIONAL_ONLY, + 20000ms + ); mash_button_till_overworld(env.console, context, BUTTON_A); // black dialog // disable Lock at Station 1 - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20); + walk_forward_until_dialog( + env.program_info(), + env.console, + context, + NavigationMovementMode::DIRECTIONAL_SPAM_A, + 20000ms + ); mash_button_till_overworld(env.console, context, BUTTON_A); // prompt, black dialog, diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_36.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_36.cpp index 65c2bb978..c1b661b3e 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_36.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_36.cpp @@ -307,7 +307,7 @@ void checkpoint_97(SingleSwitchProgramEnvironment& env, ProControllerContext& co mash_button_till_overworld(env.console, context, BUTTON_A); // black dialog // disable Lock at Station 2 - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20000ms); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 120, {CallbackEnum::OVERWORLD, CallbackEnum::BLACK_DIALOG_BOX, CallbackEnum::PROMPT_DIALOG, CallbackEnum::WHITE_A_BUTTON}); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_37.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_37.cpp index dbca5928b..be0250f8a 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_37.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_37.cpp @@ -81,7 +81,14 @@ void checkpoint_98(SingleSwitchProgramEnvironment& env, ProControllerContext& co YOLOv5Detector yolo_detector(RESOURCE_PATH() + "PokemonSV/YOLO/A0-station-3.onnx"); pbf_move_left_joystick(context, 128, 255, 200, 100); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 10, 255, 128); + walk_forward_until_dialog( + env.program_info(), + env.console, + context, + NavigationMovementMode::DIRECTIONAL_ONLY, + 10000ms, + 255, 128 + ); clear_dialog(env.console, context, ClearDialogMode::STOP_PROMPT, 60, {CallbackEnum::PROMPT_DIALOG}); pbf_press_dpad(context, DPAD_DOWN, 13, 20); @@ -347,7 +354,13 @@ void checkpoint_99(SingleSwitchProgramEnvironment& env, ProControllerContext& co mash_button_till_overworld(env.console, context, BUTTON_A); // black dialog // disable Lock at Station 3 - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20); + walk_forward_until_dialog( + env.program_info(), + env.console, + context, + NavigationMovementMode::DIRECTIONAL_SPAM_A, + 20000ms + ); mash_button_till_overworld(env.console, context, BUTTON_A); // black dialog, prompt diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_38.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_38.cpp index e31e32cdc..dcf4879d7 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_38.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_38.cpp @@ -559,7 +559,7 @@ void checkpoint_101(SingleSwitchProgramEnvironment& env, ProControllerContext& c clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 120, {CallbackEnum::OVERWORLD, CallbackEnum::BLACK_DIALOG_BOX}); pbf_move_left_joystick(context, 128, 0, 100, 0); // disable Lock at Station 4 - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20000ms); mash_button_till_overworld(env.console, context, BUTTON_A); // black dialog, prompt diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_39.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_39.cpp index 44933c7eb..94c26a809 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_39.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_39.cpp @@ -82,7 +82,7 @@ void checkpoint_102(SingleSwitchProgramEnvironment& env, ProControllerContext& c YOLOv5Detector yolo_detector(RESOURCE_PATH() + "PokemonSV/YOLO/A0-lab.onnx"); pbf_move_left_joystick(context, 128, 255, 200, 100); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 10, 255, 128); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 10000ms, 255, 128); clear_dialog(env.console, context, ClearDialogMode::STOP_PROMPT, 60, {CallbackEnum::PROMPT_DIALOG}); pbf_press_dpad(context, DPAD_DOWN, 13, 20); pbf_press_dpad(context, DPAD_DOWN, 13, 20); @@ -93,7 +93,7 @@ void checkpoint_102(SingleSwitchProgramEnvironment& env, ProControllerContext& c // heal at the bed pbf_move_left_joystick(context, 128, 0, 300, 100); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10, 255, 128); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms, 255, 128); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::PROMPT_DIALOG, CallbackEnum::OVERWORLD}); // leave Station 2 @@ -183,7 +183,7 @@ void checkpoint_102(SingleSwitchProgramEnvironment& env, ProControllerContext& c ); // walked off cliff. now move backwards - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60, 128, 255); // move backwards until dialog detected + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms, 128, 255); // move backwards until dialog detected mash_button_till_overworld(env.console, context, BUTTON_A); @@ -294,7 +294,7 @@ void checkpoint_103(SingleSwitchProgramEnvironment& env, ProControllerContext& c pbf_move_left_joystick(context, 128, 0, 300, 50); pbf_move_left_joystick(context, 255, 128, 200, 50); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 10); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 10000ms); mash_button_till_overworld(env.console, context, BUTTON_A); }, false); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_40.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_40.cpp index 07813d3e9..e346f2b20 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_40.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_40.cpp @@ -83,7 +83,7 @@ void checkpoint_104(SingleSwitchProgramEnvironment& env, ProControllerContext& c pbf_press_button(context, BUTTON_L, 30, 10); pbf_move_left_joystick(context, 128, 0, 400, 50); pbf_move_left_joystick(context, 0, 128, 130, 50); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms); // now in elevator mash_button_till_overworld(env.console, context, BUTTON_A); @@ -91,12 +91,12 @@ void checkpoint_104(SingleSwitchProgramEnvironment& env, ProControllerContext& c pbf_move_left_joystick(context, 255, 128, 70, 50); // talk to the AI professor - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms); mash_button_till_overworld(env.console, context, BUTTON_A); // put the book in the machine pbf_press_button(context, BUTTON_L, 30, 10); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 120, {CallbackEnum::BATTLE, CallbackEnum::PROMPT_DIALOG, CallbackEnum::DIALOG_ARROW}); diff --git a/SerialPrograms/Source/PokemonSV/Programs/PokemonSV_WorldNavigation.cpp b/SerialPrograms/Source/PokemonSV/Programs/PokemonSV_WorldNavigation.cpp index 0115f0a60..746aa3116 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/PokemonSV_WorldNavigation.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/PokemonSV_WorldNavigation.cpp @@ -326,8 +326,8 @@ void place_marker_offset_from_flypoint( } uint8_t move_x1 = move_cursor_near_flypoint.move_x; uint8_t move_y1 = move_cursor_near_flypoint.move_y; - uint16_t move_duration1 = move_cursor_near_flypoint.move_duration; - pbf_move_left_joystick(context, move_x1, move_y1, move_duration1, 1 * TICKS_PER_SECOND); + Milliseconds move_duration1 = move_cursor_near_flypoint.move_duration; + pbf_move_left_joystick(context, move_x1, move_y1, move_duration1, 1000ms); move_cursor_to_position_offset_from_flypoint(info, stream, context, fly_point, {marker_offset.x, marker_offset.y}); @@ -655,21 +655,21 @@ void walk_forward_until_dialog( VideoStream& stream, ProControllerContext& context, NavigationMovementMode movement_mode, - uint16_t seconds_timeout, + Milliseconds timeout, uint8_t x, uint8_t y ){ - DialogBoxWatcher dialog(COLOR_RED, true); + DialogBoxWatcher dialog(COLOR_RED, true); context.wait_for_all_requests(); int ret = run_until( stream, context, [&](ProControllerContext& context){ - ssf_press_left_joystick(context, x, y, 0, seconds_timeout * TICKS_PER_SECOND); + ssf_press_left_joystick(context, x, y, 0ms, timeout); if (movement_mode == NavigationMovementMode::DIRECTIONAL_ONLY){ - pbf_wait(context, seconds_timeout * TICKS_PER_SECOND); + pbf_wait(context, timeout); } else if (movement_mode == NavigationMovementMode::DIRECTIONAL_SPAM_A){ - pbf_mash_button(context, BUTTON_A, seconds_timeout * TICKS_PER_SECOND); + pbf_mash_button(context, BUTTON_A, timeout); // for (size_t j = 0; j < seconds_timeout; j++){ // pbf_press_button(context, BUTTON_A, 20, 105); // } diff --git a/SerialPrograms/Source/PokemonSV/Programs/PokemonSV_WorldNavigation.h b/SerialPrograms/Source/PokemonSV/Programs/PokemonSV_WorldNavigation.h index f3b644f1c..6a37237e1 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/PokemonSV_WorldNavigation.h +++ b/SerialPrograms/Source/PokemonSV/Programs/PokemonSV_WorldNavigation.h @@ -73,7 +73,7 @@ struct MoveCursor{ ZoomChange zoom_change; uint8_t move_x; uint8_t move_y; - uint16_t move_duration; + Milliseconds move_duration; }; // From map, press A to fly to a travel spot. @@ -138,7 +138,7 @@ void walk_forward_until_dialog( VideoStream& stream, ProControllerContext& context, NavigationMovementMode movement_mode, - uint16_t seconds_timeout = 10, + Milliseconds timeout = Milliseconds(80), uint8_t x = 128, uint8_t y = 0 ); From 8d3fa35f7a5675b1050dfd83ea32107ef8dfcd6b Mon Sep 17 00:00:00 2001 From: Alexander Yee Date: Sun, 21 Dec 2025 23:21:32 -0800 Subject: [PATCH 2/3] Revert walk_forward_until_dialog() changes. --- .../PokemonSV_AutoStory_Segment_01.cpp | 10 +++--- .../PokemonSV_AutoStory_Segment_02.cpp | 2 +- .../PokemonSV_AutoStory_Segment_03.cpp | 10 ++---- .../PokemonSV_AutoStory_Segment_04.cpp | 26 ++------------- .../PokemonSV_AutoStory_Segment_08.cpp | 24 ++------------ .../PokemonSV_AutoStory_Segment_09.cpp | 4 +-- .../PokemonSV_AutoStory_Segment_11.cpp | 12 +++---- .../PokemonSV_AutoStory_Segment_12.cpp | 2 +- .../PokemonSV_AutoStory_Segment_16.cpp | 2 +- .../PokemonSV_AutoStory_Segment_17.cpp | 6 ++-- .../PokemonSV_AutoStory_Segment_20.cpp | 32 +++---------------- .../PokemonSV_AutoStory_Segment_22.cpp | 8 ++--- .../PokemonSV_AutoStory_Segment_24.cpp | 10 ++---- .../PokemonSV_AutoStory_Segment_26.cpp | 4 +-- .../PokemonSV_AutoStory_Segment_29.cpp | 8 ++--- .../PokemonSV_AutoStory_Segment_30.cpp | 12 +++---- .../PokemonSV_AutoStory_Segment_32.cpp | 10 +++--- .../PokemonSV_AutoStory_Segment_33.cpp | 12 +++---- .../PokemonSV_AutoStory_Segment_34.cpp | 2 +- .../PokemonSV_AutoStory_Segment_35.cpp | 24 ++------------ .../PokemonSV_AutoStory_Segment_36.cpp | 2 +- .../PokemonSV_AutoStory_Segment_37.cpp | 17 ++-------- .../PokemonSV_AutoStory_Segment_38.cpp | 2 +- .../PokemonSV_AutoStory_Segment_39.cpp | 8 ++--- .../PokemonSV_AutoStory_Segment_40.cpp | 6 ++-- .../Programs/PokemonSV_WorldNavigation.cpp | 8 ++--- .../Programs/PokemonSV_WorldNavigation.h | 2 +- 27 files changed, 80 insertions(+), 185 deletions(-) diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_01.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_01.cpp index 844c9bbed..5a897dd06 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_01.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_01.cpp @@ -131,7 +131,7 @@ void checkpoint_02( env.console.log("Go to the kitchen, talk with mom"); env.console.overlay().add_log("Go to the kitchen, talk with mom", COLOR_WHITE); pbf_move_left_joystick(context, {0, -1}, 2000ms, 160ms); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms, 0, 128); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60, 0, 128); env.console.log("clear_dialog: Talk with Mom."); clear_dialog(env.console, context, ClearDialogMode::STOP_TIMEOUT, 5, {}); @@ -140,7 +140,7 @@ void checkpoint_02( env.console.log("Go to the front door, talk with Clavell"); env.console.overlay().add_log("Go to the front door, talk with Clavell", COLOR_WHITE); pbf_move_left_joystick(context, 230, 200, 2000ms, 160ms); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms, 255, 128); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60, 255, 128); env.console.log("clear_dialog: Talk with Clavell at front door."); clear_dialog(env.console, context, ClearDialogMode::STOP_TIMEOUT, 5, {}); @@ -162,7 +162,7 @@ void checkpoint_02( pbf_move_left_joystick(context, 0, 0, 3000ms, 160ms); pbf_move_left_joystick(context, 0, 128, 3000ms, 160ms); pbf_move_left_joystick(context, {0, -1}, 4000ms, 160ms); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms, 0, 128); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60, 0, 128); env.console.log("clear_dialog: Talk with Clavell at living room."); clear_dialog(env.console, context, ClearDialogMode::STOP_TIMEOUT, 10, {}); @@ -170,7 +170,7 @@ void checkpoint_02( context.wait_for_all_requests(); env.console.log("Go outside, receive Rotom Phone"); env.console.overlay().add_log("Go outside, receive Rotom Phone", COLOR_WHITE); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms, 245, 230); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60, 245, 230); env.console.log("clear_dialog: Talk with Clavell outside. Receive Rotom phone. Stop when detect overworld."); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::OVERWORLD, CallbackEnum::WHITE_A_BUTTON}); @@ -201,7 +201,7 @@ void checkpoint_03( pbf_move_left_joystick(context, {-1, 0}, 240ms, 400ms); direction.change_direction(env.program_info(), env.console, context, 4.62); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20); context.wait_for_all_requests(); env.console.log("Entered Nemona's house"); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_02.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_02.cpp index b110dadab..0e5106377 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_02.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_02.cpp @@ -85,7 +85,7 @@ void checkpoint_04( direction.change_direction(env.program_info(), env.console, context, 4.55); pbf_move_left_joystick(context, 128, 0, 600, 50); direction.change_direction(env.program_info(), env.console, context, 5.27); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 160ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20); context.wait_for_all_requests(); env.console.log("Starting battle..."); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_03.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_03.cpp index 7bc5102b9..9f836d617 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_03.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_03.cpp @@ -92,14 +92,8 @@ void checkpoint_05( direction.change_direction(env.program_info(), env.console, context, 1.92); pbf_move_left_joystick(context, 128, 0, 7000ms, 400ms); direction.change_direction(env.program_info(), env.console, context, 1.13); - walk_forward_until_dialog( - env.program_info(), - env.console, - context, - NavigationMovementMode::DIRECTIONAL_ONLY, - 20000ms - ); - + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20); + context.wait_for_all_requests(); env.console.log("Get mom's sandwich"); env.console.overlay().add_log("Get mom's sandwich", COLOR_WHITE); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_04.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_04.cpp index eda3465f4..7329cbf86 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_04.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_04.cpp @@ -92,13 +92,7 @@ void checkpoint_08( context.wait_for_all_requests(); clear_dialog(env.console, context, ClearDialogMode::STOP_TIMEOUT, 10, {}); env.console.log("Go to Legendary pokemon laying on the beach."); - walk_forward_until_dialog( - env.program_info(), - env.console, - context, - NavigationMovementMode::DIRECTIONAL_SPAM_A, - 30000ms - ); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30); env.console.log("clear_dialog: Offer Miraidon/Koraidon a sandwich."); clear_dialog(env.console, context, ClearDialogMode::STOP_TIMEOUT, 10, {}); @@ -145,14 +139,7 @@ void checkpoint_08( realign_player(env.program_info(), stream, context, PlayerRealignMode::REALIGN_NO_MARKER, 150, 20, 20); pbf_move_left_joystick(context, 128, 0, 1000, 50); realign_player(env.program_info(), stream, context, PlayerRealignMode::REALIGN_NO_MARKER, 160, 20, 20); - walk_forward_until_dialog( - env.program_info(), - env.console, - context, - NavigationMovementMode::DIRECTIONAL_ONLY, - 60000ms, - 128, 0 - ); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60, 128, 0); } ); @@ -203,14 +190,7 @@ void checkpoint_08( ); env.console.log("overworld_navigation: Go to Houndoom."); - walk_forward_until_dialog( - env.program_info(), - env.console, - context, - NavigationMovementMode::DIRECTIONAL_ONLY, - 60000ms, - 128, 0 - ); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60, 128, 0); mash_button_till_overworld(env.console, context, BUTTON_A); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_08.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_08.cpp index 39d91c1b6..8b26e2b60 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_08.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_08.cpp @@ -105,13 +105,7 @@ void checkpoint_13( context.wait_for_all_requests(); realign_player(info, env.console, context, PlayerRealignMode::REALIGN_NEW_MARKER, 0, 80, 50); walk_forward_while_clear_front_path(info, env.console, context, 500); - walk_forward_until_dialog( - info, - env.console, - context, - NavigationMovementMode::DIRECTIONAL_ONLY, - 30000ms - ); + walk_forward_until_dialog(info, env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30); }); env.console.log("clear_dialog: Talk with Nemona at Mesagoza gate. Stop when detect battle."); @@ -157,13 +151,7 @@ void checkpoint_14( // realign going straight realign_player(env.program_info(), env.console, context, PlayerRealignMode::REALIGN_NEW_MARKER, 128, 0, 100); // walk forward until hit dialog at top of stairs - walk_forward_until_dialog( - env.program_info(), - env.console, - context, - NavigationMovementMode::DIRECTIONAL_ONLY, - 60000ms - ); + walk_forward_until_dialog( env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60); // clear dialog until battle. with prompt, battle env.console.log("clear_dialog: Talk with Team Star at the top of the stairs. Stop when detect battle."); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::PROMPT_DIALOG, CallbackEnum::BATTLE, CallbackEnum::DIALOG_ARROW}); @@ -206,13 +194,7 @@ void checkpoint_15( // realign going straight realign_player(env.program_info(), env.console, context, PlayerRealignMode::REALIGN_OLD_MARKER); // walk forward until hit dialog inside the school - walk_forward_until_dialog( - env.program_info(), - env.console, - context, - NavigationMovementMode::DIRECTIONAL_ONLY, - 60000ms - ); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60); env.console.log("clear_dialog: Talk with Nemona, Clavell, and Jacq inside the school. Stop when detect overworld."); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_09.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_09.cpp index 71ae807ac..f605083be 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_09.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_09.cpp @@ -156,7 +156,7 @@ void checkpoint_17( context.wait_for_all_requests(); // walk backwards until dialog - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20000ms, 128, 255); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20, 128, 255); env.console.log("Talk with Cassiopeia."); mash_button_till_overworld(env.console, context, BUTTON_A, 360); @@ -277,7 +277,7 @@ void checkpoint_20( env.console.log("Leave dorm for schoolyard."); mash_button_till_overworld(env.console, context, BUTTON_A, 360); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms, 128, 0); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60, 128, 0); env.console.log("Talk to Nemona, Arven, Cassiopeia."); clear_dialog(env.console, context, ClearDialogMode::STOP_TIMEOUT, 16, diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_11.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_11.cpp index cb273804b..cc9c31577 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_11.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_11.cpp @@ -135,7 +135,7 @@ void checkpoint_24( context.wait_for_all_requests(); handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 0, 0, 100, 20); @@ -145,7 +145,7 @@ void checkpoint_24( // enter gym building. talk go Nemona mash_button_till_overworld(env.console, context, BUTTON_A, 360); // talk to receptionist - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::OVERWORLD}); pbf_move_left_joystick(context, {0, -1}, 2400ms, 800ms); @@ -184,7 +184,7 @@ void checkpoint_25( // section 1.1. keep walking forward and talk to Olive roll NPC do_action_and_monitor_for_battles(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10); } ); mash_button_till_overworld(env.console, context, BUTTON_A); @@ -207,7 +207,7 @@ void checkpoint_25( // section 5. battle first NPC direction.change_direction(env.program_info(), env.console, context, 1.485); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms, 128, 20); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10, 128, 20); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE, CallbackEnum::DIALOG_ARROW}); env.console.log("Battle Olive Roll NPC 1."); run_trainer_battle_press_A(env.console, context, BattleStopCondition::STOP_DIALOG); @@ -227,7 +227,7 @@ void checkpoint_25( // section 9. battle second NPC direction.change_direction(env.program_info(), env.console, context, 4.275); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms, 128, 20); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10, 128, 20); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE, CallbackEnum::DIALOG_ARROW}); env.console.log("Battle Olive Roll NPC 2."); run_trainer_battle_press_A(env.console, context, BattleStopCondition::STOP_DIALOG); @@ -261,7 +261,7 @@ void checkpoint_26( reset_game_from_home(env.program_info(), env.console, context); // talk to Olive roll NPC - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms, 128, 20); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10, 128, 20); mash_button_till_overworld(env.console, context, BUTTON_A); // section 1 diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_12.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_12.cpp index 4f3420535..282986da9 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_12.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_12.cpp @@ -128,7 +128,7 @@ void checkpoint_28( wait_for_overworld(env.program_info(), env.console, context); // talk to receptionist - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE, CallbackEnum::PROMPT_DIALOG, CallbackEnum::DIALOG_ARROW}); // battle Katy diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_16.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_16.cpp index 06cb5f5a9..8e334d161 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_16.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_16.cpp @@ -115,7 +115,7 @@ void checkpoint_35( pbf_move_left_joystick(context, 128, 0, 120, 100); direction.change_direction(env.program_info(), env.console, context, 5.11); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 160ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20); mash_button_till_overworld(env.console, context, BUTTON_A); }); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_17.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_17.cpp index 2d36e11da..820793c59 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_17.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_17.cpp @@ -113,7 +113,7 @@ void checkpoint_37( 128, 0, 30, 10, false); // section 3. set marker to shop/Kofu realign_player(env.program_info(), env.console, context, PlayerRealignMode::REALIGN_NEW_MARKER, 0, 140, 27); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE, CallbackEnum::PROMPT_DIALOG, CallbackEnum::DIALOG_ARROW}); env.console.log("Battle Kofu's assistant."); @@ -166,7 +166,7 @@ void checkpoint_38( handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 18000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 18); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 255, 0, 800ms, 400ms); @@ -177,7 +177,7 @@ void checkpoint_38( mash_button_till_overworld(env.console, context, BUTTON_A, 360); // talk to reception. Battle Kofu - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE, CallbackEnum::PROMPT_DIALOG, CallbackEnum::DIALOG_ARROW}); env.console.log("Battle Water Gym."); run_trainer_battle_press_A(env.console, context, BattleStopCondition::STOP_DIALOG); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_20.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_20.cpp index 4f7370bbd..74385ef0b 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_20.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_20.cpp @@ -146,13 +146,7 @@ void checkpoint_43( handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog( - env.program_info(), - env.console, - context, - NavigationMovementMode::DIRECTIONAL_ONLY, - 20000ms - ); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 0, 0, 800ms, 400ms); @@ -185,13 +179,7 @@ void checkpoint_44( // talk to receptionist env.console.log("Talk to Artazon gym receptionist."); - walk_forward_until_dialog( - env.program_info(), - env.console, - context, - NavigationMovementMode::DIRECTIONAL_SPAM_A, - 10000ms - ); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::OVERWORLD}); pbf_move_left_joystick(context, 128, 255, 2400ms, 800ms); @@ -202,13 +190,7 @@ void checkpoint_44( // talk to Sunflora NPC DirectionDetector direction; direction.change_direction(env.program_info(), env.console, context, 4.91); - walk_forward_until_dialog( - env.program_info(), - env.console, - context, - NavigationMovementMode::DIRECTIONAL_SPAM_A, - 10000ms - ); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::OVERWORLD, CallbackEnum::PROMPT_DIALOG}); // realign to wall @@ -539,13 +521,7 @@ void checkpoint_45( handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog( - env.program_info(), - env.console, - context, - NavigationMovementMode::DIRECTIONAL_SPAM_A, - 20000ms - ); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 0, 0, 800ms, 400ms); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_22.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_22.cpp index f97056b00..597ad682f 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_22.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_22.cpp @@ -201,7 +201,7 @@ void checkpoint_51( handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 160ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 0, 0, 800ms, 400ms); // move forward/left @@ -227,13 +227,13 @@ void checkpoint_52( [&](size_t attempt_number){ // talk to receptionist env.console.log("Talk to Levincia gym receptionist."); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::OVERWORLD}); pbf_move_left_joystick(context, 128, 255, 2400ms, 800ms); pbf_wait(context, 3000ms); // wait for dialog after leaving gym - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20000ms, 128, 255); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20, 128, 255); WhiteTriangleWatcher white_triangle(COLOR_RED, ImageFloatBox(0.948773, 0.034156, 0.013874, 0.024668)); // mash A until detect top right white triangle 1 @@ -367,7 +367,7 @@ void checkpoint_53( pbf_wait(context, 3000ms); // talk to Gym receptionist - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::PROMPT_DIALOG, CallbackEnum::BATTLE, CallbackEnum::DIALOG_ARROW}); env.console.log("Battle Electric Gym leader."); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_24.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_24.cpp index b8c035299..b84288ff0 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_24.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_24.cpp @@ -160,13 +160,7 @@ void checkpoint_55( direction.change_direction(env.program_info(), env.console, context, 0.625226); }); - walk_forward_until_dialog( - env.program_info(), - env.console, - context, - NavigationMovementMode::DIRECTIONAL_ONLY, - 30000ms - ); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30); confirm_titan_battle(env, context); env.console.log("Battle Orthworm Titan phase 1."); @@ -222,7 +216,7 @@ void checkpoint_55( pbf_move_left_joystick(context, 128, 0, 2651ms, 0ms); }); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30); // battle the titan phase 2 clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE}); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_26.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_26.cpp index 9471eb136..10535f94b 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_26.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_26.cpp @@ -136,7 +136,7 @@ void checkpoint_61( handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 255, 0, 800ms, 400ms); // if to the left of the door, will move right and enter @@ -149,7 +149,7 @@ void checkpoint_61( mash_button_till_overworld(env.console, context, BUTTON_A); // speak to gym receptionist - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::OVERWORLD}); }); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_29.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_29.cpp index 08bbf0cf2..9d5dd15e9 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_29.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_29.cpp @@ -134,7 +134,7 @@ void checkpoint_71(SingleSwitchProgramEnvironment& env, ProControllerContext& co handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 255, 0, 800ms, 400ms); // if to the left of the door, will move right and enter @@ -147,7 +147,7 @@ void checkpoint_71(SingleSwitchProgramEnvironment& env, ProControllerContext& co mash_button_till_overworld(env.console, context, BUTTON_A); // speak to gym receptionist - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::OVERWORLD}); @@ -167,7 +167,7 @@ void checkpoint_72(SingleSwitchProgramEnvironment& env, ProControllerContext& co DirectionDetector direction; // Minimap should be clear of Pokemon, since we haven't opened the map, since we cleared the Pokemon in checkpoint 71 direction.change_direction(env.program_info(), env.console, context, 2.462858); // 2.496149 // 2.479418 - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20); // speak to MC Sledge clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::PROMPT_DIALOG, CallbackEnum::BATTLE, CallbackEnum:: DIALOG_ARROW}); @@ -197,7 +197,7 @@ void checkpoint_73(SingleSwitchProgramEnvironment& env, ProControllerContext& co handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 255, 128, 1600ms, 400ms); // if to the left of the door, will move right diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_30.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_30.cpp index b381c31c6..da21fe6ee 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_30.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_30.cpp @@ -129,9 +129,9 @@ void checkpoint_75(SingleSwitchProgramEnvironment& env, ProControllerContext& co direction.change_direction(env.program_info(), env.console, context, 1.343606); //1.327724 - handle_when_stationary_in_overworld(env.program_info(), env.console, context, - [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30000ms); + handle_when_stationary_in_overworld(env.program_info(), env.console, context, + [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 0, 0, 150, 50); // move left @@ -148,7 +148,7 @@ void checkpoint_75(SingleSwitchProgramEnvironment& env, ProControllerContext& co mash_button_till_overworld(env.console, context, BUTTON_A); // speak to gym receptionist - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::OVERWORLD}); @@ -190,7 +190,7 @@ void checkpoint_76(SingleSwitchProgramEnvironment& env, ProControllerContext& co direction.change_direction(env.program_info(), env.console, context, 2.513925); // talk to - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30); }); @@ -257,7 +257,7 @@ void checkpoint_76(SingleSwitchProgramEnvironment& env, ProControllerContext& co handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 0, 0, 150, 50); // move left diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_32.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_32.cpp index 0ded07c10..8ea80df17 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_32.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_32.cpp @@ -143,8 +143,8 @@ void checkpoint_84(SingleSwitchProgramEnvironment& env, ProControllerContext& co direction.change_direction(env.program_info(), env.console, context, 0.225386); // 0.225386 handle_when_stationary_in_overworld(env.program_info(), env.console, context, - [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 240ms); + [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 0, 0, 300, 50); // move left @@ -156,7 +156,7 @@ void checkpoint_84(SingleSwitchProgramEnvironment& env, ProControllerContext& co // speak to Nemona clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::OVERWORLD}); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 240ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30); // speak to receptionist clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::OVERWORLD}); @@ -173,7 +173,7 @@ void checkpoint_84(SingleSwitchProgramEnvironment& env, ProControllerContext& co direction.change_direction(env.program_info(), env.console, context, 5.516255); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 240ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30); clear_dialog(env.console, context, ClearDialogMode::STOP_PROMPT, 60, {CallbackEnum::PROMPT_DIALOG}); //mash past other dialog @@ -223,7 +223,7 @@ void checkpoint_84(SingleSwitchProgramEnvironment& env, ProControllerContext& co handle_when_stationary_in_overworld(env.program_info(), env.console, context, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 240ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 30); }, [&](const ProgramInfo& info, VideoStream& stream, ProControllerContext& context){ pbf_move_left_joystick(context, 0, 0, 300, 50); // move left diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_33.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_33.cpp index 32a1337e8..4b68611f9 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_33.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_33.cpp @@ -119,7 +119,7 @@ void checkpoint_85(SingleSwitchProgramEnvironment& env, ProControllerContext& co move_cursor_towards_flypoint_and_go_there(env.program_info(), env.console, context, {ZoomChange::KEEP_ZOOM, 255, 50, 2560ms}, FlyPoint::FAST_TRAVEL); realign_player(env.program_info(), env.console, context, PlayerRealignMode::REALIGN_NEW_MARKER, 128, 0, 80); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::PROMPT_DIALOG, CallbackEnum::BATTLE, CallbackEnum:: DIALOG_ARROW}); @@ -333,7 +333,7 @@ void checkpoint_88(SingleSwitchProgramEnvironment& env, ProControllerContext& co pbf_move_left_joystick(context, 128, 0, 1600ms, 400ms); // straight pbf_move_left_joystick(context, 255, 128, 400ms, 400ms); // right - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE, CallbackEnum::DIALOG_ARROW}); @@ -364,7 +364,7 @@ void checkpoint_88(SingleSwitchProgramEnvironment& env, ProControllerContext& co auto_heal_from_menu_or_overworld(env.program_info(), env.console, context, 0, true); // engage next battle - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE, CallbackEnum::DIALOG_ARROW, CallbackEnum::PROMPT_DIALOG}); env.console.log("Battle Elite Four 2."); // select move 2, which should be a fire move. to battle the steel trainer @@ -385,7 +385,7 @@ void checkpoint_88(SingleSwitchProgramEnvironment& env, ProControllerContext& co auto_heal_from_menu_or_overworld(env.program_info(), env.console, context, 0, true); // engage next battle - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE, CallbackEnum::DIALOG_ARROW, CallbackEnum::PROMPT_DIALOG}); env.console.log("Battle Elite Four 3."); @@ -395,7 +395,7 @@ void checkpoint_88(SingleSwitchProgramEnvironment& env, ProControllerContext& co mash_button_till_overworld(env.console, context, BUTTON_A); // engage next battle - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE, CallbackEnum::DIALOG_ARROW, CallbackEnum::PROMPT_DIALOG}); env.console.log("Battle Elite Four 4."); @@ -410,7 +410,7 @@ void checkpoint_88(SingleSwitchProgramEnvironment& env, ProControllerContext& co void checkpoint_89(SingleSwitchProgramEnvironment& env, ProControllerContext& context, EventNotificationOption& notif_status_update, AutoStoryStats& stats){ checkpoint_reattempt_loop(env, context, notif_status_update, stats, [&](size_t attempt_number){ - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::BATTLE, CallbackEnum::DIALOG_ARROW, CallbackEnum::PROMPT_DIALOG}); env.console.log("Battle Geeta."); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_34.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_34.cpp index 57f556901..6d63dda4a 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_34.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_34.cpp @@ -166,7 +166,7 @@ void checkpoint_91(SingleSwitchProgramEnvironment& env, ProControllerContext& co wait_for_overworld(env.program_info(), env.console, context); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30); mash_button_till_overworld(env.console, context, BUTTON_A); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_35.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_35.cpp index 92ca92690..e1985f5f8 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_35.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_35.cpp @@ -222,13 +222,7 @@ void checkpoint_93(SingleSwitchProgramEnvironment& env, ProControllerContext& co mash_button_till_overworld(env.console, context, BUTTON_A); // clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 120, {CallbackEnum::OVERWORLD, CallbackEnum::BLACK_DIALOG_BOX, CallbackEnum::PROMPT_DIALOG}); - walk_forward_until_dialog( - env.program_info(), - env.console, - context, - NavigationMovementMode::DIRECTIONAL_ONLY, - 30000ms - ); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30); mash_button_till_overworld(env.console, context, BUTTON_A); // prompt, black dialog. random A press }); @@ -640,23 +634,11 @@ void checkpoint_95(SingleSwitchProgramEnvironment& env, ProControllerContext& co // enter Station 1 - walk_forward_until_dialog( - env.program_info(), - env.console, - context, - NavigationMovementMode::DIRECTIONAL_ONLY, - 20000ms - ); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20); mash_button_till_overworld(env.console, context, BUTTON_A); // black dialog // disable Lock at Station 1 - walk_forward_until_dialog( - env.program_info(), - env.console, - context, - NavigationMovementMode::DIRECTIONAL_SPAM_A, - 20000ms - ); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20); mash_button_till_overworld(env.console, context, BUTTON_A); // prompt, black dialog, diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_36.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_36.cpp index 2682d3251..e97054f3a 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_36.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_36.cpp @@ -307,7 +307,7 @@ void checkpoint_97(SingleSwitchProgramEnvironment& env, ProControllerContext& co mash_button_till_overworld(env.console, context, BUTTON_A); // black dialog // disable Lock at Station 2 - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 120, {CallbackEnum::OVERWORLD, CallbackEnum::BLACK_DIALOG_BOX, CallbackEnum::PROMPT_DIALOG, CallbackEnum::WHITE_A_BUTTON}); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_37.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_37.cpp index e9c29b055..c8472b7dc 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_37.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_37.cpp @@ -81,14 +81,7 @@ void checkpoint_98(SingleSwitchProgramEnvironment& env, ProControllerContext& co YOLOv5Detector yolo_detector(RESOURCE_PATH() + "PokemonSV/YOLO/A0-station-3.onnx"); pbf_move_left_joystick(context, 128, 255, 200, 100); - walk_forward_until_dialog( - env.program_info(), - env.console, - context, - NavigationMovementMode::DIRECTIONAL_ONLY, - 10000ms, - 255, 128 - ); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 10, 255, 128); clear_dialog(env.console, context, ClearDialogMode::STOP_PROMPT, 60, {CallbackEnum::PROMPT_DIALOG}); pbf_press_dpad(context, DPAD_DOWN, 13, 20); @@ -354,13 +347,7 @@ void checkpoint_99(SingleSwitchProgramEnvironment& env, ProControllerContext& co mash_button_till_overworld(env.console, context, BUTTON_A); // black dialog // disable Lock at Station 3 - walk_forward_until_dialog( - env.program_info(), - env.console, - context, - NavigationMovementMode::DIRECTIONAL_SPAM_A, - 20000ms - ); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20); mash_button_till_overworld(env.console, context, BUTTON_A); // black dialog, prompt diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_38.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_38.cpp index 1c3d9376f..486e8bde6 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_38.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_38.cpp @@ -559,7 +559,7 @@ void checkpoint_101(SingleSwitchProgramEnvironment& env, ProControllerContext& c clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 120, {CallbackEnum::OVERWORLD, CallbackEnum::BLACK_DIALOG_BOX}); pbf_move_left_joystick(context, 128, 0, 100, 0); // disable Lock at Station 4 - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 20); mash_button_till_overworld(env.console, context, BUTTON_A); // black dialog, prompt diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_39.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_39.cpp index 259f2e8de..57ad16c81 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_39.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_39.cpp @@ -82,7 +82,7 @@ void checkpoint_102(SingleSwitchProgramEnvironment& env, ProControllerContext& c YOLOv5Detector yolo_detector(RESOURCE_PATH() + "PokemonSV/YOLO/A0-lab.onnx"); pbf_move_left_joystick(context, 128, 255, 200, 100); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 10000ms, 255, 128); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 10, 255, 128); clear_dialog(env.console, context, ClearDialogMode::STOP_PROMPT, 60, {CallbackEnum::PROMPT_DIALOG}); pbf_press_dpad(context, DPAD_DOWN, 13, 20); pbf_press_dpad(context, DPAD_DOWN, 13, 20); @@ -93,7 +93,7 @@ void checkpoint_102(SingleSwitchProgramEnvironment& env, ProControllerContext& c // heal at the bed pbf_move_left_joystick(context, 128, 0, 2400ms, 800ms); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms, 255, 128); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10, 255, 128); clear_dialog(env.console, context, ClearDialogMode::STOP_OVERWORLD, 60, {CallbackEnum::PROMPT_DIALOG, CallbackEnum::OVERWORLD}); // leave Station 2 @@ -183,7 +183,7 @@ void checkpoint_102(SingleSwitchProgramEnvironment& env, ProControllerContext& c ); // walked off cliff. now move backwards - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms, 128, 255); // move backwards until dialog detected + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60, 128, 255); // move backwards until dialog detected mash_button_till_overworld(env.console, context, BUTTON_A); @@ -294,7 +294,7 @@ void checkpoint_103(SingleSwitchProgramEnvironment& env, ProControllerContext& c pbf_move_left_joystick(context, 128, 0, 300, 50); pbf_move_left_joystick(context, 255, 128, 1600ms, 400ms); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 10000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 10); mash_button_till_overworld(env.console, context, BUTTON_A); }, false); diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_40.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_40.cpp index e4e2bc287..d0c11acd7 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_40.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_40.cpp @@ -83,7 +83,7 @@ void checkpoint_104(SingleSwitchProgramEnvironment& env, ProControllerContext& c pbf_press_button(context, BUTTON_L, 240ms, 80ms); pbf_move_left_joystick(context, 128, 0, 3200ms, 400ms); pbf_move_left_joystick(context, {-1, 0}, 1040ms, 400ms); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10); // now in elevator mash_button_till_overworld(env.console, context, BUTTON_A); @@ -91,12 +91,12 @@ void checkpoint_104(SingleSwitchProgramEnvironment& env, ProControllerContext& c pbf_move_left_joystick(context, 255, 128, 70, 50); // talk to the AI professor - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10); mash_button_till_overworld(env.console, context, BUTTON_A); // put the book in the machine pbf_press_button(context, BUTTON_L, 30, 10); - walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10000ms); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_SPAM_A, 10); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 120, {CallbackEnum::BATTLE, CallbackEnum::PROMPT_DIALOG, CallbackEnum::DIALOG_ARROW}); diff --git a/SerialPrograms/Source/PokemonSV/Programs/PokemonSV_WorldNavigation.cpp b/SerialPrograms/Source/PokemonSV/Programs/PokemonSV_WorldNavigation.cpp index bd41a2495..84a8f0efd 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/PokemonSV_WorldNavigation.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/PokemonSV_WorldNavigation.cpp @@ -655,7 +655,7 @@ void walk_forward_until_dialog( VideoStream& stream, ProControllerContext& context, NavigationMovementMode movement_mode, - Milliseconds timeout, + uint16_t seconds_timeout, uint8_t x, uint8_t y ){ @@ -665,11 +665,11 @@ void walk_forward_until_dialog( int ret = run_until( stream, context, [&](ProControllerContext& context){ - ssf_press_left_joystick(context, x, y, 0ms, timeout); + ssf_press_left_joystick(context, x, y, 0, seconds_timeout * TICKS_PER_SECOND); if (movement_mode == NavigationMovementMode::DIRECTIONAL_ONLY){ - pbf_wait(context, timeout); + pbf_wait(context, seconds_timeout * TICKS_PER_SECOND); } else if (movement_mode == NavigationMovementMode::DIRECTIONAL_SPAM_A){ - pbf_mash_button(context, BUTTON_A, timeout); + pbf_mash_button(context, BUTTON_A, seconds_timeout * TICKS_PER_SECOND); // for (size_t j = 0; j < seconds_timeout; j++){ // pbf_press_button(context, BUTTON_A, 160ms, 840ms); // } diff --git a/SerialPrograms/Source/PokemonSV/Programs/PokemonSV_WorldNavigation.h b/SerialPrograms/Source/PokemonSV/Programs/PokemonSV_WorldNavigation.h index 6a37237e1..37492e953 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/PokemonSV_WorldNavigation.h +++ b/SerialPrograms/Source/PokemonSV/Programs/PokemonSV_WorldNavigation.h @@ -138,7 +138,7 @@ void walk_forward_until_dialog( VideoStream& stream, ProControllerContext& context, NavigationMovementMode movement_mode, - Milliseconds timeout = Milliseconds(80), + uint16_t seconds_timeout = 10, uint8_t x = 128, uint8_t y = 0 ); From c103488899c8c84de59623fb0e97ce10529d40b9 Mon Sep 17 00:00:00 2001 From: Alexander Yee Date: Sun, 21 Dec 2025 23:24:26 -0800 Subject: [PATCH 3/3] minor --- .../Programs/AutoStory/PokemonSV_AutoStory_Segment_08.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_08.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_08.cpp index 8b26e2b60..dd6efc6d0 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_08.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_08.cpp @@ -151,7 +151,7 @@ void checkpoint_14( // realign going straight realign_player(env.program_info(), env.console, context, PlayerRealignMode::REALIGN_NEW_MARKER, 128, 0, 100); // walk forward until hit dialog at top of stairs - walk_forward_until_dialog( env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60); // clear dialog until battle. with prompt, battle env.console.log("clear_dialog: Talk with Team Star at the top of the stairs. Stop when detect battle."); clear_dialog(env.console, context, ClearDialogMode::STOP_BATTLE, 60, {CallbackEnum::PROMPT_DIALOG, CallbackEnum::BATTLE, CallbackEnum::DIALOG_ARROW});