def activateAccelerationGate(): switchTo('pilot') general.enterStarMap() print '--> activate acceleration gate\n' mouse.leftDownAtP(panel.center(panel.Full)) mouse.move(500, 200) mouse.leftUp() result = findTarget('acceleration_gate') if not result: return False mouse.leftClickAtP(result) key.pressEx(sc.Activate) print 'wait to activate gate' while not findAtDashboard('warp_drive_active'): result = findAtFull('close') if not result: result = findAtFull('ok') if result: mouse.leftClickAtP(result) mouse.moveTo(result[0], result[1] - 200) handleDangerousAction(); key.pressEx(sc.Activate) time.sleep(1) print 'wait until reach location' while findAtDashboard('warp_drive_active'): time.sleep(0.5) result = findAtFull('close') if not result: result = findAtFull('ok') if result: mouse.leftClickAtP(result) mouse.moveTo(result[0], result[1] - 200) time.sleep(1) while findAtDashboard('warp_drive_active'): time.sleep(0.5) print '<-- activate acceleration gate\n' general.exitStarMap() return True