/// <summary>
 /// Writes entries to stream.
 /// </summary>
 /// <param name="stream">The stream.</param>
 internal void Write(Stream stream)
 {
     Primary.Update(Secondaries.ToList());
     foreach (var entry in Entries)
     {
         entry.Write(stream);
     }
 }
Beispiel #2
0
        private void CalculateSecondaries()
        {
            Secondaries sec = RandomizedShip.Profile.Secondaries;

            if (sec != null && sec.Slots != null)
            {
                Metrics.Secondaries    = sec.Slots;
                Metrics.SecondaryRange = sec.Distance;
            }
        }
        private void FillSecondaryArmamentsTab()
        {
            ClearTab(SecondaryArmament.Controls, "secondary");

            Secondaries sec = selectedShip.Profile.Secondaries;

            if (sec == null)
            {
                return;
            }

            foreach (KeyValuePair <string, SecondariesData> kvPair in sec.Slots)
            {
                SecondariesData secData = kvPair.Value;
                foreach (Control ctr in SecondaryArmament.Controls)
                {
                    if (ctr.Name.Equals("secondary" + kvPair.Key))
                    {
                        TableLayoutPanel panel = getTable(ctr);
                        if (panel != null)
                        {
                            panel.Controls.Clear();
                            panel.Controls.Add(createHeadlineLabel("Name"), 0, 0);
                            panel.Controls.Add(createLabel(secData.Name), 0, 1);

                            panel.Controls.Add(createHeadlineLabel("Range"), 1, 0);
                            panel.Controls.Add(createLabel(sec.Distance.ToString() + " km"), 1, 1);

                            panel.Controls.Add(createHeadlineLabel("Firechance"), 2, 0);
                            panel.Controls.Add(createLabel(secData.FireChance.ToString() + " %"), 2, 1);

                            panel.Controls.Add(createHeadlineLabel("Reload time"), 3, 0);
                            panel.Controls.Add(createLabel(secData.ReloadTime().ToString()), 3, 1);
                        }
                        ctr.Visible = true;
                    }
                }
            }
        }