void SeekerAI::ExecFrame(double seconds) { // setup: FindObjective(); // adaptive behavior: Navigator(); }
int main () { Navigator n; n = Navigator(); while (1) { std::cout<< n.getLeft() << std::endl; sleep(1); } }
Controller() { robot = Robot(); navigator = Navigator(); if(Collision::occuredWithUpdate()){ startOnOppositePath = true; Actuators::openClaw(); delay(OPEN_FINGERS_FOR_PASSENGER_DROP_OFF_DURATION); //lift hand off! Actuators::closeClaw(); while(Collision::occuredWithUpdate()){} delay(300); } }
int main(int argc, char **argv) { // Start Node ROS_INFO("Starting navigator_node"); ros::init(argc, argv, "navigator_node"); ros::NodeHandle node; // Start Navigator Navigator nav = Navigator(node); ROS_INFO("Press Ctrl-C to kill node."); // Spin ros::MultiThreadedSpinner spinner(2); spinner.spin(); return 0; }
void NavAI::ExecFrame(double s) { if (!ship) return; seconds = s; ship->SetDirectorInfo(" "); if (ship->GetFlightPhase() == Ship::TAKEOFF) takeoff = true; else if (takeoff && ship->MissionClock() > 10000) takeoff = false; FindObjective(); Navigator(); // watch for disconnect: if (ShipCtrl::Toggled(KEY_AUTO_NAV)) { NavSystem* navsys = ship->GetNavSystem(); if (navsys) { HUDView::GetInstance()->SetHUDMode(HUDView::HUD_MODE_TAC); navsys->DisengageAutoNav(); Sim* sim = Sim::GetSim(); if (sim) { ship->SetControls(sim->GetControls()); return; } } } static double time_til_change = 0.0; if (time_til_change < 0.001) { if (ship->GetShield()) { Shield* shield = ship->GetShield(); double level = shield->GetPowerLevel(); if (ShipCtrl::KeyDown(KEY_SHIELDS_FULL)) { HUDSounds::PlaySound(HUDSounds::SND_SHIELD_LEVEL); shield->SetPowerLevel(100); time_til_change = 0.5f; } else if (ShipCtrl::KeyDown(KEY_SHIELDS_ZERO)) { HUDSounds::PlaySound(HUDSounds::SND_SHIELD_LEVEL); shield->SetPowerLevel(0); time_til_change = 0.5f; } else if (ShipCtrl::KeyDown(KEY_SHIELDS_UP)) { if (level < 25) level = 25; else if (level < 50) level = 50; else if (level < 75) level = 75; else level = 100; HUDSounds::PlaySound(HUDSounds::SND_SHIELD_LEVEL); shield->SetPowerLevel(level); time_til_change = 0.5f; } else if (ShipCtrl::KeyDown(KEY_SHIELDS_DOWN)) { if (level > 75) level = 75; else if (level > 50) level = 50; else if (level > 25) level = 25; else level = 0; HUDSounds::PlaySound(HUDSounds::SND_SHIELD_LEVEL); shield->SetPowerLevel(level); time_til_change = 0.5f; } } } else { time_til_change -= seconds; } if (ShipCtrl::Toggled(KEY_DECOY)) ship->FireDecoy(); if (ShipCtrl::Toggled(KEY_LAUNCH_PROBE)) ship->LaunchProbe(); if (ShipCtrl::Toggled(KEY_GEAR_TOGGLE)) ship->ToggleGear(); if (ShipCtrl::Toggled(KEY_NAVLIGHT_TOGGLE)) ship->ToggleNavlights(); if (drop_state < 0) { ship->DropOrbit(); return; } if (drop_state > 0) { ship->MakeOrbit(); return; } }