package traffic;
class TrafficLight implements Runnable {
int signal, prevSignal;
int pause, wait;
Thread MyTrafficLight;
TrafficLight(){
signal = 2;
wait = 5000;
}
public void run() {
signal=1;
while (true) {
if (signal == 1){
signal = 2;
pause = wait;
prevSignal = 1;
} else if (signal == 0) {
signal = 2;
prevSignal = 0;
pause = wait;
} else if ((signal == 2) && (prevSignal == 1)){
signal = 0;
pause = wait;
} else if ((signal == 2) && (prevSignal == 0)){
signal = 1;
pause = wait;
}
try {
Thread.sleep(pause);
} catch (InterruptedException e) {
break;
}
}
}
public void start() {
MyTrafficLight = new Thread(this);
MyTrafficLight.start();
}
public void stop() {
MyTrafficLight.stop();
}
}