|
|
static DEFINE_TACTIC_UPDATE_STRUCT_WITH_CONTROL_AND_COMMON_PARAMS constexpr double | MIN_PASS_SPEED = 0.5 |
| |
|
static constexpr Angle | MAX_PASS_ANGLE_DIFFERENCE = Angle::fromDegrees(30) |
| |
|
static constexpr Angle | MIN_DEFLECTION_ANGLE = Angle::fromDegrees(30) |
| |
|
| static bool | ballNearbyWithoutThreat (const WorldPtr &world_ptr, const Robot &robot, const TbotsProto::BallStealMode &ball_steal_mode, const TbotsProto::DefenderStealConfig &defender_steal_config) |
| |
| static void | prepareGetPossession (const TacticUpdate &tactic_update, boost::sml::back::process< DribbleFSM::Update > processEvent) |
| |
◆ PassDefenderFSM()
Constructor for PassDefenderFSM struct
- Parameters
-
| ai_config | The ai config required |
◆ ballDeflected()
| bool ballDeflected |
( |
const Update & |
event | ) |
|
Guard that checks if the ball is deviating more than MIN_DEFLECTION_ANGLE when the ball has been kicked and a pass is in progress. Ball could be deflected due to another robot intercepting the pass, or the pass defender could have chipped the ball away themselves.
- Parameters
-
| event | PassDefenderFSM::Update event |
- Returns
- true if ball deflected
◆ ballNearbyWithoutThreat()
| bool ballNearbyWithoutThreat |
( |
const Update & |
event | ) |
|
Guard that determines whether it is appropriate to steal the ball
- Parameters
-
| event | PassDefenderFSM::Update event |
- Returns
- true if stealing is enabled and the ball is nearby, unguarded by the enemy, and within a max get possession threshold
◆ blockPass()
| void blockPass |
( |
const Update & |
event | ) |
|
Action to move to the specified location to block a potential pass
- Parameters
-
| event | PassDefenderFSM::Update event |
◆ interceptBall()
| void interceptBall |
( |
const Update & |
event | ) |
|
Action to intercept an active pass and chip the ball away, adjusting the defender's position to be directly in front of the ball's trajectory for better interception
- Parameters
-
| event | PassDefenderFSM::Update event |
◆ passStarted()
| bool passStarted |
( |
const Update & |
event | ) |
|
Guard that checks if the ball has been kicked
- Parameters
-
| event | PassDefenderFSM::Update event |
- Returns
- if the ball has been kicked
◆ prepareGetPossession()
| void prepareGetPossession |
( |
const Update & |
event, |
|
|
boost::sml::back::process< DribbleFSM::Update > |
processEvent |
|
) |
| |
This is the Action that prepares for getting possession of the ball
- Parameters
-
| event | PassDefenderFSM::Update event |
| processEvent | processes the DribbleFSM::Update |
The documentation for this struct was generated from the following files:
- src/software/ai/hl/stp/tactic/pass_defender/pass_defender_fsm.h
- src/software/ai/hl/stp/tactic/pass_defender/pass_defender_fsm.cpp