mirror of
https://github.com/osukey/osukey.git
synced 2025-07-02 16:59:53 +09:00
Implement hp at base ScoreProcessor
This commit is contained in:
@ -206,6 +206,9 @@ namespace osu.Game.Rulesets.Scoring
|
||||
private double baseScore;
|
||||
private double bonusScore;
|
||||
|
||||
private double rollingHp;
|
||||
private double rollingMaxHp;
|
||||
|
||||
protected ScoreProcessor()
|
||||
{
|
||||
}
|
||||
@ -332,6 +335,9 @@ namespace osu.Game.Rulesets.Scoring
|
||||
baseScore += result.Judgement.NumericResultFor(result);
|
||||
rollingMaxBaseScore += result.Judgement.MaxNumericResult;
|
||||
}
|
||||
|
||||
rollingHp += HpFactorFor(result.Judgement, result.Type) * result.Judgement.HealthIncreaseFor(result);
|
||||
rollingMaxHp += HpFactorFor(result.Judgement, result.Judgement.MaxResult) * result.Judgement.MaxHealthIncrease;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -356,8 +362,13 @@ namespace osu.Game.Rulesets.Scoring
|
||||
baseScore -= result.Judgement.NumericResultFor(result);
|
||||
rollingMaxBaseScore -= result.Judgement.MaxNumericResult;
|
||||
}
|
||||
|
||||
rollingHp -= HpFactorFor(result.Judgement, result.Type) * result.Judgement.HealthIncreaseFor(result);
|
||||
rollingMaxHp -= HpFactorFor(result.Judgement, result.Judgement.MaxResult) * result.Judgement.MaxHealthIncrease;
|
||||
}
|
||||
|
||||
protected virtual double HpFactorFor(Judgement judgement, HitResult result) => 1;
|
||||
|
||||
private void updateScore()
|
||||
{
|
||||
if (rollingMaxBaseScore != 0)
|
||||
|
Reference in New Issue
Block a user