Example #1
0
        public decimal GetWeight(RuneStatType statType)
        {
            switch (statType)
            {
            case RuneStatType.HpPercent: return(HpPercentWeight);

            case RuneStatType.HpFlat: return(ExpectedBaseHp == 0 ? 0 : (HpPercentWeight / ExpectedBaseHp) * 100);

            case RuneStatType.AtkPercent: return(AtkPercentWeight);

            case RuneStatType.AtkFlat: return(ExpectedBaseAtk == 0 ? 0 : (AtkPercentWeight / ExpectedBaseAtk) * 100);

            case RuneStatType.DefPercent: return(DefPercentWeight);

            case RuneStatType.DefFlat: return(ExpectedBaseDef == 0 ? 0 : (DefPercentWeight / ExpectedBaseDef) * 100);

            case RuneStatType.Spd: return(SpdWeight);

            case RuneStatType.CriRate: return(CritRateWeight);

            case RuneStatType.CriDmg: return(CritDmgWeight);

            case RuneStatType.Resistance: return(ResistanceWeight);

            case RuneStatType.Accuracy: return(AccuracyWeight);

            default: return(0);
            }
        }
        public static string ToDisplayString(this RuneStatType runeStatType)
        {
            switch (runeStatType)
            {
            case RuneStatType.HpFlat:
            case RuneStatType.HpPercent:
                return("HP");

            case RuneStatType.AtkFlat:
            case RuneStatType.AtkPercent:
                return("ATK");

            case RuneStatType.DefFlat:
            case RuneStatType.DefPercent:
                return("DEF");

            case RuneStatType.Spd: return("SPD");

            case RuneStatType.CriRate: return("CRI Rate");

            case RuneStatType.CriDmg: return("CRI Dmg");

            case RuneStatType.Resistance: return("Resistance");

            case RuneStatType.Accuracy: return("Accuracy");

            default: throw new Exception($"Requested display string for invalid stat type ({runeStatType})");
            }
        }
Example #3
0
 public RuneStat(RuneStatType type, short amount)
 {
     Type   = type;
     Amount = amount;
 }
 public static bool IsPercentStat(this RuneStatType runeStatType)
 {
     return(!(runeStatType == RuneStatType.HpFlat || runeStatType == RuneStatType.AtkFlat || runeStatType == RuneStatType.DefFlat || runeStatType == RuneStatType.Spd));
 }