public List <FighterRoundCompare> CompareDamageToCalculated() { FighterStats stats1 = Fight.Fighter1.AdjustAll(Fighter1Round.StartEndurance, Fighter1Round.Cuts_StartRound, Resources.FatigueBeforeCut); FighterStats stats2 = Fight.Fighter2.AdjustAll(Fighter2Round.StartEndurance, Fighter2Round.Cuts_StartRound, Resources.FatigueBeforeCut); RoundDamage d1 = RoundDamage.CalculateRoundDamage(stats1, Fighter1Round.Tactics, stats2, Fighter2Round.Tactics, Fighter1Round.Tactics.TargetArea); RoundDamage d2 = RoundDamage.CalculateRoundDamage(stats2, Fighter2Round.Tactics, stats1, Fighter1Round.Tactics, Fighter2Round.Tactics.TargetArea); RoundDamage.AdjustForStun(d1, d2); List <FighterRoundCompare> ret = new List <Model.FighterRoundCompare>() { new Model.FighterRoundCompare(Fighter1Round, d2), new Model.FighterRoundCompare(Fighter2Round, d1) }; return(ret); }
public FighterRound BeginFighting(FighterFight other, Round round) { FighterRound ret = new FighterRound(round); ret.Tactics = FighterRoundPlan.Adjusted(this.RoundStats.Plan, this.RoundStats.AdjustedTactics); ret.StartEndurance = this.EndurancePoints; ret.StartEndurancePercent = this.EndurancePercent; ret.CheckFighterWarning(this); this.RoundStats.AdjustDirty(ret.IsWarned); if (ret.IsWarned) { this.Warnings++; if (this.Warnings > 1) { ret.DeductPointWarning = true; } } ret.DamageDealt = RoundDamage.CalculateRoundDamage(this.RoundStats.AdjustedStats, this.RoundStats.AdjustedTactics, other.RoundStats.AdjustedStats, other.RoundStats.AdjustedTactics, this.RoundStats.Plan.TargetArea, this.RoundStats.DamageAdjustment); this.RoundStats.SetPunchAccuracy(other.RoundStats); return(ret); }