From d252af8ab45f4048525da834bbc6f2450b3b5454 Mon Sep 17 00:00:00 2001 From: Akash Mozumdar Date: Thu, 31 Aug 2017 02:36:25 -0400 Subject: [PATCH 1/7] basic implementation of hp --- .../Scoring/OsuScoreProcessor.cs | 20 +++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs b/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs index 856ca0c98d..df97e06118 100644 --- a/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs +++ b/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs @@ -27,7 +27,7 @@ namespace osu.Game.Rulesets.Osu.Scoring { base.Reset(); - Health.Value = 1; + Health.Value = 0.5; Accuracy.Value = 1; scoreResultCounts.Clear(); @@ -56,13 +56,21 @@ namespace osu.Game.Rulesets.Osu.Scoring scoreResultCounts[judgement.Score] = scoreResultCounts.GetOrDefault(judgement.Score) + 1; comboResultCounts[judgement.Combo] = comboResultCounts.GetOrDefault(judgement.Combo) + 1; } - - switch (judgement.Result) + switch (judgement.Score) { - case HitResult.Hit: - Health.Value += 0.1f; + case OsuScoreResult.Hit300: + Health.Value += 0.01f; break; - case HitResult.Miss: + + case OsuScoreResult.Hit100: + Health.Value -= 0.01f; + break; + + case OsuScoreResult.Hit50: + Health.Value -= 0.05f; + break; + + case OsuScoreResult.Miss: Health.Value -= 0.2f; break; } From cbc35e0cf3040caff865a33b5a64c3e018951b0d Mon Sep 17 00:00:00 2001 From: Akash Mozumdar Date: Thu, 31 Aug 2017 04:31:48 -0400 Subject: [PATCH 2/7] implemented hp --- .../Scoring/OsuScoreProcessor.cs | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs b/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs index df97e06118..3a06ef2260 100644 --- a/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs +++ b/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs @@ -23,6 +23,14 @@ namespace osu.Game.Rulesets.Osu.Scoring { } + + float beatmapHp = 0; + + protected override void ComputeTargets(Game.Beatmaps.Beatmap beatmap) + { + beatmapHp = beatmap.BeatmapInfo.Difficulty.DrainRate; + } + protected override void Reset() { base.Reset(); @@ -59,19 +67,19 @@ namespace osu.Game.Rulesets.Osu.Scoring switch (judgement.Score) { case OsuScoreResult.Hit300: - Health.Value += 0.01f; + Health.Value += (10.2 - beatmapHp) * 0.02; break; case OsuScoreResult.Hit100: - Health.Value -= 0.01f; + Health.Value += (8 - beatmapHp) * 0.02; break; case OsuScoreResult.Hit50: - Health.Value -= 0.05f; + Health.Value += (4 - beatmapHp) * 0.02; break; case OsuScoreResult.Miss: - Health.Value -= 0.2f; + Health.Value -= beatmapHp * 0.04; break; } } From af2f45a98058f175b52b89703478c10cd0fb8d34 Mon Sep 17 00:00:00 2001 From: Akash Mozumdar Date: Thu, 31 Aug 2017 04:44:00 -0400 Subject: [PATCH 3/7] slight edits --- osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs b/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs index 3a06ef2260..a0662ab51d 100644 --- a/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs +++ b/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs @@ -24,7 +24,7 @@ namespace osu.Game.Rulesets.Osu.Scoring } - float beatmapHp = 0; + float beatmapHp; protected override void ComputeTargets(Game.Beatmaps.Beatmap beatmap) { @@ -78,6 +78,10 @@ namespace osu.Game.Rulesets.Osu.Scoring Health.Value += (4 - beatmapHp) * 0.02; break; + case OsuScoreResult.SliderTick: + Health.Value += System.Math.Max(7 - beatmapHp, 0) * 0.01; + break; + case OsuScoreResult.Miss: Health.Value -= beatmapHp * 0.04; break; From 04596fee6122886b6488b0dc547b0a65bde61350 Mon Sep 17 00:00:00 2001 From: Akash Mozumdar Date: Thu, 31 Aug 2017 08:26:06 -0400 Subject: [PATCH 4/7] Update OsuScoreProcessor.cs --- osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs b/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs index a0662ab51d..7760e773d3 100644 --- a/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs +++ b/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs @@ -35,7 +35,7 @@ namespace osu.Game.Rulesets.Osu.Scoring { base.Reset(); - Health.Value = 0.5; + Health.Value = 1; Accuracy.Value = 1; scoreResultCounts.Clear(); From 472710e5db861b3065bbcc7554ad92eb4d1371e4 Mon Sep 17 00:00:00 2001 From: Akash Mozumdar Date: Thu, 31 Aug 2017 21:35:30 -0400 Subject: [PATCH 5/7] trim whitespace --- osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs b/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs index a0662ab51d..a079eb4c80 100644 --- a/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs +++ b/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs @@ -23,7 +23,6 @@ namespace osu.Game.Rulesets.Osu.Scoring { } - float beatmapHp; protected override void ComputeTargets(Game.Beatmaps.Beatmap beatmap) From c6b226b017f7a9212a195164983202ddbcf0bf42 Mon Sep 17 00:00:00 2001 From: Akash Mozumdar Date: Fri, 1 Sep 2017 15:32:03 -0400 Subject: [PATCH 6/7] refactor --- osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs b/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs index db39629d45..a66ac3298f 100644 --- a/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs +++ b/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs @@ -23,7 +23,7 @@ namespace osu.Game.Rulesets.Osu.Scoring { } - float beatmapHp; + private float beatmapHp; protected override void ComputeTargets(Game.Beatmaps.Beatmap beatmap) { From ed0f2a654baccd5425c7a4b0ff8629cd32e8dae2 Mon Sep 17 00:00:00 2001 From: Dean Herbert Date: Mon, 4 Sep 2017 18:51:50 +0900 Subject: [PATCH 7/7] Rename variable --- osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs b/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs index a66ac3298f..8ba92a8d30 100644 --- a/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs +++ b/osu.Game.Rulesets.Osu/Scoring/OsuScoreProcessor.cs @@ -23,11 +23,11 @@ namespace osu.Game.Rulesets.Osu.Scoring { } - private float beatmapHp; + private float hpDrainRate; protected override void ComputeTargets(Game.Beatmaps.Beatmap beatmap) { - beatmapHp = beatmap.BeatmapInfo.Difficulty.DrainRate; + hpDrainRate = beatmap.BeatmapInfo.Difficulty.DrainRate; } protected override void Reset() @@ -66,23 +66,23 @@ namespace osu.Game.Rulesets.Osu.Scoring switch (judgement.Score) { case OsuScoreResult.Hit300: - Health.Value += (10.2 - beatmapHp) * 0.02; + Health.Value += (10.2 - hpDrainRate) * 0.02; break; case OsuScoreResult.Hit100: - Health.Value += (8 - beatmapHp) * 0.02; + Health.Value += (8 - hpDrainRate) * 0.02; break; case OsuScoreResult.Hit50: - Health.Value += (4 - beatmapHp) * 0.02; + Health.Value += (4 - hpDrainRate) * 0.02; break; case OsuScoreResult.SliderTick: - Health.Value += System.Math.Max(7 - beatmapHp, 0) * 0.01; + Health.Value += System.Math.Max(7 - hpDrainRate, 0) * 0.01; break; case OsuScoreResult.Miss: - Health.Value -= beatmapHp * 0.04; + Health.Value -= hpDrainRate * 0.04; break; } }