private void DisplayYard(Outfitting yard) { foreach (var i in yard.Items) { ShipModuleData.ShipModule sm = ShipModuleData.Instance.GetItemProperties(i.FDName); //string namepart = i.Name.Left("Class", StringComparison.InvariantCultureIgnoreCase, true), classpart = i.Name.Mid("Class", StringComparison.InvariantCultureIgnoreCase, false); string info = sm.InfoMassPower(false); object[] rowobj = { i.ModType, i.Name, info, sm.Mass.ToString("0.#t"), i.BuyPrice.ToString("N1") + "cr" }; dataGridViewOutfitting.Rows.Add(rowobj); } double distance = discoveryform.history.DistanceCurrentTo(yard.StarSystem); labelYard.Text = yard.Ident(EDDiscoveryForm.EDDConfig.DisplayUTC) + (distance > -1 ? (" @ " + distance.ToString("N1") + "ly") : ""); labelYard.Visible = true; Col1.HeaderText = "Type".T(EDTx.UserControlOutfitting_Type); Col1.Tag = null; Col2.HeaderText = "Item".T(EDTx.UserControlOutfitting_Item); Col2.Tag = null; Col3.HeaderText = "Info".T(EDTx.UserControlOutfitting_Info); Col3.Tag = null; Col4.HeaderText = "Mass".T(EDTx.UserControlOutfitting_Mass); Col4.Tag = "t"; }
private IEnumerable <EddnEvent> ConvertOutfittingEvent(Outfitting e, string commanderName) { if (e.Items == null || e.Items.Length == 0) { yield break; } string[] items = e.Items .Select(i => i.Name) .Select(i => i.Replace("hpt_", "Hpt_").Replace("int_", "Int_").Replace("armour_", "Armour_")) .ToArray(); var @event = new OutfittingEvent() { Header = CreateHeader(commanderName), Message = new OutfittingMessage() { MarketId = e.MarketId, Timestamp = e.Timestamp, StationName = e.StationName, SystemName = e.StarSystem, Modules = items } }; yield return(@event); }
internal OutfittingEvent InvokeEvent(OutfittingEvent arg) { if (_api.ValidateEvent(arg)) { Outfitting?.Invoke(_api, arg); } return(arg); }
public JournalOutfitting(DateTime utc, string sn, string sys, long mid, Tuple <long, string, long>[] list, int cmdrid, bool horizons = true) : base(utc, JournalTypeEnum.Outfitting, false) { MarketID = mid; Horizons = horizons; var nlist = list.Select(x => new Outfitting.OutfittingItem { id = x.Item1, Name = x.Item2, BuyPrice = x.Item3 }).ToArray(); ItemList = new Outfitting(sn, sys, utc, nlist); SetCommander(cmdrid); }
private void Display() { DataGridViewColumn sortcol = dataGridViewOutfitting.SortedColumn != null ? dataGridViewOutfitting.SortedColumn : dataGridViewOutfitting.Columns[0]; SortOrder sortorder = dataGridViewOutfitting.SortOrder; dataGridViewOutfitting.Rows.Clear(); dataViewScrollerPanel.SuspendLayout(); labelYard.Visible = false; Outfitting yard = null; if (comboBoxYards.SelectedIndex == 0 || comboBoxYards.Text.Length == 0) // second is due to the order History gets called vs this on start { HistoryEntry lastshipyard = discoveryform.history.GetLastHistoryEntry(x => x.EntryType == JournalTypeEnum.Outfitting, last_he); if (lastshipyard != null) { yard = (lastshipyard.journalEntry as EliteDangerousCore.JournalEvents.JournalOutfitting).ItemList; } } else { yard = discoveryform.history.Outfitting.GetFilteredList().Find(x => x.Ident().Equals(comboBoxYards.Text)); } if (yard != null) { DisplayYard(yard); } else { List <Tuple <Outfitting, List <Outfitting.OutfittingItem> > > itemlist = discoveryform.history.Outfitting.GetItemTypeLocationsFromYardsWithoutRepeat(comboBoxYards.Text, nolocrepeats: true); if (itemlist.Count > 0) { DisplayItems(itemlist, comboBoxYards.Text); } } dataViewScrollerPanel.ResumeLayout(); dataGridViewOutfitting.Sort(sortcol, (sortorder == SortOrder.Descending) ? ListSortDirection.Descending : ListSortDirection.Ascending); dataGridViewOutfitting.Columns[sortcol.Index].HeaderCell.SortGlyphDirection = sortorder; }
public void Rescan(JObject evt) { ItemList = new Outfitting(evt["StationName"].Str(), evt["StarSystem"].Str(), EventTimeUTC, evt["Items"]?.ToObjectProtected <Outfitting.OutfittingItem[]>()); MarketID = evt["MarketID"].LongNull(); Horizons = evt["Horizons"].BoolNull(); }