@@ -0,0 +1,1471 @@
+package org.robockets.stronghold.robot.highgoalshooter;%0A%0Aimport org.robockets.stronghold.robot.Robot;%0Aimport edu.wpi.first.wpilibj.command.Command;%0Aimport edu.wpi.first.wpilibj.networktables.NetworkTable;%0A%0A/**%0A * Aim the hood so that the camera aligns with the goal with fancy equations.%0A */%0Apublic class AimShooter extends Command %7B%0A%0A%09NetworkTable table;%0A%09double gravAcc = 32;%0A%09double floorToTargetHeight = 8;%0A%09double robotShooterToTargetHeight = 16;%0A%09double wheelDiameter = 6;%0A%09%0A    public AimShooter() %7B%0A    %09requires(Robot.shooter);%0A    %7D%0A%0A    protected void initialize() %7B%0A    %09table = NetworkTable.getTable(%22Vision/report%22); //TODO: Name this stuff.%0A    %7D%0A%0A    protected void execute() %7B%0A    %09//TODO: Horizontally align.%0A    %09double distanceToTarget = table.getNumber(%22distance%22, 10);%0A    %09%0A    %09double angle = Math.atan(2*(floorToTargetHeight - (robotShooterToTargetHeight/12)/distanceToTarget) * 180/Math.PI);%0A    %09double velocity = Math.sqrt((4*Math.pow(floorToTargetHeight-robotShooterToTargetHeight/12,2)+Math.pow(distanceToTarget, 2))*gravAcc/(2*(floorToTargetHeight-robotShooterToTargetHeight/12)));%0A    %09double shaftRPM = velocity * 60/(Math.PI * wheelDiameter/12);%0A    %09%0A    %09Robot.shooter.setHoodAngle(angle);%0A    %09Robot.shooter.spinShootingWheel(shaftRPM);%0A    %09%0A    %09Robot.shooter.spinTurnTableAssisted();%0A    %7D%0A%0A    protected boolean isFinished() %7B%0A    %09return false;%0A    %7D%0A%0A    protected void end() %7B%0A    %7D%0A%0A    protected void interrupted() %7B%0A    %7D%0A%7D%0A

Add stubby aim shooter command.