Example #1
0
        private void UpdateShipCombat()
        {
            MainForm theForm       = (this.Parent as MainForm);
            bool     hasCombatPool = false;

            foreach (var myString in SkillDisplayStrings)
            {
                if (myString.Contains("Ship Combat"))
                {
                    hasCombatPool = true;
                }
            }
            if (!hasCombatPool)
            {
                CombatPools   myCombat          = new CombatPools();
                List <string> combatStrings     = myCombat.CalculateCombatPools(theCrew, theForm);
                List <string> OldDisplayStrings = new List <string>();

                foreach (var myString in SkillDisplayStrings)
                {
                    OldDisplayStrings.Add(myString);
                }
                SkillDisplayStrings.Clear();

                foreach (var myString in combatStrings)
                {
                    Console.WriteLine(myString);
                    SkillDisplayStrings.Add(myString);
                }
                SkillDisplayStrings.Add("-----------------------------\n");
                foreach (var myString in OldDisplayStrings)
                {
                    SkillDisplayStrings.Add(myString);
                }

                shipDiceBox.Items.Clear();
                foreach (var myString in SkillDisplayStrings)
                {
                    shipDiceBox.Items.Add(myString);
                }
                shipDiceBox.Refresh();
            }
        }
Example #2
0
        private string ReturnShipString(DataStorage.SelectedShip theShip)
        {
            String    sT          = "\t";
            String    dT          = "\t\t";
            String    tT          = "\t\t\t";
            String    fT          = "\t\t\t\t";
            String    fiT         = "\t\t\t\t\t";
            string    rC          = "\n";
            var       myString    = "";
            DataTable largeTable  = new DataTable();
            DataTable mediumTable = new DataTable();
            DataTable smallTable  = new DataTable();


            if (testObject.DataTableValid(theShip.Components.Large))
            {
                largeTable = theShip.Components.Large.AsEnumerable().OrderBy(row => row.Field <string>("Name")).CopyToDataTable();
            }
            if (testObject.DataTableValid(theShip.Components.Large))
            {
                mediumTable = theShip.Components.Medium.AsEnumerable().OrderBy(row => row.Field <string>("Name")).CopyToDataTable();
            }
            if (testObject.DataTableValid(theShip.Components.Large))
            {
                smallTable = theShip.Components.Small.AsEnumerable().OrderBy(row => row.Field <string>("Name")).CopyToDataTable();
            }


            myString += "================================================================" + rC;
            myString += "---------------------------------------------------" + rC;
            myString += "Ship Readout" + rC;
            myString += "---------------------------------------------------" + rC;
            if (theShip.Ship.Rows.Count > 0)
            {
                foreach (DataRow dr in theShip.Ship.Rows)
                {
                    for (int x = 0; x < theShip.Ship.Columns.Count; x++)
                    {
                        var colName    = theShip.Ship.Columns[x].ColumnName;
                        var aString    = dr[x].ToString();
                        var shipString = ShipRowString(colName, aString);
                        if (colName.Equals("Tier"))
                        {
                        }
                        else
                        {
                            myString += shipString + rC;
                        }
                    }
                }
            }

            myString += "---------------------------------------------------" + rC;
            myString += "Ship Components" + rC;
            myString += "---------------------------------------------------" + rC;
            myString += "-------------------------------------------" + rC;
            myString += "Large Components" + rC;
            myString += "-------------------------------------------" + rC;

            foreach (DataRow dr in largeTable.Rows)
            {
                var aString = dr[0].ToString();
                myString += aString + rC;
            }
            myString += "-------------------------------------------" + rC;
            myString += "Medium Components" + rC;
            myString += "-------------------------------------------" + rC;
            foreach (DataRow dr in mediumTable.Rows)
            {
                var aString = dr[0].ToString();
                myString += aString + rC;
            }
            myString += "-------------------------------------------" + rC;
            myString += "Small Components" + rC;
            myString += "-------------------------------------------" + rC;
            foreach (DataRow dr in smallTable.Rows)
            {
                var aString = dr[0].ToString();
                myString += aString + rC;
            }

            myString += WeaponsString(ReturnWeaponsTable(theShip));
            myString += "================================================================" + rC;
            myString += "---------------------------------------------------" + rC;
            myString += "Dice Pools" + rC;
            myString += "---------------------------------------------------" + rC;
            myString += "-------------------------------------------" + rC;
            myString += "Ship Combat Dice" + rC;
            myString += "-------------------------------------------" + rC;

            CombatPools   NewPools = new CombatPools();
            List <string> myPools  = NewPools.CalculateOutputCombatPools(aForm.theCrew, aForm);

            foreach (var aString in myPools)
            {
                myString += aString + rC;
            }
            myString += "-------------------------------------------" + rC;
            myString += "Crew Dice" + rC;
            myString += "-------------------------------------------" + rC;
            SkillPools    Skills  = new SkillPools();
            List <string> SkPools = Skills.CalculateSkillPools(aForm.theCrew, aForm);

            foreach (var aString in SkPools)
            {
                myString += aString + rC;
            }
            myString += "================================================================" + rC;
            return(myString);
        }
        private string ReturnShipString(DataStorage.SelectedShip theShip)
        {
            String    sT          = "\t";
            String    dT          = "\t\t";
            String    tT          = "\t\t\t";
            String    fT          = "\t\t\t\t";
            String    fiT         = "\t\t\t\t\t";
            string    rC          = "\n";
            var       myString    = "";
            DataTable largeTable  = new DataTable();
            DataTable mediumTable = new DataTable();
            DataTable smallTable  = new DataTable();


            if (testObject.DataTableValid(theShip.Components.Large))
            {
                largeTable = theShip.Components.Large.AsEnumerable().OrderBy(row => row.Field <string>("Name")).CopyToDataTable();
            }
            if (testObject.DataTableValid(theShip.Components.Large))
            {
                mediumTable = theShip.Components.Medium.AsEnumerable().OrderBy(row => row.Field <string>("Name")).CopyToDataTable();
            }
            if (testObject.DataTableValid(theShip.Components.Large))
            {
                smallTable = theShip.Components.Small.AsEnumerable().OrderBy(row => row.Field <string>("Name")).CopyToDataTable();
            }


            myString += "================================================================" + rC;
            myString += "---------------------------------------------------" + rC;
            myString += "Ship Readout" + rC;
            myString += "---------------------------------------------------" + rC;
            myString += ReturnDTtoTableStringNoHeader(ReturnCleanShipTable(theShip.Ship));

            myString += "---------------------------------------------------" + rC;
            myString += "Ship Components" + rC;
            myString += "---------------------------------------------------" + rC;
            myString += "-------------------------------------------" + rC;
            myString += "Large Components" + rC;
            myString += "-------------------------------------------" + rC;
            myString += ReturnDTtoTableStringNoHeader(ReturnCleanCompTable(largeTable));
            myString += "-------------------------------------------" + rC;
            myString += "Medium Components" + rC;
            myString += "-------------------------------------------" + rC;
            myString += ReturnDTtoTableStringNoHeader(ReturnCleanCompTable(mediumTable));
            myString += "-------------------------------------------" + rC;
            myString += "Small Components" + rC;
            myString += "-------------------------------------------" + rC;
            myString += ReturnDTtoTableStringNoHeader(ReturnCleanCompTable(smallTable));

            myString += ReturnDTtoTableStringHeader(ReturnWeaponsTable(theShip));
            myString += "================================================================" + rC;
            myString += "---------------------------------------------------" + rC;
            myString += "Dice Pools" + rC;
            myString += "---------------------------------------------------" + rC;
            myString += "-------------------------------------------" + rC;
            myString += "Ship Combat Dice (Standard Dice counted as 1/2 Strong Dice)" + rC;
            myString += "-------------------------------------------" + rC;

            CombatPools NewPools = new CombatPools();
            DataTable   myPools  = NewPools.CalculateTableCombatPools(aForm.theCrew, aForm);

            myString += ReturnDTtoTableStringHeader(myPools);
            myString += "-------------------------------------------" + rC;
            myString += "Crew Dice" + rC;
            myString += "-------------------------------------------" + rC;
            SkillPools Skills         = new SkillPools();
            DataTable  ShipSkillTable = Skills.CalculateShipSkillTable(aForm.theCrew, aForm);
            DataTable  CrewSkillTable = Skills.CalculateCrewSkillTable(aForm.theCrew, aForm);

            if (ShipSkillTable.Rows.Count > 0)
            {
                myString += ReturnDTtoTableStringHeader(ShipSkillTable);
            }
            if (CrewSkillTable.Rows.Count > 0)
            {
                myString += ReturnDTtoTableStringHeader(CrewSkillTable);
            }
            myString += "================================================================" + rC;
            return(myString);
        }