From 277bff83f67fd03d1a24513258f4bd8e45b73dc2 Mon Sep 17 00:00:00 2001 From: Alexander Yee Date: Sun, 21 Dec 2025 23:11:58 -0800 Subject: [PATCH] Migrate walk_forward_until_dialog() to ticks. --- .../AutoStory/PokemonSV_AutoStory_Segment_01.cpp | 10 +++++----- .../AutoStory/PokemonSV_AutoStory_Segment_02.cpp | 2 +- .../AutoStory/PokemonSV_AutoStory_Segment_03.cpp | 2 +- .../AutoStory/PokemonSV_AutoStory_Segment_04.cpp | 6 +++--- .../AutoStory/PokemonSV_AutoStory_Segment_08.cpp | 6 +++--- .../AutoStory/PokemonSV_AutoStory_Segment_09.cpp | 4 ++-- .../AutoStory/PokemonSV_AutoStory_Segment_11.cpp | 12 ++++++------ .../AutoStory/PokemonSV_AutoStory_Segment_12.cpp | 2 +- .../AutoStory/PokemonSV_AutoStory_Segment_16.cpp | 2 +- .../AutoStory/PokemonSV_AutoStory_Segment_17.cpp | 6 +++--- .../AutoStory/PokemonSV_AutoStory_Segment_20.cpp | 8 ++++---- .../AutoStory/PokemonSV_AutoStory_Segment_22.cpp | 8 ++++---- .../AutoStory/PokemonSV_AutoStory_Segment_24.cpp | 4 ++-- .../AutoStory/PokemonSV_AutoStory_Segment_26.cpp | 4 ++-- .../AutoStory/PokemonSV_AutoStory_Segment_29.cpp | 8 ++++---- .../AutoStory/PokemonSV_AutoStory_Segment_30.cpp | 8 ++++---- .../AutoStory/PokemonSV_AutoStory_Segment_32.cpp | 12 ++++++------ .../AutoStory/PokemonSV_AutoStory_Segment_33.cpp | 12 ++++++------ .../AutoStory/PokemonSV_AutoStory_Segment_34.cpp | 2 +- .../AutoStory/PokemonSV_AutoStory_Segment_35.cpp | 6 +++--- .../AutoStory/PokemonSV_AutoStory_Segment_36.cpp | 2 +- .../AutoStory/PokemonSV_AutoStory_Segment_37.cpp | 4 ++-- .../AutoStory/PokemonSV_AutoStory_Segment_38.cpp | 2 +- .../AutoStory/PokemonSV_AutoStory_Segment_39.cpp | 8 ++++---- .../AutoStory/PokemonSV_AutoStory_Segment_40.cpp | 6 +++--- .../PokemonSV/Programs/PokemonSV_WorldNavigation.cpp | 8 ++++---- .../PokemonSV/Programs/PokemonSV_WorldNavigation.h | 2 +- 27 files changed, 78 insertions(+), 78 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 0c4ada37a..844c9bbed 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, 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, {0, -1}, 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, {-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, 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..c994f2062 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, 20000ms); 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 a80ab86c4..9b78f5490 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,7 @@ 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..66bab9174 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,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, 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 +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, 60, 128, 0); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 60000ms, 128, 0); } ); @@ -190,7 +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, 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..de9c2befb 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,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, 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 +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, 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 +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, 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 f605083be..71ae807ac 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_11.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_11.cpp index 2a167f21c..864f73ba5 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, 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, {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, 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 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 8a0d6d3e4..8e9eaf98c 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, 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_16.cpp b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_16.cpp index 0b4e95230..db2f1980a 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, 20); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 20000ms); 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 c7d05333d..fcafb014b 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, 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."); @@ -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, 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, 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); 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 50e550ee9..39a879341 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_20.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_20.cpp @@ -146,7 +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, 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, 800ms, 400ms); @@ -179,7 +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, 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, 2400ms, 800ms); @@ -190,7 +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, 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 +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, 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, 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 ef3d2ca19..587464f27 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, 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, 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, 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, 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, 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."); 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 4da3ace1f..5ebe53577 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_24.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_24.cpp @@ -160,7 +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, 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 +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, 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}); 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 66b7081d9..ce2db2963 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, 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, 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, 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}); }); 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 8d8aa4ed0..c05e0ab3a 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, 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, 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, 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, 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 076584abb..201906115 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_30.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_30.cpp @@ -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}); @@ -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); }); @@ -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 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 994865946..d8dfbea95 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_32.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_32.cpp @@ -142,9 +142,9 @@ 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, 30); + 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); }, [&](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, 30000ms); // 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, 30000ms); 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, 30000ms); }, [&](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 07b45b883..f828fdae0 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, 320}, 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}); @@ -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, 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 38ca24853..760fdcf58 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, 30); + walk_forward_until_dialog(env.program_info(), env.console, context, NavigationMovementMode::DIRECTIONAL_ONLY, 30000ms); 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 c94d8eb88..a78b8a8eb 100644 --- a/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_35.cpp +++ b/SerialPrograms/Source/PokemonSV/Programs/AutoStory/PokemonSV_AutoStory_Segment_35.cpp @@ -206,7 +206,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, 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 +618,11 @@ 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 e97054f3a..2682d3251 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 c8472b7dc..3e551632d 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,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, 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 +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, 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 486e8bde6..1c3d9376f 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 57ad16c81..259f2e8de 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, 2400ms, 800ms); - 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, 1600ms, 400ms); - 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 d0c11acd7..e4e2bc287 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, 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 a75329921..bee2bfc84 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, - uint16_t seconds_timeout, + Milliseconds 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, 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, 160ms, 840ms); // } diff --git a/SerialPrograms/Source/PokemonSV/Programs/PokemonSV_WorldNavigation.h b/SerialPrograms/Source/PokemonSV/Programs/PokemonSV_WorldNavigation.h index f3b644f1c..bd8c70903 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, - uint16_t seconds_timeout = 10, + Milliseconds timeout = Milliseconds(10000), uint8_t x = 128, uint8_t y = 0 );