1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-24 22:32:55 +08:00
Commit Graph

363 Commits

Author SHA1 Message Date
Bartłomiej Dach
fb80d76b4a
Apply further changes to remove remaining weirdness 2024-02-05 13:37:38 +01:00
Bartłomiej Dach
efe6bb25b1
Refactor result application around again to remove requirement for fields
Co-authored-by: Dean Herbert <pe@ppy.sh>
2024-02-05 13:21:01 +01:00
Chandler Stowell
93bd3ce5ae update DrawableHitCircle.ApplyResult to pass this to its callback 2024-01-25 11:25:41 -05:00
Chandler Stowell
d2775680e6 use stack to pass action state when applying hit results
this removes closure allocations
2024-01-24 13:13:45 -05:00
Dean Herbert
e0c27510f2
Remove remaining usage of NotePerfectBonus 2023-12-20 19:47:36 +09:00
Dan Balasescu
104fbbde94
Change mania scoring to match ScoreV2 2023-12-20 18:35:45 +09:00
Bartłomiej Dach
b321d556b6
Enforce minimum gameplay sample volume of 5% 2023-10-20 15:50:13 +02:00
Dean Herbert
4f1546c474
Rename PerfectBonusNote to NotePerfectBonus 2023-10-16 15:14:28 +09:00
Dean Herbert
1a957364ae
Add empty hit windows on PefectBonusNote 2023-10-16 14:58:49 +09:00
Dean Herbert
43f619f92a
Add DisplayResult flag and remove unnecessary AlwaysPresent 2023-10-16 14:57:58 +09:00
Dean Herbert
14fedffcc1
Fix MissForcefully not considering the bonus object 2023-10-16 14:53:36 +09:00
Dean Herbert
e85c039722
Adjust method flow to hopefully be more legible 2023-10-16 13:31:14 +09:00
Dean Herbert
ddbda69751
Remove nullability of bonusNote 2023-10-16 13:14:58 +09:00
Dean Herbert
125f28219d
Fix hodl tail notes not correctly handling nested bonus judgement 2023-10-13 17:36:19 +09:00
Dean Herbert
94b64044e0
Add nested bonus judgement to DrawableNote for perfect bonus score 2023-10-13 17:01:48 +09:00
Bartłomiej Dach
3f29f27cd4
Assign empty hit windows to HoldNoteBody
It's not a timed object, so following precedent, it should have empty
hitwindows.

This is not actually just aesthetics; several components check whether a
hitobject has empty hitwindows to determine whether to include it on
various HUD displays and results screen components where timed objects
are explicitly involved.
2023-10-11 19:40:55 +02:00
Dean Herbert
8dc9453d8d
Apply some xmldoc and structural changes 2023-10-10 16:59:25 +09:00
Dan Balasescu
f0da7f016d
Actually use the judgement 2023-10-09 11:49:54 +09:00
Dan Balasescu
9415fe4446
Add mania hold note body + combo break judgement 2023-10-09 09:47:00 +09:00
Dan Balasescu
c60f13dd92 Remove mania hold note ticks 2023-08-31 17:30:27 +09:00
Dan Balasescu
6a7b0786c9 Add barline pooling for mania 2023-08-15 13:33:49 +09:00
Bartłomiej Dach
9dae806734
Use IsRewinding in a few more places 2023-07-08 13:32:24 +02:00
Dean Herbert
e0fc97bb93 Replace various local implementations of rewinding checks with new property 2023-07-07 15:21:24 +09:00
Dean Herbert
0ab0c52ad5 Automated pass 2023-06-24 01:00:03 +09:00
Dean Herbert
3b1f92d8b8 Fix fix logic causing further regression on release 2023-06-17 01:37:09 +09:00
Dean Herbert
b5de109cb3 Fix osu!mania hold notes sometimes looking incorrect after rewind 2023-06-16 14:54:19 +09:00
Bartłomiej Dach
f069f982d4
Merge branch 'master' into mania-barlines-behind-notes 2023-06-07 21:43:39 +02:00
Dean Herbert
d57c2ab7e4 Fix osu!mania barlines showing in front of notes
Closes #23412.
2023-06-07 14:23:23 +09:00
Salman Ahmed
62cb6a98ca Remove redundant nullable suppression directives 2023-06-07 08:20:41 +03:00
Dean Herbert
98f35f7481 Fix osu!mania hold notes snapping to judgement area too early on early hits
Closes https://github.com/ppy/osu/issues/23515.
2023-06-01 16:06:35 +09:00
Bartłomiej Dach
1ff1730948
Remove no-longer-correct remark 2023-05-08 22:35:41 +02:00
Bartłomiej Dach
3f45948664
Merge branch 'master' into fix-mania-head-note-animation 2023-05-08 22:23:01 +02:00
Dean Herbert
27c10cbdb7 Remove clamping of sizingContainer in DrawableHoldNote to fix head note alignment 2023-05-08 18:14:07 +09:00
Dean Herbert
814f0b3fed Add back early return in OnReleased for safety 2023-05-08 15:43:11 +09:00
Dean Herbert
6a59ded1ba Move logic to Update instead 2023-05-03 15:18:37 +09:00
Dean Herbert
4013cdcfa8 Merge branch 'master' into mania-fix-hold-note-rewind 2023-05-03 15:04:59 +09:00
OliBomby
d97daee96b remove all non-test usage of SampleControlPoint 2023-04-26 13:55:39 +02:00
Dean Herbert
5aebbac6c5 Fix osu!mania hold note animations not correctly re-applying after rewind
There's early exit logic in `OnPressed`/`OnReleased` for the sake of
keeping order correct, but this doesn't account for the fact that
`DrawableHitObject` resets all animations when the hit state changes.

