public static void Assassinate(TroopScript Assassin, TroopScript Victim) { int AssassinChance = Mathf.RoundToInt(((float)Assassin.GetEnergy()/(float)Assassin.GetMaxEnergy())*900+((float)Assassin.GetNumber()/(float)Assassin.GetmaxNumber())*100); int VictimChance = Mathf.RoundToInt(((float)Victim.GetEnergy()/(float)Victim.GetMaxEnergy())*100+((float)Victim.GetNumber()/(float)Victim.GetmaxNumber())*900); if (AssassinChance>VictimChance && Victim.boss == false) Victim.SetNumber(0); }
public static void MonkSelfHeal(TroopScript Monk, float SkillModifier) { int TroopSize = CalculateAdjustedTroopSize(Monk.GetNumber(),ReturnPeoplePerLine(Monk),Monk.GetChief().GetMuhReturns()); int Heal = HealAmount (TroopSize,Monk.GetChief().GetIntelligence(),SkillModifier,0); //MUH BUFFEADOS Monk.SetNumber(Monk.GetNumber()+Heal); if (Monk.GetNumber()>Monk.GetmaxNumber()) Monk.SetNumber(Monk.GetmaxNumber()); }
public static void HealingTarget(TroopScript Healer, TroopScript Healed, float SkillModifier) { int PeoplePerLine = ReturnPeoplePerLine(Healer); int TroopSize = CalculateAdjustedTroopSize(Healer.GetNumber(),PeoplePerLine,Healer.GetChief().GetMuhReturns()); int Healing = HealAmount(TroopSize,Healer.GetChief().GetIntelligence(),SkillModifier,Healer.GetDirectMatkBuff()); //NEED BUFF MODIFIERS FUGG Healed.SetNumber(Healed.GetNumber()+Healing); if (Healed.GetNumber()>Healed.GetmaxNumber()) Healed.SetNumber(Healed.GetmaxNumber()); }
public static void FinisherDamageScaling(TroopScript Caster, TroopScript Target) { float CasterHpPercent = (float)Caster.GetNumber()/Caster.GetmaxNumber(); float TargetHpPercent = (float)Target.GetNumber()/Target.GetmaxNumber(); float SkillScaling = .5f*(CasterHpPercent/TargetHpPercent); }
public static float DamageScalingRevenge(TroopScript Caster) { float value; float hpPercent = (float)Caster.GetNumber()/(float)Caster.GetmaxNumber(); value = 0.7f*(1/hpPercent); //need to change this return value; }
public static float DamageScalingCleanUp(TroopScript Caster, TroopScript Target) { float value; float HpDifferences = ((float)Caster.GetNumber()/(float)Caster.GetmaxNumber())/((float)Caster.GetNumber()/(float)Caster.GetmaxNumber()); value = -1f+Mathf.Pow(1.5f,HpDifferences); return value; }