Class CounterStrikeCommand

Inheritance Relationships

Base Type

Derived Type

Class Documentation

class CounterStrikeCommand : public fang::chassis::FieldDriftCommand

First person shooter motion for holonomic drive. Plain and simple.

This pairs well with a mouse-supported ChassisInputHandler.

If you face forward, a forward input on the remote will make the robot move forward. Every translation input is rotated to be relative to the turret head.

Subclassed by fang::chassis::ShurikenCommand

Public Types

using Config = FieldDriftCommand::Config

Public Functions

CounterStrikeCommand(HolonomicSubsystem &holonomicSubsystem, const turret::FieldGimbalSubsystem &gimbal, ChassisInputHandler &inputHandler, const Config &config)

This takes a chassis subsystem and the respective inputHandler

virtual ~CounterStrikeCommand() = default
virtual const char *getName() const override
virtual void execute() override

Protected Functions

physics::Velocity2D getFieldTranslation() const

Returns the fieldwise translation, translating the translation input relative to the turret where forward will make the robot move forwward wherever the turret is looking

RPM getFieldRotation() const

Translates the rotation input on the remote into a rotation where counterclockwise is positive

Protected Attributes

const turret::FieldGimbalSubsystem &gimbal_
const Config kConfig_

Protected Static Attributes

static constexpr const char *kName = {"Counter Strike Global!"}