@@ -50,6 +50,14 @@ protected void collectInputs() {}
50
50
protected RobotState getNexState (RobotState currentState ) {
51
51
// state transition
52
52
switch (currentState ) {
53
+ case SPEAKER_WAITING ,
54
+ AMP_WAITING ,
55
+ FEEDING_WAITING ,
56
+ PASS_WAITING ,
57
+ IDLE_NO_GP ,
58
+ IDLE_WITH_GP ,
59
+ CLIMBING_1_LINEUP ,
60
+ CLIMBING_2_HANGING -> {}
53
61
case SPEAKER_SCORING -> {
54
62
if (!queuer .hasNote ()) {
55
63
setStateFromRequest (RobotState .IDLE_NO_GP );
@@ -102,49 +110,34 @@ protected RobotState getNexState(RobotState currentState) {
102
110
setStateFromRequest (RobotState .IDLE_NO_GP );
103
111
}
104
112
}
105
- case CLIMBING_1_LINEUP -> {
106
- if (arm .atGoal ()) {
107
- setStateFromRequest (RobotState .CLIMBING_2_HANGING );
108
- }
109
- }
110
- case CLIMBING_2_HANGING -> {}
111
- case IDLE_NO_GP -> {
112
- if (queuer .hasNote () || intake .hasNote ()) {
113
- setStateFromRequest (RobotState .IDLE_WITH_GP );
114
- }
115
- }
116
- case IDLE_WITH_GP -> {
117
- if (!queuer .hasNote () && !intake .hasNote ()) {
118
- setStateFromRequest (RobotState .IDLE_NO_GP );
119
- }
120
- }
121
113
}
114
+
122
115
return currentState ;
123
116
}
124
117
125
118
@ Override
126
119
protected void afterTransition (RobotState newState ) {
127
120
// on state change
128
121
switch (newState ) {
129
- case SPEAKER_PREPARE_TO_SCORE , SPEAKER_SCORING -> {
122
+ case SPEAKER_PREPARE_TO_SCORE , SPEAKER_SCORING , SPEAKER_WAITING -> {
130
123
arm .setState (ArmState .SPEAKER_SHOT );
131
124
shooter .setState (ShooterState .SPEAKER_SHOT );
132
125
intake .setState (IntakeState .IDLE );
133
126
queuer .seState (QueuerState .IDLE_WITH_GP );
134
127
}
135
- case AMP_PREPARE_TO_SCORE , AMP_SCORING -> {
128
+ case AMP_PREPARE_TO_SCORE , AMP_SCORING , AMP_WAITING -> {
136
129
arm .setState (ArmState .AMP );
137
130
shooter .setState (ShooterState .AMP );
138
131
intake .setState (IntakeState .IDLE );
139
132
queuer .seState (QueuerState .IDLE_WITH_GP );
140
133
}
141
- case FEEDING_PREPARE_TO_SHOOT , FEEDING_SHOOTING -> {
134
+ case FEEDING_PREPARE_TO_SHOOT , FEEDING_SHOOTING , FEEDING_WAITING -> {
142
135
arm .setState (ArmState .FEEDING );
143
136
shooter .setState (ShooterState .FEEDING );
144
137
intake .setState (IntakeState .IDLE );
145
138
queuer .seState (QueuerState .IDLE_WITH_GP );
146
139
}
147
- case PASS_PREPARE_TO_SHOOT , PASS_SHOOTING -> {
140
+ case PASS_PREPARE_TO_SHOOT , PASS_SHOOTING , PASS_WAITING -> {
148
141
arm .setState (ArmState .PASS );
149
142
shooter .setState (ShooterState .PASS );
150
143
intake .setState (IntakeState .IDLE );
@@ -201,11 +194,11 @@ public void robotPeriodic() {
201
194
202
195
// continous sate action
203
196
switch (getState ()) {
204
- case SPEAKER_PREPARE_TO_SCORE , SPEAKER_SCORING -> {
197
+ case SPEAKER_PREPARE_TO_SCORE , SPEAKER_SCORING , SPEAKER_WAITING -> {
205
198
shooter .setDistanceToSpeaker (distanceToSpeaker );
206
199
arm .setDistanceToSpeaker (distanceToSpeaker );
207
200
}
208
- case FEEDING_PREPARE_TO_SHOOT , FEEDING_SHOOTING -> {
201
+ case FEEDING_PREPARE_TO_SHOOT , FEEDING_SHOOTING , FEEDING_WAITING -> {
209
202
shooter .setDistanceToFeedSpot (distanceToFeedSpot );
210
203
arm .setDistanceToFeedSpot (distanceToFeedSpot );
211
204
}
@@ -220,7 +213,9 @@ public void robotPeriodic() {
220
213
IDLE_NO_GP ,
221
214
IDLE_WITH_GP ,
222
215
CLIMBING_1_LINEUP ,
223
- CLIMBING_2_HANGING -> {}
216
+ CLIMBING_2_HANGING ,
217
+ PASS_WAITING ,
218
+ AMP_WAITING -> {}
224
219
}
225
220
}
226
221
}
0 commit comments