A bit of an ugly workaround, but seems to work as expected.
2023-03-14 18:15:19 +09:00
Dean Herbert
300d81c46b Add hitting layer to fix hit lighting not being applied to tail piece
Taken from https://github.com/ppy/osu/pull/22820#issuecomment-1462626898.
2023-03-14 17:29:19 +09:00
Dean Herbert
ed3ff62e4f Add note about why bodyPiece sizing is done as it is
I think we're going to have to change this as it's quite limiting in
what you can do with osu!mania skin implementation, but for now I want
to leave a note as to why this is done, because each time I have to
trial and error check what breaks when adjusting it.
2023-03-09 20:26:49 +09:00
Dean Herbert
da8ab7143b
Merge branch 'master' into maximum-judgement-offset-in-hit-object 2023-02-15 14:48:15 +09:00
Dean Herbert
74ab036f3e Refactor SkinnableSound.Samples to be non-nullable 2023-01-27 19:32:30 +09:00
ekrctb
11e1b22bf5 Move MaximumJudgementOffset to HitObject
We want to access this property for computing lifetime
2023-01-19 21:23:55 +09:00
Dan Balasescu
7bc8908ca9 Partial everything 2022-11-27 00:00:27 +09:00
Dean Herbert
57723107dd Fix osu!mania hold notes occasionally getting in a visually incorrect hit state
To correctly end a mania hold note, `endHold()` needs to be called. This
was not happening in a very specific scenario:

- The hold note's head is not hit
- The user pressed the column's key within the hold note's tail's window,
  but does so to hit the next object (a note in proximity to the hold note's tail).
- The hit policy forces a miss on the hold note, but `endHold()` is not called
- `CheckForResult` is not called after this point due to `Judged` being `true`.

Closes #21311.
2022-11-22 16:15:34 +09:00
Dean Herbert
1aa0e40f2f Add "Component" prefix to lookup naming 2022-11-09 17:46:43 +09:00
Dean Herbert
c908969d9b Rename ISkinComponent to ISkinLookup 2022-11-09 17:46:43 +09:00
ekrctb
92ab39f5c2 Fix hold note disappear instantly 2022-10-25 19:16:23 +09:00
Dean Herbert
f060e6a780 Implement hold "sliding" samples in osu!mania 2022-10-11 16:31:37 +09:00
Dean Herbert
52ad766f86 Remove manual binding of nested objects in DrawableManiaHitObject
This is now handled by `Column` itself. Leaving the logic here as well
will cause a circular bindable flow and stack overflow.
2022-10-07 18:25:55 +09:00