コード例 #1
0
        private void lstLevels_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (lstLevels.SelectedItems.Count > 0)
            {
                gbActivations.Enabled = true;
                lstActivations.Items.Clear();

                BaseSkillLevel ActiveSkillLevel = ActiveSkill.ListSkillLevel[lstLevels.SelectedIndex];
                txtUpgradePrice.Value = ActiveSkillLevel.Price;
                for (int A = 0; A < ActiveSkillLevel.ListActivation.Count; A++)
                {
                    lstActivations.Items.Add("Activation " + (lstActivations.Items.Count + 1));
                }

                if (lstActivations.Items.Count > 0)
                {
                    lstActivations.SelectedIndex = 0;
                }
                else
                {
                    lstRequirements.Items.Clear();
                    lstEffects.Items.Clear();
                }
            }
            else
            {
                gbActivations.Enabled = false;
            }
        }
        private BaseAutomaticSkill CreateDummySkill(BaseSkillRequirement Requirement)
        {
            BaseAutomaticSkill TestSkill = new BaseAutomaticSkill();

            TestSkill.CurrentLevel = 1;
            TestSkill.Name         = "Test";
            BaseSkillLevel      TestSkillLevel      = new BaseSkillLevel();
            BaseSkillActivation TestSkillActivation = new BaseSkillActivation();

            TestSkillActivation.ListEffectTarget.Add(new List <string>()
            {
                "Self"
            });
            TestSkillActivation.ListEffectTargetReal.Add(new List <AutomaticSkillTargetType>()
            {
                DummyMap.DicAutomaticSkillTarget[EffectActivationSelf.Name].Copy()
            });
            TestSkillActivation.ActivationPercentage = 100;
            TestSkillActivation.ListRequirement.Add(Requirement);

            FinalDamageEffect NewEffect = (FinalDamageEffect)DummyMap.DicEffect[FinalDamageEffect.Name].Copy();

            NewEffect.FinalDamageValue = "100";
            NewEffect.NumberType       = Core.Operators.NumberTypes.Absolute;
            NewEffect.LifetimeType     = SkillEffect.LifetimeTypePermanent;

            TestSkillActivation.ListEffect.Add(NewEffect);
            TestSkillLevel.ListActivation.Add(TestSkillActivation);
            TestSkill.ListSkillLevel.Add(TestSkillLevel);

            return(TestSkill);
        }
コード例 #3
0
        public UnitStandardPart(string SkillPath, Dictionary <string, BaseSkillRequirement> DicRequirement, Dictionary <string, BaseEffect> DicEffect,
                                Dictionary <string, AutomaticSkillTargetType> DicAutomaticSkillTarget)
        {
            Skill                = new BaseAutomaticSkill();
            Skill.Name           = Path.GetFileNameWithoutExtension(SkillPath);
            Skill.CurrentLevel   = 1;
            Skill.ListSkillLevel = new List <BaseSkillLevel>();

            FileStream   FS = new FileStream(SkillPath, FileMode.Open, FileAccess.Read);
            BinaryReader BR = new BinaryReader(FS, Encoding.UTF8);

            Skill.Description = BR.ReadString();

            BaseSkillLevel NewSkillLevel = new BaseSkillLevel();

            Skill.ListSkillLevel.Add(NewSkillLevel);
            NewSkillLevel.ActivationsCount = BR.ReadInt32();

            int ListActivationRequirementCount = BR.ReadInt32();

            for (int R = 0; R < ListActivationRequirementCount; R++)
            {
                NewSkillLevel.ListActivation.Add(new BaseSkillActivation(BR, DicRequirement, DicEffect, DicAutomaticSkillTarget));
            }

            FS.Close();
            BR.Close();
        }
コード例 #4
0
        private void txtUpgradePrice_ValueChanged(object sender, EventArgs e)
        {
            if (lstLevels.SelectedItems.Count > 0)
            {
                gbActivations.Enabled = true;
                lstActivations.Items.Clear();

                BaseSkillLevel ActiveSkillLevel = ActiveSkill.ListSkillLevel[lstLevels.SelectedIndex];
                ActiveSkillLevel.Price = (int)txtUpgradePrice.Value;
            }
        }
コード例 #5
0
        private void btnAddLevel_Click(object sender, EventArgs e)
        {
            BaseSkillLevel      NewSkillLevel      = new BaseSkillLevel();
            BaseSkillActivation NewSkillActivation = new BaseSkillActivation();

            NewSkillLevel.ListActivation.Add(NewSkillActivation);

            ActiveSkill.ListSkillLevel.Add(NewSkillLevel);
            lstLevels.Items.Add("Level " + (lstLevels.Items.Count + 1));

            lstLevels.SelectedIndex = lstLevels.Items.Count - 1;
        }