public double ExecuteFrost(Fighter user, Fighter target) { user.SetMp(user.GetMp() - 3); Random rnd = new Random(); int randomNumber = rnd.Next(1, 100); if (randomNumber <= (90 + user.GetAccuracy() - (target.GetSpeed() * 0.5))) { if (randomNumber <= user.GetLuck()) { double output = target.GetSpeed() * 0.4; target.SetSpeed(target.GetSpeed() * 0.6); target.SetHp(target.GetHp() - (target.GetHp() * 0.2)); return(output); } else { double output = target.GetSpeed() * 0.2; target.SetSpeed(target.GetSpeed() * 0.8); target.SetHp(target.GetHp() - (target.GetHp() * 0.1)); return(output); } } else { return(999); } }
public double ExecutePunch(Fighter user, Fighter target, Punch punch) { Random rnd = new Random(); int randomNumber = rnd.Next(1, 100); if (randomNumber <= (punch.GetAccuracy() + user.GetAccuracy() - (target.GetSpeed() * 0.5))) { double damage = 0; if (randomNumber <= user.GetLuck()) { damage = 2 * (user.GetAttack() * punch.GetMultiplier()); } else { damage = user.GetAttack() * punch.GetMultiplier(); } target.SetHp(target.GetHp() - (damage * target.GetDefense())); return(damage * target.GetDefense()); } else { return(999); } }