From: Logan Howard Date: Thu, 23 Apr 2015 05:49:39 +0000 (-0500) Subject: make so does not crash X-Git-Url: http://challenge-bot.com/repos/?p=3501%2F3501-spark-go;a=commitdiff_plain;h=299be0310c4e309e9877df8eadbcc2073f943401 make so does not crash --- diff --git a/src/org/usfirst/frc/team3501/bases/Command.java b/src/org/usfirst/frc/team3501/bases/Command.java index b25eb39..e543c2c 100644 --- a/src/org/usfirst/frc/team3501/bases/Command.java +++ b/src/org/usfirst/frc/team3501/bases/Command.java @@ -1,13 +1,40 @@ package org.usfirst.frc.team3501.bases; +import org.usfirst.frc.team3501.robot.OI; +import org.usfirst.frc.team3501.robot.Robot; +import org.usfirst.frc.team3501.robot.subsystems.Arm; +import org.usfirst.frc.team3501.robot.subsystems.Claw; +import org.usfirst.frc.team3501.robot.subsystems.Drivetrain; +import org.usfirst.frc.team3501.robot.subsystems.Pneumatics; +import org.usfirst.frc.team3501.util.AutonData; + import edu.wpi.first.wpilibj.command.Scheduler; public abstract class Command - extends edu.wpi.first.wpilibj.command.Command - implements CommandBase { + extends edu.wpi.first.wpilibj.command.Command { + + protected static OI oi; + + protected static AutonData autonData; + + protected static Drivetrain drivetrain; + protected static Arm arm; + protected static Claw claw; + + protected static Pneumatics pneumatics; public Command(String commandName) { super(commandName); + + oi = Robot.oi; + + autonData = Robot.autonData; + + drivetrain = Robot.drivetrain; + arm = Robot.arm; + claw = Robot.claw; + + pneumatics = Robot.pneumatics; } protected void schedule(Command c) { diff --git a/src/org/usfirst/frc/team3501/bases/CommandBase.java b/src/org/usfirst/frc/team3501/bases/CommandBase.java deleted file mode 100644 index 770f48d..0000000 --- a/src/org/usfirst/frc/team3501/bases/CommandBase.java +++ /dev/null @@ -1,19 +0,0 @@ -package org.usfirst.frc.team3501.bases; - -import org.usfirst.frc.team3501.robot.OI; -import org.usfirst.frc.team3501.robot.Robot; -import org.usfirst.frc.team3501.robot.subsystems.*; -import org.usfirst.frc.team3501.util.AutonData; - -public interface CommandBase { - - final static OI oi = Robot.oi; - - final static AutonData autonData = Robot.autonData; - - final static Drivetrain drivetrain = Robot.drivetrain; - final static Arm arm = Robot.arm; - final static Claw claw = Robot.claw; - - final static Pneumatics pneumatics = Robot.pneumatics; -} diff --git a/src/org/usfirst/frc/team3501/bases/CommandGroup.java b/src/org/usfirst/frc/team3501/bases/CommandGroup.java index b1d5c31..006f676 100644 --- a/src/org/usfirst/frc/team3501/bases/CommandGroup.java +++ b/src/org/usfirst/frc/team3501/bases/CommandGroup.java @@ -1,10 +1,37 @@ package org.usfirst.frc.team3501.bases; +import org.usfirst.frc.team3501.robot.OI; +import org.usfirst.frc.team3501.robot.Robot; +import org.usfirst.frc.team3501.robot.subsystems.Arm; +import org.usfirst.frc.team3501.robot.subsystems.Claw; +import org.usfirst.frc.team3501.robot.subsystems.Drivetrain; +import org.usfirst.frc.team3501.robot.subsystems.Pneumatics; +import org.usfirst.frc.team3501.util.AutonData; + public abstract class CommandGroup - extends edu.wpi.first.wpilibj.command.CommandGroup - implements CommandBase { + extends edu.wpi.first.wpilibj.command.CommandGroup { + + protected static OI oi; + + protected static AutonData autonData; + + protected static Drivetrain drivetrain; + protected static Arm arm; + protected static Claw claw; + + protected static Pneumatics pneumatics; public CommandGroup(String commandGroupName) { super(commandGroupName); + + oi = Robot.oi; + + autonData = Robot.autonData; + + drivetrain = Robot.drivetrain; + arm = Robot.arm; + claw = Robot.claw; + + pneumatics = Robot.pneumatics; } } diff --git a/src/org/usfirst/frc/team3501/robot/Joystick.java b/src/org/usfirst/frc/team3501/robot/Joystick.java index fab6792..7eac768 100644 --- a/src/org/usfirst/frc/team3501/robot/Joystick.java +++ b/src/org/usfirst/frc/team3501/robot/Joystick.java @@ -13,7 +13,9 @@ public class Joystick extends edu.wpi.first.wpilibj.Joystick { public Joystick(int port) { super(port); - IntStream.rangeClosed(1, 12).forEach((b) -> { + buttons = new HashMap(); + + IntStream.rangeClosed(1, getButtonCount()).forEach((b) -> { buttons.put(b, new JoystickButton(this, b)); }); } diff --git a/src/org/usfirst/frc/team3501/robot/Robot.java b/src/org/usfirst/frc/team3501/robot/Robot.java index c7ef783..84fd2f9 100644 --- a/src/org/usfirst/frc/team3501/robot/Robot.java +++ b/src/org/usfirst/frc/team3501/robot/Robot.java @@ -29,8 +29,6 @@ public class Robot extends IterativeRobot { private Command autonomousCommand; public void robotInit() { - oi = new OI(); - drivetrain = new Drivetrain(); arm = new Arm(); claw = new Claw(); @@ -39,6 +37,8 @@ public class Robot extends IterativeRobot { autonData = new AutonData(); + oi = new OI(); + chooseAuto(); } @@ -62,7 +62,8 @@ public class Robot extends IterativeRobot { public void teleopInit() { schedule(new TurnOnCompressor()); - autonomousCommand.cancel(); + if (autonomousCommand != null) + autonomousCommand.cancel(); } public void teleopPeriodic() { diff --git a/src/org/usfirst/frc/team3501/robot/commands/DriveWithJoysticks.java b/src/org/usfirst/frc/team3501/robot/commands/DriveWithJoysticks.java index 5e935c9..79d687d 100644 --- a/src/org/usfirst/frc/team3501/robot/commands/DriveWithJoysticks.java +++ b/src/org/usfirst/frc/team3501/robot/commands/DriveWithJoysticks.java @@ -6,6 +6,7 @@ public class DriveWithJoysticks extends Command { public DriveWithJoysticks() { super("DriveWithJoysticks"); + requires(drivetrain); }