Esempio n. 1
0
        private void listBox_allAbilities_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            //create a list of AbilityTypes from the abilitys this component has so I can check if it's already in the list or not.
            List <AbilityType> abilityTypeslistList = new List <AbilityType>();

            foreach (var abilityWrapper in _selectedComponentAbilityWrappers)
            {
                ComponentAbilitySD abilitySD = abilityWrapper.AbilityStaticData();
                abilityTypeslistList.Add(abilitySD.Ability);
            }

            if (!abilityTypeslistList.Contains((AbilityType)listBox_allAbilities.SelectedItem)) //check if it's in the list
            {
                ComponentAbilitySD abilitySD = new ComponentAbilitySD();
                abilitySD.Name          = listBox_allAbilities.SelectedItem.ToString();
                abilitySD.Ability       = (AbilityType)listBox_allAbilities.SelectedItem;
                abilitySD.AbilityAmount = new List <float>();

                abilitySD.AffectsAbility = AbilityType.Nothing;
                abilitySD.AffectedAmount = new List <float>();

                abilitySD.CrewAmount       = new List <float>();
                abilitySD.Description      = "";
                abilitySD.TechRequirements = new List <Guid>();
                abilitySD.WeightAmount     = new List <float>();

                _selectedComponentAbilityWrappers.Add(new ComponentAbilityWrapper(abilitySD));
            }
            //UpdateAbilityAmounts();
        }
Esempio n. 2
0
 public ComponentAbilityWrapper(ComponentAbilitySD _abilitySD)
 {
     Name             = _abilitySD.Name;
     Description      = _abilitySD.Description;
     Ability          = _abilitySD.Ability;
     AbilityAmount    = _abilitySD.AbilityAmount;
     CrewAmount       = _abilitySD.CrewAmount;
     WeightAmount     = _abilitySD.WeightAmount;
     AffectsAbility   = _abilitySD.AffectsAbility;
     AffectedAmount   = _abilitySD.AffectedAmount;
     TechRequirements = _abilitySD.TechRequirements;
 }
Esempio n. 3
0
        private void button_clearSelection_Click(object sender, EventArgs e)
        {
            _selectedComponentAbilityWrappers.Clear();
            ComponentAbilitySD newemptyabilitySD = new ComponentAbilitySD
            {
            };


            ComponentSD newEmptySD = new ComponentSD
            {
                ID                  = new Guid(),
                Name                = "",
                Description         = "",
                ComponentAbilitySDs = new List <ComponentAbilitySD>(),
            };

            SetCurrentComponent(newEmptySD);
        }
Esempio n. 4
0
            public ComponentAbilitySD AbilityStaticData()
            {
                ComponentAbilitySD newSD = new ComponentAbilitySD
                {
                    Name        = Name,
                    Description = Description,

                    Ability          = Ability,
                    AbilityAmount    = AbilityAmount,
                    CrewAmount       = CrewAmount,
                    WeightAmount     = WeightAmount,
                    AffectsAbility   = AffectsAbility,
                    AffectedAmount   = AffectedAmount,
                    TechRequirements = TechRequirements
                };

                return(newSD);
            }
Esempio n. 5
0
 public DataHolder(ComponentAbilitySD staticData)
 {
     File       = null;
     StaticData = staticData;
 }
