package nl.ru.ai.projects.parrot.dronecontrol.manualcontrol;
import nl.ru.ai.projects.parrot.dronecontrol.simulator.SimulatedDrone;
import nl.ru.ai.projects.parrot.dronecontrol.simulator.Simulator;
protected SimulatedDrone drone;
public Model(Control control)
throws InterruptedException {
Simulator simulator = Simulator.getInstance();
simulator.activateRendering(true);
drone = simulator.getDrone(0);
DroneControl droneControl = new DroneControl(control, drone);
droneControl.run();
}
protected SimulatedDrone drone;
Control control;
this.drone = drone;
this.control = control;
}
while (true) {
try {
Thread.sleep(10);
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
}
drone.hover();
if (control.getUp()) {
drone.flyForward(1.0);
}
if (control.getDown()) {
drone.flyForward(-1.0);
}
if (control.getLeft()) {
drone.spin(-1.0);
}
if (control.getRigth()) {
drone.spin(1.0);
}
if (control.getXButton()) {
drone.land();
}
if (control.getZButton()) {
drone.clearEmergencyFlag();
drone.takeoff();
}
if (control.getAButton()) {
drone.flySideways(-1.0);
}
if (control.getDButton()) {
drone.flySideways(1.0);
}
}
}
}
}