I have setup the limit switch program with the suggestions but I am attempting to setup reverse for the victors. Also I am trying to setup the same if statement layout for my relays does this look okay?
Code:
public class Robot extends SampleRobot {
RobotDrive robot;
Joystick stick;
Joystick xbox;
Relay spike1;
Relay spike2;
Victor victor1;
Victor victor2;
DigitalInput limit;
boolean limitPressed = false;
public Robot() {
robot = new RobotDrive(0, 1);
stick = new Joystick(1);
xbox = new Joystick(0);
spike1 = new Relay(0);
spike2 = new Relay(1);
limit = new DigitalInput(4);
victor1 = new Victor(4);
victor2 = new Victor(5);
}
public void operatorControl() {
while (isOperatorControl() && isEnabled()) {
stick.getThrottle();
robot.arcadeDrive(stick.getY(), stick.getX());
limitPressed = limit.get(); //Do I want this out side of my while operator control loop?
System.out.println("limitPressed=" + limitPressed); //Read the RoboRIO log for some values before you go all out on your motors.
if(limitPressed) {
victor1.set(0);
victor2.set(0);
} else if (xbox.getRawButton(4)) {
victor1.set(1);
victor2.set(1);
} else {
victor1.set(0);
victor1.set(0);
}
if(xbox.getRawButton(1)) {
victor1.set(-1);
victor1.set(-1);
} else {
victor1.set(0);
victor2.set(0);
}
if(xbox.getRawButton(3)) {
spike1.set(Relay.Value.kForward);
spike2.set(Relay.Value.kForward);
} else {
spike1.set(Relay.Value.kOff);
spike2.set(Relay.Value.kOff);
}
if(xbox.getRawButton(2)) {
spike1.set(Relay.Value.kReverse);
spike2.set(Relay.Value.kReverse);
} else {
spike1.set(Relay.Value.kOff);
spike2.set(Relay.Value.kOff);
}
}
}