public void SelectShip(Ship RandomizedShip) { LOG.Debug("SelectShip(" + RandomizedShip.Name + ")"); ClearSelections(); selectedShip = RandomizedShip; TableLayoutPanel tl = this.Controls.Find("ShipMetricsTable", true).FirstOrDefault() as TableLayoutPanel; MetricsExctractor Extractor = new MetricsExctractor(RandomizedShip); Metrics = Extractor.GetMetrics(); MetricsDrawer Drawer = new MetricsDrawer(tl); MetricsTableComposer.DrawTable(Extractor, Drawer); picShip.Load(RandomizedShip.Images.Small); this.Text = "Build Manager: " + RandomizedShip.Name; panelCaptainSkills.Enabled = true; panelFlags.Enabled = true; upgradeSlot1.Enabled = true; if (RandomizedShip.Tier >= 3) { upgradeSlot2.Enabled = true; upgradeSlot2.Visible = true; } if (RandomizedShip.Tier >= 5) { upgradeSlot3.Enabled = true; upgradeSlot3.Visible = true; } if (RandomizedShip.Tier >= 6) { upgradeSlot4.Enabled = true; upgradeSlot4.Visible = true; } if (RandomizedShip.Tier >= 8) { upgradeSlot5.Enabled = true; upgradeSlot5.Visible = true; } if (RandomizedShip.Tier >= 9) { upgradeSlot6.Enabled = true; upgradeSlot6.Visible = true; } string type = RandomizedShip.ShipType.ToLower(); LoadSkills(AbbreviateShipType(type)); cbCamoflage.Enabled = true; bmHandler = new BuildManagerHandler(ShipMetricsTable, Metrics); }
private void addRows() { table.Rows.Clear(); List <Ship> ShipQuery; List <string> conditions = AssembleConditions(); if (cbAllShips.Checked) { ShipQuery = new List <Ship>(Program.AllShips); } else { ShipQuery = new List <Ship>(AssembleShipList()); } foreach (Ship ship in ShipQuery) { MetricsExctractor extractor = new MetricsExctractor(ship); if (!(conditions.Contains(CONDITION_ALLSHIPS) || conditions.Contains(ship.ShipType.ToString()))) { { continue; } } if (!(conditions.Contains(CONDITION_ALLTIERS) || conditions.Contains(ship.Tier.ToString()))) { continue; } if (!(conditions.Contains("PS:" + ship.Premium.ToString().ToLower()))) { continue; } if (!(conditions.Contains(CONDITION_ALLNATIONS) || conditions.Contains(ship.Country.ToString()))) { continue; } ShipMetrics metrics = extractor.GetMetrics(); if (isConditionMetForShip(ship, metrics) == false) { continue; } populateTableRow(ship, metrics); } resultGrid.Sort(resultGrid.Columns[0], ListSortDirection.Ascending); }
private void AddShipToCompare(Ship findShip, ShipBuild build = null) { CompareShip childForm = new CompareShip(); if (this.MdiChildren.Length == 0) { childForm.IsFirstChild = true; FirstChild = childForm; } childForm.MdiParent = this; string selection = findShip.Name; TableLayoutPanel tl = childForm.Controls.Find("ShipMetricsTable", true).FirstOrDefault() as TableLayoutPanel; MetricsExctractor Extractor = new MetricsExctractor(findShip); MetricsDrawer Drawer = new MetricsDrawer(tl); MetricsTableComposer.DrawTable(Extractor, Drawer); if (build != null) { selection += "**PB**"; BuildManagerHandler bmHandler = new BuildManagerHandler(tl, Extractor.GetMetrics()); bmHandler.PerformAnimation(false); bmHandler.KeepBackgroundTransparent(true); bmHandler.ApplyAll(build.Flags); bmHandler.ApplyAll(build.Skills); bmHandler.ApplyAll(build.Upgrades); } childForm.Text = selection; childForm.StartPosition = FormStartPosition.Manual; int positionX = (this.MdiChildren.Length - 1) * 252; Point point = new Point(positionX, 0); childForm.Location = point; if (childForm.IsFirstChild == false) { MetricsCompare.DoCompare(childForm.Controls.Find("ShipMetricsTable", true).FirstOrDefault() as TableLayoutPanel, FirstChild.Controls.Find("ShipMetricsTable", true).FirstOrDefault() as TableLayoutPanel); } childForm.Show(); toolStripStatusLabel.Text = "Added '" + selection + "' to compare."; statusStrip.Refresh(); }
private void LoadShipMetrics() { if (RandomizedShip == null) { return; } LOG.Debug("Loading ship metrics"); MetricsExctractor Extractor = new MetricsExctractor(RandomizedShip); MetricsDrawer Drawer = new MetricsDrawer(ShipMetricsTable); MetricsTableComposer.DrawTable(Extractor, Drawer); try { Settings settings = Commons.GetSettings(); string fileName = settings.SaveLocation; if (!fileName.EndsWith("\\")) { fileName += @"\"; } fileName += RandomizedShip.Name + ".bld"; ShipBuild build = null; if (File.Exists(fileName)) { build = BinarySerialize.ReadFromBinaryFile <ShipBuild>(fileName); } if (build != null) { BuildManagerHandler bmHandler = new BuildManagerHandler(ShipMetricsTable, Extractor.GetMetrics()); bmHandler.PerformAnimation(false); bmHandler.KeepBackgroundTransparent(false); bmHandler.ApplyAll(build.Flags); bmHandler.ApplyAll(build.Skills); bmHandler.ApplyAll(build.Upgrades); } } catch (Exception) { } }