Esempio n. 6
0
        /// <summary>
        /// This sets up the itemGrid control by
        /// Creating the headers
        /// Creating the footers
        /// Selecting the correct cell type
        /// Creating the cells and adding the data
        /// Adding them to the itemGrid control.
        /// </summary>
        /// <param name="abilitySD"></param>
        private void SetupItemGrid(ComponentAbilitySD abilitySD)
        {
            itemGridUC1.Clear();

            Type                    t         = _selectedComponentAbilityWrappers[_currentAbilityIndex].GetType();
            PropertyInfo            pinfo     = t.GetProperty("Name");
            ItemGridHeaderCell      rowHeader = null;
            ItemGridFooterCell      rowFooter = null;
            List <ItemGridDataCell> dataCells = new List <ItemGridDataCell>();

            rowHeader = new ItemGridHeaderCell("Name", pinfo);
            dataCells = new List <ItemGridDataCell>();
            rowFooter = new ItemGridFooterCell(new ItemGridCell_String(null));
            ItemGridCell_String nameCell = new ItemGridCell_String(null);

            if (!String.IsNullOrEmpty(abilitySD.Name))
            {
                dataCells.Add(new ItemGridCell_String(abilitySD.Name));
            }
            itemGridUC1.AddRow(rowHeader, dataCells, rowFooter);


            rowHeader = new ItemGridHeaderCell("Description", t.GetProperty("Description"));
            dataCells = new List <ItemGridDataCell>();
            rowFooter = new ItemGridFooterCell(new ItemGridCell_String(null));
            ItemGridCell_String descCell = new ItemGridCell_String(null);

            if (!String.IsNullOrEmpty(abilitySD.Description))
            {
                dataCells.Add(new ItemGridCell_String(abilitySD.Description));
            }
            itemGridUC1.AddRow(rowHeader, dataCells, rowFooter);


            rowHeader = new ItemGridHeaderCell("Ability", t.GetProperty("Ability"));
            dataCells = new List <ItemGridDataCell>();
            rowFooter = new ItemGridFooterCell(new ItemGridCell_AbilityType(null));
            if (abilitySD.Ability != null)
            {
                dataCells.Add(new ItemGridCell_AbilityType(abilitySD.Ability));
            }
            itemGridUC1.AddRow(rowHeader, dataCells, rowFooter);


            rowHeader = new ItemGridHeaderCell("AbilityAmount", t.GetProperty("AbilityAmount"));
            dataCells = new List <ItemGridDataCell>();
            rowFooter = new ItemGridFooterCell(new ItemGridCell_FloatType(0));
            if (!abilitySD.AbilityAmount.IsNullOrEmpty())
            {
                foreach (float ammount in abilitySD.AbilityAmount)
                {
                    dataCells.Add(new ItemGridCell_FloatType(ammount));
                }
            }
            itemGridUC1.AddRow(rowHeader, dataCells, rowFooter);


            rowHeader = new ItemGridHeaderCell("CrewAmount", t.GetProperty("CrewAmount"));
            dataCells = new List <ItemGridDataCell>();
            rowFooter = new ItemGridFooterCell(new ItemGridCell_FloatType(0));
            if (!abilitySD.CrewAmount.IsNullOrEmpty())
            {
                foreach (float crew in abilitySD.CrewAmount)
                {
                    dataCells.Add(new ItemGridCell_FloatType(crew));
                }
            }
            itemGridUC1.AddRow(rowHeader, dataCells, rowFooter);


            rowHeader = new ItemGridHeaderCell("WeightAmount", t.GetProperty("WeightAmount"));
            dataCells = new List <ItemGridDataCell>();
            rowFooter = new ItemGridFooterCell(new ItemGridCell_FloatType(0));
            if (!abilitySD.WeightAmount.IsNullOrEmpty())
            {
                foreach (float weight in abilitySD.WeightAmount)
                {
                    dataCells.Add(new ItemGridCell_FloatType(weight));
                }
            }
            itemGridUC1.AddRow(rowHeader, dataCells, rowFooter);


            rowHeader = new ItemGridHeaderCell("AffectsAbility", t.GetProperty("AffectsAbility"));
            dataCells = new List <ItemGridDataCell>();
            rowFooter = new ItemGridFooterCell(new ItemGridCell_AbilityType(null));
            if (abilitySD.AffectsAbility != null)
            {
                dataCells.Add(new ItemGridCell_AbilityType(abilitySD.AffectsAbility));
            }
            itemGridUC1.AddRow(rowHeader, dataCells, rowFooter);


            rowHeader = new ItemGridHeaderCell("AffectedAmount", t.GetProperty("AffectedAmount"));
            dataCells = new List <ItemGridDataCell>();
            rowFooter = new ItemGridFooterCell(new ItemGridCell_FloatType(0));
            if (!abilitySD.AffectedAmount.IsNullOrEmpty())
            {
                foreach (float affect in abilitySD.AffectedAmount)
                {
                    dataCells.Add(new ItemGridCell_FloatType(affect));
                }
            }
            itemGridUC1.AddRow(rowHeader, dataCells, rowFooter);


            rowHeader = new ItemGridHeaderCell("TechRequirements", t.GetProperty("TechRequirements"));
            dataCells = new List <ItemGridDataCell>();
            rowFooter = new ItemGridFooterCell(new ItemGridCell_TechStaticDataType(null, Data.GetllistoftTechSds()));
            if (!abilitySD.TechRequirements.IsNullOrEmpty())
            {
                foreach (Guid techGuid in abilitySD.TechRequirements)
                {
                    dataCells.Add(new ItemGridCell_TechStaticDataType(techGuid, Data.GetllistoftTechSds()));
                }
            }
            itemGridUC1.AddRow(rowHeader, dataCells, rowFooter);

            //rowHeader = new ItemGridHeaderCell("MineralCosts", t.GetProperty("MineralCosts"));
            //dataCells = new List<ItemGridDataCell>();
            //rowFooter = new ItemGridFooterCell(new ItemGridCell_MineralDictionary(null, Data.GetListofMineralSds()));
            //itemGridUC1.AddRow(rowHeader, dataCells, rowFooter);

            itemGridUC1.HardRedraw();
            //itemGridUC1.SoftRefresh();
        }