예제 #1
0
        public AircraftMenu(IFsConnect fsConnect) : base(fsConnect)
        {
            _aircraftManager =
                new AircraftManager <PlaneInfoResponse>(fsConnect, Definitions.PlaneInfo, Requests.AircraftManager);

            _aircraftManager.Updated += (sender, args) => Console.WriteLine(args.AircraftInfo.ToString());
        }
예제 #2
0
 void Start()
 {
     acManager          = GetComponent <AircraftManager>();
     angleAlert.enabled = false;
     RenderProcedure();
     InvokeRepeating("UpdateAngleAltitude", 0.2f, 0.3f);
     InvokeRepeating("CheckTrajectory", 0.2f, 0.3f);
 }
예제 #3
0
        public FlightFixture() : base("TUI-Test-Flight")
        {
            var telemetryClient = new TelemetryClient();

            FlightManager   = new FlightManager(Context, telemetryClient);
            AirportManager  = new AirportManager(Context, telemetryClient);
            AircraftManager = new AircraftManager(Context, telemetryClient);
        }
예제 #4
0
 // Update is called once per frame
 void Update()
 {
     if (!manager)
     {
         manager = Utility.playerShip?.GetComponent <AircraftManager>();
     }
     if (manager)
     {
         healthSlider.value = manager.GetComponent <Destructable>().health / manager.GetComponent <Destructable>().GetStartingHealth();
         var weaponStatus = manager.GetComponentInChildren <AircraftManager>().GetWeaponReload();
         for (int i = 0; i < weaponSliders.Length && i < weaponStatus.Length; i++)
         {
             weaponSliders[i].value = weaponStatus[i];
         }
         (int done, int total) = LevelManager.singleton.GetObjectivesInfo();
         objectCountLebel.text = done + "/" + total + " " + LevelManager.singleton.levelObjectiveString;
         boostBar.value        = manager.GetComponent <BoostSystem>().hasCooldown ? 0.0f : 1.0f;
     }
 }
        public void GetAircraftData()
        {
            // Arrange
            AutoResetEvent resetEvent = new AutoResetEvent(false);
            int            errorCount = 0;

            FsConnect fsConnect = new FsConnect();

            fsConnect.ConnectionChanged += (sender, b) =>
            {
                if (b)
                {
                    resetEvent.Set();
                }
            };
            fsConnect.FsError += (sender, args) =>
            {
                errorCount++;
                Console.WriteLine($"Error: {args.ExceptionDescription}");
            };

            fsConnect.Connect("AircraftManagersIntegrationTests", 0);

            bool res = resetEvent.WaitOne(2000);

            if (!res)
            {
                Assert.Fail("Not connected to MSFS within timeout");
            }

            var defId = fsConnect.RegisterDataDefinition <AircraftInfo>();

            AircraftManager <AircraftInfo> aircraftManager = new AircraftManager <AircraftInfo>(fsConnect, defId);

            // Act
            var info = aircraftManager.Get();

            // Assert
            Assert.That(errorCount, Is.Zero);
            Assert.That(info.Title, Is.Not.Empty);
            Assert.That(info.Latitude, Is.Not.EqualTo(0));
            Assert.That(info.Longitude, Is.Not.EqualTo(0));
        }
 public AircraftsController(AircraftManager aircraftManager)
 {
     _aircraftManager = aircraftManager;
 }
예제 #7
0
 private void GoToCarrier(UIMenu sender, UIMenuItem selectedItem)
 {
     sender.Visible = false;
     AircraftManager.TravelToCarrier();
 }
예제 #8
0
 private void SpawnPlane(UIMenu sender, UIMenuItem selectedItem)
 {
     sender.Visible = false;
     AircraftManager.TakePlane((Model)ModelList.SelectedItem.Value);
 }
예제 #9
0
 void Start()
 {
     acManager = GetComponent <AircraftManager>();
     StartSimulation();
 }
예제 #10
0
        public AircraftFixture() : base("TUI-Test-Aircraft")
        {
            var telemetryClient = new TelemetryClient();

            AircraftManager = new AircraftManager(Context, telemetryClient);
        }