public List<Spell> Get2DomainSpellsWithRank(DnDClericDomain domain_1, DnDClericDomain domain_2, int rank)
	{
		ListCheck();
		List<Spell> result = GetDomainAndRankSpells(domain_1, rank);
		result.AddRange(GetDomainAndRankSpells(domain_2, rank));
		return result;
	}
Exemple #2
0
        public List <Spell> Get2DomainSpellsWithRank(DnDClericDomain domain_1, DnDClericDomain domain_2, int rank)
        {
            ListCheck();
            List <Spell> result = GetDomainAndRankSpells(domain_1, rank);

            result.AddRange(GetDomainAndRankSpells(domain_2, rank));
            return(result);
        }
Exemple #3
0
        private List <Spell> GetDomainSpells(DnDClericDomain domain)
        {
            ListCheck();
            List <Spell> result = mSpells.FindAll(
                delegate(Spell temp)
            {
                return(temp.Contains(domain));
            });

            return(result);
        }
Exemple #4
0
 public bool Contains(DnDClericDomain domain)
 {
     foreach (SpellAttribute attribute in mDomains)
     {
         if (attribute.attributeValue == (int)domain)
         {
             return(true);
         }
     }
     return(false);
 }
Exemple #5
0
 /// <summary>
 /// Returns the spell's rank. cleric domain is checked before class,
 /// for best result only provide 1 (one) of these, never both.
 /// </summary>
 public int Rank(DnDClericDomain domain = DnDClericDomain.NONE, DnDCharClass charClass = DnDCharClass.NONE)
 {
     if (domain != DnDClericDomain.NONE)
     {
         for (int rank = 0; rank <= SpellAttribute.MAX_RANK; ++rank)
         {
             if (Contains(domain, rank))
             {
                 return(rank);
             }
         }
     }
     if (charClass != DnDCharClass.NONE)
     {
         for (int rank = 0; rank <= SpellAttribute.MAX_RANK; ++rank)
         {
             if (Contains(charClass, rank))
             {
                 return(rank);
             }
         }
     }
     return(-1);
 }
	private List<Spell> GetDomainAndRankSpells(DnDClericDomain domain, int rank)
	{
		ListCheck();
		List<Spell> result = mSpells.FindAll(
			delegate(Spell temp)
			{
				return temp.Contains(domain, rank);
			});
		return result;
	}