public static KeyValuePair <List <int>, List <int> > CalculateDamage(BaseCharacter g, BaseCharacter r, BasicAbility gca, BasicAbility rca) { BasicAbility Idle = new BasicAbility(); Idle.abilityName = "Idle"; castAbility = gca; giver = g; receiver = r; giverAS = g.trueSTATChart(); giverAS = giverAS.StatChartAddition(gca.abilityModifier); receiverAS = r.trueSTATChart(); List <int> giverDMG = new List <int>(); List <int> targetDMG = new List <int>(); if (gca.abilityType == (int)BasicAbility.ABILITY_TYPE.ATTACK) { giverDMG.Add(CalculateMinDamage()); giverDMG.Add(CalculateMaxDamage()); targetDMG.Add(0); targetDMG.Add(0); } return(new KeyValuePair <List <int>, List <int> >(giverDMG, targetDMG)); }
internal static KeyValuePair <List <int>, List <int> > CalculateHealing(BaseCharacter g, BaseCharacter r, BasicAbility gca, BasicAbility rca) { BasicAbility Idle = new BasicAbility(); Idle.abilityName = "Idle"; castAbility = gca; giver = g; receiver = r; giverAS = g.trueSTATChart(); giverAS = giverAS.StatChartAddition(gca.abilityModifier); receiverAS = r.trueSTATChart(); List <int> giverDMG = new List <int>(); List <int> targetDMG = new List <int>(); if (gca.abilityType == (int)BasicAbility.ABILITY_TYPE.SUPPORT) { giverDMG.Add(-(g.trueSTATChart().currentActiveStats[(int)STATChart.ACTIVESTATS.HP])); giverDMG.Add(-(g.trueSTATChart().currentActiveStats[(int)STATChart.ACTIVESTATS.HP] + g.trueSTATChart().currentActiveStats[(int)STATChart.ACTIVESTATS.HP] / 2)); targetDMG.Add(0); targetDMG.Add(0); } return(new KeyValuePair <List <int>, List <int> >(giverDMG, targetDMG)); }