Remove buttons pressed to change to command based, change getState() to actually...
[3501/stronghold-2016] / src / org / usfirst / frc / team3501 / robot / subsystems / Shooter.java
CommitLineData
416c4380
YN
1package org.usfirst.frc.team3501.robot.subsystems;\r
2\r
40348cab 3import org.usfirst.frc.team3501.robot.Constants;\r
e8986b9b 4import org.usfirst.frc.team3501.robot.Constants.Shooter.State;\r
40348cab
E
5\r
6import edu.wpi.first.wpilibj.CANTalon;\r
416c4380
YN
7import edu.wpi.first.wpilibj.command.Subsystem;\r
8\r
5585bd31 9public class Shooter extends Subsystem {\r
e8986b9b 10 private CANTalon shooter;\r
5585bd31 11\r
40348cab 12 public Shooter() {\r
e9234163 13 shooter = new CANTalon(Constants.Shooter.PORT);\r
40348cab 14 }\r
416c4380 15\r
cb3389eb 16 public double getCurrentSpeed() {\r
9e247b05 17 return shooter.get();\r
cb3389eb
E
18 }\r
19\r
20 public void setSpeed(double speed) {\r
9e247b05 21 shooter.set(speed);\r
cb3389eb
E
22 }\r
23\r
1f0a8a1f 24 public void stop() {\r
e8986b9b
E
25 this.setSpeed(0.0);\r
26 }\r
27\r
1f0a8a1f
KZ
28 public State getState() {\r
29 return (this.getCurrentSpeed() == 0) ? State.RUNNING : State.STOPPED;\r
e8986b9b
E
30 }\r
31\r
9e247b05
E
32 // Use negative # for decrement. Positive for increment.\r
33 public void changeSpeed(double change) {\r
b87f9700 34 if (getCurrentSpeed() + change >= 1.0)\r
9e247b05 35 shooter.set(1.0);\r
b87f9700 36 else if (getCurrentSpeed() + change <= -1.0)\r
9e247b05 37 shooter.set(-1.0);\r
8e5f83d9 38 else {\r
9e247b05 39 double newSpeed = getCurrentSpeed() + change;\r
e9234163 40 setSpeed(newSpeed);\r
cb3389eb 41 }\r
cb3389eb
E
42 }\r
43\r
40348cab
E
44 @Override\r
45 protected void initDefaultCommand() {\r
40348cab 46 }\r
416c4380 47}\r