// Copyright (c) 2007-2018 ppy Pty Ltd . // Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE using osu.Game.Rulesets.Judgements; using osu.Game.Rulesets.Objects.Types; using osu.Game.Rulesets.Scoring; namespace osu.Game.Rulesets.Catch.Judgements { public class CatchJudgement : Judgement { public override HitResult MaxResult => HitResult.Perfect; protected override int NumericResultFor(HitResult result) { switch (result) { default: return 0; case HitResult.Perfect: return 300; } } /// /// Retrieves the numeric health increase of a . /// /// The to find the numeric health increase for. /// The numeric health increase of . protected virtual float HealthIncreaseFor(HitResult result) { switch (result) { default: return 0; case HitResult.Perfect: return 10.2f; } } /// /// Retrieves the numeric health increase of a . /// /// The to find the numeric health increase for. /// The numeric health increase of . public float HealthIncreaseFor(JudgementResult result) => HealthIncreaseFor(result.Type); /// /// Whether fruit on the platter should explode or drop. /// Note that this is only checked if the owning object is also /// public virtual bool ShouldExplodeFor(JudgementResult result) => result.IsHit; } }