Description of the task
KickFSM and ChipFSM have identical implementation with the minor difference of some naming and AutoChipOrKickMode. We should combine both into a single implementation.
Some ideas for how we can achieve this:
Depending on the results, consider updating the KickTactic and ChipTactic as well.
Note that the names of these FSMs may be changed once the on going new offense implementation is complete.
Acceptance criteria
Description of the task
KickFSMandChipFSMhave identical implementation with the minor difference of some naming andAutoChipOrKickMode. We should combine both into a single implementation.Some ideas for how we can achieve this:
AutoChipOrKickMode. This could be achieved usingunions (look intoAutoChipOrKickMode's implementation. This is more of a classic C approach), or a C++std::variant.Depending on the results, consider updating the
KickTacticandChipTacticas well.Note that the names of these FSMs may be changed once the on going new offense implementation is complete.
Acceptance criteria
kick_fsm_test.cppandchip_fsm_test.cpp