public override double PowerLevel()
    {
        double powerLevel = base.PowerLevel();

        foreach (KeywordAttribute keyword in attributes)
        {
            powerLevel += PowerBudget.GetKeywordCost(keyword, attack, health);
        }
        powerLevel += PowerBudget.StatsToPowerBudget(attack + health);
        return(powerLevel);
    }
示例#2
0
    // Keywords have varying evaluations depending on the budget
    static public SortedSet <KeywordAttribute> GetKeywordsWithinBudget(double maxBudget, int atk, int hp)
    {
        SortedSet <KeywordAttribute> ret = new SortedSet <KeywordAttribute>();

        foreach (KeywordAttribute keyword in Enum.GetValues(typeof(KeywordAttribute)))
        {
            if (PowerBudget.GetKeywordCost(keyword, atk, hp) <= maxBudget)
            {
                ret.Add(keyword);
            }
        }

        return(ret);
    }