Skip to content

Commit 52c110f

Browse files
author
Gin
committed
visual feedback to switch Home summary screen
1 parent e105a80 commit 52c110f

File tree

3 files changed

+20
-7
lines changed

3 files changed

+20
-7
lines changed

SerialPrograms/Scripts/check_detector_regions.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,13 @@
3232

3333
raw_image = image.copy()
3434

35+
# ==================================================================
36+
# Home summary screen finish loading detector
37+
add_infer_box_to_image(raw_image, 0.388, 0.238, 0.109, 0.062, image)
38+
3539
# ==================================================================
3640
# LZA Hyperspace Timer detection
37-
add_infer_box_to_image(raw_image, 0.044, 0.111, 0.060, 0.067, image)
41+
# add_infer_box_to_image(raw_image, 0.044, 0.111, 0.060, 0.067, image)
3842

3943

4044
# ==================================================================

SerialPrograms/Source/CommonTools/VisualDetectors/FrozenImageDetector.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
*
33
* From: https://github.com/PokemonAutomation/
44
*
5-
* Detect if the entire screen is frozen.
5+
* Detect if the entire screen or a part of it is frozen.
66
*/
77

88
#ifndef PokemonAutomation_CommonTools_FrozenImageDetector_H

SerialPrograms/Source/PokemonHome/Programs/PokemonHome_BoxSorting.cpp

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,8 @@ language
3939
#include "CommonFramework/Tools/ErrorDumper.h"
4040
#include "CommonFramework/VideoPipeline/VideoFeed.h"
4141
#include "CommonFramework/ProgramStats/StatsTracking.h"
42+
#include "CommonTools/Async/InferenceRoutines.h"
43+
#include "CommonTools/VisualDetectors/FrozenImageDetector.h"
4244
#include "CommonTools/OCR/OCR_NumberReader.h"
4345
#include "CommonTools/StartupChecks/StartProgramChecks.h"
4446
#include "NintendoSwitch/Commands/NintendoSwitch_Commands_PushButtons.h"
@@ -674,11 +676,21 @@ void BoxSorting::program(SingleSwitchProgramEnvironment& env, ProControllerConte
674676
continue;
675677
}
676678

679+
if (row > 0 || column > 0){
680+
// Press button R to go to next summary screen
681+
pbf_press_button(context, BUTTON_R, 10, 40);
682+
context.wait_for_all_requests();
683+
}
684+
// Wait for the summary screen transition to end
685+
FrozenImageDetector frozen_image_detector(COLOR_GREEN, {0.388, 0.238, 0.109, 0.062}, Milliseconds(80), 20);
686+
frozen_image_detector.make_overlays(box_render);
687+
wait_until(env.console, context, 5s, {frozen_image_detector});
688+
677689
auto& cur_pokemon_info = boxes_data[global_idx];
678690
screen = env.console.video().snapshot();
679691

680692
const int national_dex_number = OCR::read_number_waterfill(env.console, extract_box_reference(screen, national_dex_number_box), 0xff808080, 0xffffffff);
681-
if (national_dex_number <= 0 || national_dex_number > NATIONAL_DEX_SLUGS().size()) {
693+
if (national_dex_number <= 0 || national_dex_number > static_cast<int>(NATIONAL_DEX_SLUGS().size())) {
682694
OperationFailedException::fire(
683695
ErrorReport::SEND_ERROR_REPORT,
684696
"BoxSorting Check Summary: Unable to read a correct dex number, found: " + std::to_string(national_dex_number),
@@ -716,17 +728,14 @@ void BoxSorting::program(SingleSwitchProgramEnvironment& env, ProControllerConte
716728
}
717729
cur_pokemon_info->ot_id = ot_id;
718730

719-
env.add_overlay_log("Read " + create_overlay_info(*cur_pokemon_info));
731+
env.add_overlay_log(create_overlay_info(*cur_pokemon_info));
720732

721733
// NOTE edit when adding new struct members (detections go here likely)
722734

723735
// level_box
724736
// ot_box
725737
// nature_box
726738
// ability_box
727-
728-
pbf_press_button(context, BUTTON_R, 10, VIDEO_DELAY+15); // Press button R to go to next summary screen
729-
context.wait_for_all_requests();
730739
}
731740
}
732741

0 commit comments

Comments
 (0)