internal ModuleInfoEvent InvokeEvent(ModuleInfoEvent arg) { if (_api.ValidateEvent(arg)) { ModuleInfo?.Invoke(_api, arg); } return(arg); }
internal void InvokeModuleInfoEvent(ModuleInfoEvent arg) { ModuleInfoEvent?.Invoke(this, arg); }
private void handleModuleInfoEvent(ModuleInfoEvent @event) { Ship ship = GetCurrentShip(); ModuleInfoReader info = ModuleInfoReader.FromFile(); if (info != null) { for (int i = 0; i < info.Modules.Count(); i++) { int position = i + 1; int priority = info.Modules[i].priority + 1; decimal power = info.Modules[i].power; string slot = info.Modules[i].slot; switch (slot) { case "CargoHatch": { ship.cargohatch.position = position; ship.cargohatch.priority = priority; ship.cargohatch.power = power; } break; case "FrameShiftDrive": { ship.frameshiftdrive.position = position; ship.frameshiftdrive.priority = priority; ship.frameshiftdrive.power = power; } break; case "LifeSupport": { ship.lifesupport.position = position; ship.lifesupport.priority = priority; ship.lifesupport.power = power; } break; case "MainEngines": { ship.thrusters.position = position; ship.thrusters.priority = priority; ship.thrusters.power = power; } break; case "PowerDistributor": { ship.powerdistributor.position = position; ship.powerdistributor.priority = priority; ship.powerdistributor.power = power; } break; case "PowerPlant": { ship.powerplant.position = position; ship.powerplant.priority = priority; ship.powerplant.power = power; } break; case "Radar": { ship.sensors.position = position; ship.sensors.priority = priority; ship.sensors.power = power; } break; case "ShipCockpit": { ship.canopy.position = position; ship.canopy.priority = priority; ship.canopy.power = power; } break; } if (slot.Contains("Slot")) { Compartment compartment = ship.compartments.FirstOrDefault(c => c.name == slot); if (compartment != null) { compartment.module.position = position; compartment.module.priority = priority; compartment.module.power = power; } } else if (slot.Contains("Hardpoint")) { Hardpoint hardpoint = ship.hardpoints.FirstOrDefault(h => h.name == slot); if (hardpoint != null) { hardpoint.module.position = position; hardpoint.module.priority = priority; hardpoint.module.power = power; } } } writeShips(); } }
internal void InvokeModuleEventEvent(ModuleInfoEvent arg) => ModuleEventEvent?.Invoke(null, arg);
private void AssertEvent(ModuleInfoEvent @event) { Assert.NotNull(@event); Assert.Equal(DateTime.Parse("2017-08-14T15:41:50Z"), @event.Timestamp); Assert.Equal(EventName, @event.Event); }