Dean Herbert
d0599496bd
Merge pull request #25177 from peppy/spinner-max-display
2023-10-21 11:10:09 +09:00
Dean Herbert
3fb74cb5f9
Move helper method to LegacyRulesetExtensions
and stop applying rounding allowance to catch
...
As discussed, it isn't used in stable like this. Was a mistake.
2023-10-20 18:57:14 +09:00
Dean Herbert
2ba6286470
Merge branch 'master' into fix-circle-radius
2023-10-20 18:53:36 +09:00
Dean Herbert
686c45e21b
Merge branch 'master' into legacy-tick-test-coverage
2023-10-20 16:41:32 +09:00
Dean Herbert
ca3a3f600e
Update visuals of spinner implementations to show MAX score differently
2023-10-20 16:11:09 +09:00
Dean Herbert
181a98e8ef
Remove duplicate definition of bonus text in ArgonSpinner
2023-10-20 16:10:54 +09:00
Dean Herbert
3986cec949
Cap bonus score more correctly
2023-10-20 16:10:54 +09:00
Dean Herbert
f16400929d
Update bindable flow to expose every spin, even after max bonus is reached
2023-10-20 15:38:04 +09:00
Bartłomiej Dach
dcfd6a0a8a
Remove DistancedHitObjectComposer
inheritance from osu! composer
2023-10-19 11:46:30 +02:00
Bartłomiej Dach
3ab083b696
Split IPositionSnapProvider
from IDistanceSnapProvider
...
In preparation to remove `DistancedHitObjectComposer`, split off
`IPositionSnapProvider` from `IDistanceSnapProvider`.
`DistancedHitObjectComposer` was not touching `IPositionSnapProvider`'s
only interface member at all, it was just forwarding it for subclasses
to override to their own leisure.
2023-10-19 11:45:24 +02:00
Dean Herbert
3a5490892c
Centralise and repair circle size calculations game-wide
2023-10-18 19:50:42 +09:00
Dean Herbert
6ae82c5e73
Fix circle scale not matching stable due to missing multiplier
...
This multiplier has to exist.
I'm not guaranteeing that the rest is correct here. Should we be doing
proper cross-testing on this? Maybe, but it's going to be hard to get
right. We could likely check as far as "game pixels", but there's still
a chance that the osu-framework could be doing something weird in the
rest of the hierarchy where playfield scale is involved.
Closes https://github.com/ppy/osu/issues/25162 . Tested to fix the linked
replay.
2023-10-18 18:35:14 +09:00
Dean Herbert
54da6f1048
Merge pull request #25160 from bdach/repeat-arrow-hidden-fade
...
Adjust slider repeat transforms to closer match stable
2023-10-18 18:03:48 +09:00
Dan Balasescu
939b55020c
Merge branch 'master' into legacy-tick-test-coverage
2023-10-18 15:21:31 +09:00
Bartłomiej Dach
f3cda58474
Fix legacy slider repeats becoming much too large on hit
...
They had scale transforms applied to them in two places: the actual
legacy pieces themselves (esp. `LegacyHitCirclePiece`), and on the
`DrawableSliderRepeat` level.
This change moves all of the scale transforms to the skinnable pieces.
Argon and triangles have received a copy of the previous logic each,
so behaviour on those skins should not change.
2023-10-17 14:47:44 +02:00
Bartłomiej Dach
30e5f47007
Instantly fade out slider repeats when hidden is active
2023-10-17 14:15:21 +02:00
Dean Herbert
5341a335a6
Bypass Parent
nullability checks for now
2023-10-17 17:48:45 +09:00
Dean Herbert
0bb95cfa88
Fix incorrect initial rotation transfer value
...
Should have been removed as part of https://github.com/ppy/osu/pull/24360 .
2023-10-16 19:34:55 +09:00
Dean Herbert
10bab61441
Tidy up lastAngle
usage and add assertion of maximum delta
2023-10-16 19:34:22 +09:00
Dean Herbert
159b24acf7
Rename RateAdjustedRotation
to TotalRotation
2023-10-16 18:25:03 +09:00
Dan Balasescu
84be714d6b
Fix large instantaneous delta on first frame
...
Happens when the first update frame comes in before any mouse input.
2023-10-16 18:17:11 +09:00
Bartłomiej Dach
8a4c2624bd
Merge branch 'master' into fix-hr-cs-mania-adjustment
2023-10-13 16:08:54 +02:00
Dean Herbert
0b64852181
Limit sliderscorepoint
to hitcicle dimensions
...
You'd never use anything above this unless crazy.
2023-10-13 15:43:20 +09:00
Dean Herbert
17df2fdf01
Restrict followpoint
size
...
See https://github.com/ppy/osu/issues/24940#issuecomment-1760980461 .
2023-10-13 15:42:49 +09:00
Dean Herbert
a3b21281e6
Add reordering support to match existing diffcalc 100%
2023-10-13 14:25:38 +09:00
Dean Herbert
3849b11644
Fix "Hard Rock" mod affecting CS/AR in osu!mania
...
Closes https://github.com/ppy/osu/issues/25090 .
Not sure if there are other exceptions we should account for here.
2023-10-12 19:48:47 +09:00
Dean Herbert
5ffc25c8e8
Fix potential failure when slider has no ticks
2023-10-12 03:19:43 +09:00
Dean Herbert
63843c79c3
Amend diffcalc to use something closer to the original calculation for now
2023-10-11 21:12:04 +09:00
Dean Herbert
0ca05d986d
Merge pull request #25067 from bdach/approach-circle-cutoff
...
Adjust approach circle maximum size limits for backwards compatibility
2023-10-10 17:05:16 +09:00
Bartłomiej Dach
71c4b138fb
Merge branch 'master' into fix-legacy-score-multipliers-2
2023-10-09 10:53:14 +02:00
Dean Herbert
ad6f04cfb0
Hotfix approach circle cutoff
2023-10-09 10:16:57 +02:00
Bartłomiej Dach
96bb8ed150
Apply feedback regarding maximum osu! element sizings
...
- `default-N` number sprites maximum size increased by 1.25x to a total
of 320x320 to counteract the 0.8x factor applied onto them when
displayed on a hitcircle.
- `sliderb` and parts' maximum size increased to 384x384, to match
`sliderfollowcircle`, as the two are apparently sometimes used
interchangeably by skinners to achieve different visual effects.
2023-10-05 22:33:49 +02:00
Bartłomiej Dach
0ae4a0f11f
Adjust gameplay element maximum size limits for backwards compatibility
...
The new limits were chosen by sampling across over 4000 skins. The
methodology for doing so is described in the following gist:
https://gist.github.com/bdach/6228ba41d128b23d1f89142f404108a3
2023-10-05 20:37:10 +02:00
Dean Herbert
658b6a166f
Fix regression in Tracking
state handling
...
It turns out multiple components depend on `Tracking` eventually
becoming `false` at the end of a slider. With my previous changes, this
was no longer the case (as could be seen by the legacy cursor particles
test failure, and heard by slider slide taking too long to stop).
2023-10-04 16:11:40 +09:00
Dean Herbert
d14d885d19
Add test coverage of very fast slider
2023-10-04 14:58:05 +09:00
Dan Balasescu
48209872bf
Fix spinner requirements being susceptible to FP precision
2023-10-04 13:53:33 +09:00
Dean Herbert
9361b1879c
Add note about early return in DrawableSliderBall.Update
2023-10-04 13:45:26 +09:00
Dean Herbert
8d91991214
Fix difficulty calculation not correct handling slider leniency anymore
2023-10-04 13:45:26 +09:00
Dan Balasescu
854b797ab5
Merge branch 'master' into legacy-tick-not-so-legacy-after-all
2023-10-04 10:52:13 +09:00
Dan Balasescu
a120ea8464
Merge branch 'master' into fix-legacy-score-multipliers-2
2023-10-04 01:19:33 +09:00
Dean Herbert
69ae370e82
Merge branch 'master' into legacy-tick-test-coverage
2023-10-03 19:37:32 +09:00
Dean Herbert
c4992d3479
Fix one case of difficulty calculation no longer accounting for leniency
2023-10-03 19:37:13 +09:00
Dean Herbert
70ec4b060a
Rename weird diffcalc parameter name
2023-10-03 19:20:39 +09:00
Dean Herbert
9e1fec0213
Fix potential out-of-order tail and ticks
2023-10-03 18:52:20 +09:00
Dean Herbert
9a3c21c320
Change comparison of timeOffset
to greater-than (in line with others)
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2023-10-03 18:12:55 +09:00
Dean Herbert
0086759395
Fix slider tracking state being set to false
after slider end
2023-10-03 18:12:55 +09:00
Dean Herbert
16fcc4eaaa
Fix incorrect anchor/origin causing rotation to look wrong on legacy skin arrows
2023-10-03 12:32:52 +09:00
Dean Herbert
3aa51301e8
Add null checks in disposal flow
2023-10-02 22:28:33 +09:00
Dean Herbert
94e49a34fd
Adjust legacy reverse arrow implementation to match stable more closely
2023-10-02 22:26:57 +09:00
Dean Herbert
f0070eecf1
Add rotation support for very old skins
2023-10-02 20:09:39 +09:00