Пример #1
0
            private void UpdateSkills(bool reset = false)
            {
                // We may have loaded settings for all skills from any class.
                // Active skill is just the subset currently in use by the hero.
                // But we still need to persist settings for all skills used to-date.
                // Also need to populate with reference skill info for the pretty UI Icons etc.

                if (!Player.IsInGame && !ModuleManager.IsEnabled || !ZetaDia.IsInGame)
                {
                    return;
                }

                var activeSettings = SkillUtils.Active.Select(s => new SkillSettings(s)).ToList();

                if (Skills == null || !Skills.Any() || reset)
                {
                    Skills = new List <SkillSettings>(activeSettings);
                }
                else
                {
                    Skills.ForEach(s => s.SetReferenceSkill(SkillUtils.GetSkillByPower(s.SNOPower)));
                    Skills.AddRange(activeSettings.Where(b => Skills.All(a => a.SNOPower != b.SNOPower)));
                }

                var availableSkills = Skills.Where(s => Core.Hotbar.ActivePowers.Any(p => s.SNOPower == p)).OrderBy(s => s.Order);

                ActiveSkills = new FullyObservableCollection <SkillSettings>(availableSkills);
            }
Пример #2
0
        /// <summary>
        /// Constructor for a manually edited result from a base result.
        /// </summary>
        /// <param name="result">Associated remapping point, may be null.</param>
        /// <param name="bestScratchpad">The best scratchpad.</param>
        /// <exception cref="System.ArgumentNullException">result</exception>
        public RemappingResult(RemappingResult result, CharacterScratchpad bestScratchpad)
            : this(result?.Point, result?.BaseScratchpad)
        {
            result.ThrowIfNull(nameof(result));

            Skills.AddRange(result.Skills);
            BestScratchpad = bestScratchpad;
        }
Пример #3
0
 public void AddArmor(Armor a)
 {
     Armor.Add(a);
     Skills.AddRange(a.Skills);
     TotalDef += a.Defense;
     Skills.Sort((a1, a2) => a1.Slot.CompareTo(a2.Slot));
     Armor.Sort((a1, a2) => a1.Piece.CompareTo(a2.Piece));
 }
 public DifficultyCalculator()
 {
     Skills.AddRange(new ISkill[]
     {
         new Aiming(),
         new Clicking(),
         new Reading(),
     });
 }
Пример #5
0
        private void LoadFromConfiguration(IConfiguration configuration)
        {
            var section = configuration?.GetSection($"BotFrameworkSkills");
            var skills  = section?.Get <BotFrameworkSkill[]>();

            if (skills != null)
            {
                Skills.AddRange(skills);
            }

            SkillHostEndpoint = configuration?.GetValue <string>(nameof(SkillHostEndpoint));
        }
Пример #6
0
        private void LoadFromConfiguration(IConfiguration configuration)
        {
            var section = configuration?.GetSection("BotFrameworkSkills");
            var skills  = section?.Get <BotFrameworkSkill[]>();

            if (skills != null)
            {
                Skills.AddRange(skills);
            }

            var skillHostEndpoint = configuration?.GetValue <string>(nameof(SkillHostEndpoint));

            if (!string.IsNullOrWhiteSpace(skillHostEndpoint))
            {
                SkillHostEndpoint = new Uri(skillHostEndpoint);
            }
        }
Пример #7
0
        public List <Skill> AddSkills(int id)
        {
            List <Skill> skills = null;

            switch (id)
            {
            case 1:
                skills = new List <Skill>()
                {
                    new Skill(3, "Удар дракона", "Активний", CurrentUser.Name, 0, 22, 0, 0, 0, 20, 3, true, 1, 250, 1),
                    new Skill(4, "Підпищення здоров'я", "Активний", CurrentUser.Name, 0, 0, 0, 0, 50, 35, 7, true, 15, 1500, 5),
                };
                break;

            case 2:
                skills = new List <Skill>()
                {
                    //TODO: Заморожувати ворога
                    new Skill(3, "Заморожуючий удар", "Активний", CurrentUser.Name, 9, 0, 0, 0, 0, 66, 7, true, 1, 250, 4),
                    new Skill(4, "Підпищення здоров'я", "Активний", CurrentUser.Name, 0, 0, 0, 0, 50, 35, 7, true, 15, 1500, 5),
                };
                break;

            case 3:
                skills = new List <Skill>()
                {
                    new Skill(3, "Знімання броні", "Активний", CurrentUser.Name, 0, 0, -5, -8, 0, 0, 4, true, 1, 150, 4),
                    new Skill(4, "Підпищення здоров'я", "Активний", CurrentUser.Name, 0, 0, 0, 0, 38, 20, 7, true, 10, 1200, 5),
                };
                break;

            default:
                break;
            }

            Skills.AddRange(skills);
            SaveSkills();
            return(Skills);
        }