Exemplo n.º 1
0
 internal LoadoutEvent InvokeEvent(LoadoutEvent arg)
 {
     if (_api.ValidateEvent(arg))
     {
         Loadout?.Invoke(_api, arg);
     }
     return(arg);
 }
 private async void ShipEventsOnLoadoutAsync(object sender, LoadoutEvent e)
 {
     if (e.Modules != null && e.Modules.Length > 0)
     {
         await AddCommand(new SetCommanderShipLoadout(e.Ship, e.ShipId, e.Modules.Select(ShipModule.FromApi).ToList()))
         .SendAsync()
         .ConfigureAwait(false);
     }
 }
        private void AssertEvent(LoadoutEvent @event)
        {
            Assert.NotNull(@event);
            Assert.Equal(DateTime.Parse("2019-09-05T11:17:13Z"), @event.Timestamp);
            Assert.Equal("Loadout", @event.Event);
            Assert.Equal(ShipModel.CobraMkIII, @event.ShipModel);
            Assert.Equal("cobramkiii", @event.ShipType);
            Assert.Equal(2, @event.ShipId);
            Assert.Equal("SAINT ANNA", @event.ShipName);
            Assert.Equal("NSW-C3", @event.ShipIdent);
            Assert.Equal(157888, @event.HullValue);
            Assert.Equal(1961355, @event.ModulesValue);
            Assert.Equal(0.763044, @event.HullHealth, 6);
            Assert.Equal(279.600006, @event.UnladenMass, 6);
            Assert.Equal(44, @event.CargoCapacity);
            Assert.Equal(17.125910, @event.MaxJumpRange, 6);
            Assert.Equal(16.000000, @event.FuelCapacity.Main, 6);
            Assert.Equal(0.490000, @event.FuelCapacity.Reserve, 6);
            Assert.Equal(105964, @event.Rebuy);
            Assert.Equal(27, @event.Modules.Length);

            var module = @event.Modules[0];

            Assert.Equal("ShipCockpit", module.Slot);
            Assert.Equal("cobramkiii_cockpit", module.Item);
            Assert.Equal(1, module.Priority);
            Assert.Equal(0.993686, module.Health, 6);
            Assert.True(module.On);

            module = @event.Modules.First(m => m.Slot == "MediumHardpoint1");
            Assert.Equal("MediumHardpoint1", module.Slot);
            Assert.Equal("hpt_multicannon_gimbal_medium", module.Item);
            Assert.Equal(2, module.Priority);
            Assert.Equal(90, module.AmmoInClip);
            Assert.Equal(2100, module.AmmoInHopper);
            Assert.Equal(0.991438, module.Health, 6);
            Assert.True(module.On);

            module = @event.Modules.First(m => m.Slot == "Armour");
            Assert.Equal("Armour", module.Slot);
            Assert.Equal("cobramkiii_armour_grade3", module.Item);
            Assert.Equal(1, module.Priority);
            Assert.Equal(1.000000, module.Health, 6);
            Assert.Equal(300080, module.Engineering.EngineerId);
            Assert.Equal("Liz Ryder", module.Engineering.Engineer);
            Assert.Equal(100, module.Engineering.BlueprintId);
            Assert.Equal("Experimental armor", module.Engineering.BlueprintName);
            Assert.Equal(1, module.Engineering.Level);
            Assert.Equal(79.600006, module.Engineering.Quality, 6);
            Assert.Equal("Charm", module.Engineering.ExperimentalEffect);
            Assert.Equal(ModuleAttribute.DefenceModifierHealthMultiplier, module.Engineering.Modifications[0].Label);
            Assert.Equal(12.000000, module.Engineering.Modifications[0].Value, 6);
            Assert.Equal(5.000000, module.Engineering.Modifications[0].OriginalValue, 6);
            Assert.True(module.Engineering.Modifications[0].LessIsGood);
            Assert.True(module.On);
        }
Exemplo n.º 4
0
 internal void InvokeLoadoutEvent(LoadoutEvent arg)
 {
     LoadoutEvent?.Invoke(this, arg);
 }
Exemplo n.º 5
0
 internal void InvokeLoadoutEvent(LoadoutEvent arg) => LoadoutEvent?.Invoke(null, arg);