Esempio n. 1
0
 public static SpellData GetRandomMin(int level)
 {
     if (!_setup)
     {
         Init();
     }
     return(AbilityFactory.BuildAbility(_spellMinLevels[level].RandomElement(), false).Get <SpellData>());
 }
Esempio n. 2
0
        public static SpellData GetRandomMinNoDuplicate(int level, string skill, CharacterNode actor)
        {
            if (!_setup)
            {
                Init();
            }
            var spellsContainer = actor.Entity.Get <SpellsContainer>();
            int chk             = 0;

            while (chk < 10000)
            {
                chk++;
                var template = _spellMinLevels[level].RandomElement();
                if (template.Skill == skill && !spellsContainer.HasSpell(template))
                {
                    return(AbilityFactory.BuildAbility(template, false).Get <SpellData>());
                }
            }
            return(null);
        }