Skip to content

Commit 4d550da

Browse files
committed
touch_date_from_home() for Switch 2
1 parent db6c330 commit 4d550da

File tree

1 file changed

+58
-68
lines changed

1 file changed

+58
-68
lines changed

SerialPrograms/Source/PokemonSwSh/Commands/PokemonSwSh_Commands_DateSpam.cpp

Lines changed: 58 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -19,71 +19,6 @@ namespace PokemonAutomation{
1919
namespace NintendoSwitch{
2020
namespace PokemonSwSh{
2121

22-
#if 0
23-
void neutral_date_skip(ProControllerContext& context){
24-
switch (context->performance_class()){
25-
case ControllerPerformanceClass::SerialPABotBase_Wired_125Hz:{
26-
ssf_press_button(context, BUTTON_A, 20, 10);
27-
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, 3);
28-
ssf_issue_scroll(context, SSF_SCROLL_UP, 0);
29-
ssf_press_button(context, BUTTON_A, 2);
30-
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, 3);
31-
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, 3);
32-
// ssf_press_button(context, BUTTON_A, 2);
33-
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, 3);
34-
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, 0);
35-
ssf_press_button(context, BUTTON_A, 20, 10);
36-
ssf_press_button(context, BUTTON_A, 20, 10);
37-
for (uint8_t c = 0; c < 6; c++){
38-
ssf_issue_scroll(context, SSF_SCROLL_LEFT, 3);
39-
}
40-
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, 3);
41-
ssf_issue_scroll(context, SSF_SCROLL_DOWN, 0);
42-
break;
43-
}
44-
case ControllerPerformanceClass::SerialPABotBase_Wireless_ESP32:{
45-
Milliseconds tv = context->timing_variation();
46-
Milliseconds unit = 24ms + tv;
47-
48-
ssf_press_button(context, BUTTON_A, 20, 10);
49-
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, unit);
50-
ssf_issue_scroll(context, SSF_SCROLL_UP, 0);
51-
ssf_press_button(context, BUTTON_A, unit);
52-
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, unit);
53-
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, unit);
54-
// ssf_press_button(context, BUTTON_A, unit);
55-
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, unit);
56-
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, unit);
57-
ssf_press_button(context, BUTTON_A, 20, 10);
58-
ssf_press_button(context, BUTTON_A, 20, 10);
59-
for (uint8_t c = 0; c < 6; c++){
60-
ssf_issue_scroll(context, SSF_SCROLL_LEFT, unit);
61-
}
62-
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, unit);
63-
ssf_issue_scroll(context, SSF_SCROLL_DOWN, 0);
64-
65-
break;
66-
}
67-
default:{
68-
ssf_press_button_ptv(context, BUTTON_A, 160ms, 80ms);
69-
ssf_issue_scroll_ptv(context, SSF_SCROLL_RIGHT);
70-
ssf_issue_scroll_ptv(context, SSF_SCROLL_UP);
71-
ssf_press_button_ptv(context, BUTTON_A);
72-
ssf_issue_scroll_ptv(context, SSF_SCROLL_RIGHT);
73-
ssf_issue_scroll_ptv(context, SSF_SCROLL_RIGHT);
74-
ssf_issue_scroll_ptv(context, SSF_SCROLL_RIGHT);
75-
ssf_issue_scroll_ptv(context, SSF_SCROLL_RIGHT);
76-
ssf_press_button_ptv(context, BUTTON_A, 160ms, 80ms);
77-
ssf_press_button_ptv(context, BUTTON_A, 160ms, 80ms);
78-
for (uint8_t c = 0; c < 6; c++){
79-
ssf_issue_scroll_ptv(context, SSF_SCROLL_LEFT);
80-
}
81-
ssf_issue_scroll_ptv(context, SSF_SCROLL_RIGHT);
82-
ssf_issue_scroll_ptv(context, SSF_SCROLL_DOWN);
83-
}
84-
}
85-
}
86-
#endif
8722

8823
void rollback_year_skip_forward(
8924
ConsoleHandle& console, ProControllerContext& context
@@ -145,12 +80,15 @@ void home_roll_date_enter_game_autorollback(
14580
}
14681
year++;
14782
}
148-
void touch_date_from_home(
83+
84+
85+
86+
87+
88+
void touch_date_from_home_switch1(
14989
ConsoleHandle& console, ProControllerContext& context,
15090
Milliseconds settings_to_home_delay
15191
){
152-
// Touch the date without changing it. This prevents unintentional rollovers.
153-
15492
home_to_date_time(console, context, true);
15593
ssf_press_button_ptv(context, BUTTON_A, 160ms, 80ms);
15694

@@ -171,6 +109,58 @@ void touch_date_from_home(
171109
ssf_issue_scroll_ptv(context, SSF_SCROLL_DOWN, 16ms);
172110
ssf_press_button(context, BUTTON_HOME, settings_to_home_delay, 80ms);
173111
}
112+
void touch_date_from_home_switch2(
113+
ConsoleHandle& console, ProControllerContext& context,
114+
Milliseconds settings_to_home_delay
115+
){
116+
home_to_date_time(console, context, true);
117+
118+
ssf_press_button(context, BUTTON_A, 240ms, 80ms);
119+
ssf_issue_scroll(context, SSF_SCROLL_UP, 24ms, 48ms, 24ms);
120+
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, 24ms, 48ms, 24ms);
121+
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, 24ms, 48ms, 24ms);
122+
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, 24ms, 48ms, 24ms);
123+
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, 24ms, 48ms, 24ms);
124+
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, 24ms, 48ms, 24ms);
125+
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, 24ms, 48ms, 24ms);
126+
ssf_press_button(context, BUTTON_A, 280ms, 80ms);
127+
128+
ssf_press_button(context, BUTTON_A, 240ms, 80ms);
129+
ssf_issue_scroll(context, SSF_SCROLL_DOWN, 24ms, 48ms, 24ms);
130+
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, 24ms, 48ms, 24ms);
131+
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, 24ms, 48ms, 24ms);
132+
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, 24ms, 48ms, 24ms);
133+
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, 24ms, 48ms, 24ms);
134+
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, 24ms, 48ms, 24ms);
135+
ssf_issue_scroll(context, SSF_SCROLL_RIGHT, 24ms, 48ms, 24ms);
136+
ssf_press_button(context, BUTTON_A, 280ms, 80ms);
137+
138+
ssf_press_button(context, BUTTON_HOME, settings_to_home_delay, 80ms);
139+
}
140+
void touch_date_from_home(
141+
ConsoleHandle& console, ProControllerContext& context,
142+
Milliseconds settings_to_home_delay
143+
){
144+
ConsoleType type = console.state().console_type();
145+
146+
if (type == ConsoleType::Switch1){
147+
touch_date_from_home_switch1(console, context, settings_to_home_delay);
148+
return;
149+
}
150+
151+
if (is_switch2(type)){
152+
touch_date_from_home_switch2(console, context, settings_to_home_delay);
153+
return;
154+
}
155+
156+
throw UserSetupError(
157+
console.logger(),
158+
"Please select a valid Switch console type."
159+
);
160+
}
161+
162+
163+
174164
void rollback_hours_from_home(
175165
ConsoleHandle& console, ProControllerContext& context,
176166
uint8_t hours,

0 commit comments

Comments
 (0)