misc cleanup
[3501/3501-spark-go] / src / org / usfirst / frc / team3501 / robot / OI.java
1 package org.usfirst.frc.team3501.robot;
2
3 import java.util.Arrays;
4
5 import org.usfirst.frc.team3501.robot.commands.*;
6
7 public class OI {
8
9 private Joystick left, right;
10
11 public OI() {
12 left = new Joystick(RobotMap.LEFT_JOYSTICK_PORT);
13 right = new Joystick(RobotMap.RIGHT_JOYSTICK_PORT);
14
15 right.whenPressed(1, new CloseClaw());
16 right.whenReleased(1, new OpenClaw());
17 right.whenPressed(2, new ToggleClaw());
18
19 right.whenPressed(11, new TurnOffCompressor());
20 right.whenPressed(12, new TurnOffCompressor());
21 right.whenPressed(7, new TurnOnCompressor());
22 right.whenPressed(8, new TurnOnCompressor());
23
24 // potential bug point: this should "Just Work" because as soon as
25 // command stops running, left stick pos at 0 should take over...
26 // if that is not the case, arm will continue indefinitely.
27 left.whileHeld(7, new TensionLeftWinch(RobotMap.ARM_ADJUST_SPEED));
28 left.whileHeld(6, new TensionLeftWinch(-RobotMap.ARM_ADJUST_SPEED));
29 left.whileHeld(11, new TensionRightWinch(RobotMap.ARM_ADJUST_SPEED));
30 left.whileHeld(10, new TensionRightWinch(-RobotMap.ARM_ADJUST_SPEED));
31 }
32
33 public double getForwardL() {
34 return left.getY();
35 }
36
37 public double getForwardR() {
38 return right.getY();
39 }
40
41 public double getTwistR() {
42 return right.getTwist();
43 }
44
45 public boolean getRightPressed(int... buttons) {
46 return Arrays.stream(buttons).anyMatch(b -> right.get(b));
47 }
48 }