1
0
mirror of https://github.com/ppy/osu.git synced 2024-09-22 12:07:23 +08:00
Commit Graph

5186 Commits

Author SHA1 Message Date
Salman Ahmed
d614e745b8 Calculate spinner ticks as "whole spins" without arbitrary factors 2023-08-27 01:27:31 +03:00
Salman Ahmed
e77581f641 wholeSpins -> currentSpins 2023-08-27 01:27:31 +03:00
Bartłomiej Dach
7f215f163f
Use reduced hittable range with autopilot active 2023-08-24 08:52:49 +02:00
Bartłomiej Dach
ed2b1a0754
Contain entirety of legacy notelock badness inside the hit policy 2023-08-24 08:52:49 +02:00
Bartłomiej Dach
a045cb71fc
Add assertions checking action type taken by legacy hit policy 2023-08-24 08:52:49 +02:00
Bartłomiej Dach
b777b34cc0
Merge branch 'master' into stable-notelock 2023-08-24 08:43:59 +02:00
Dan Balasescu
e8337c592a Update framework and apply changes to support masking SSBO 2023-08-22 12:50:13 +09:00
Bartłomiej Dach
3c191ff9ea
Expand allowable rotation range to [-360, 360] 2023-08-19 15:09:59 +02:00
Dean Herbert
63080d049f Adjust icons slightly 2023-08-17 19:08:18 +09:00
Dean Herbert
0858bef66e Update SmokeSegment in line with framework vertex changes 2023-08-17 18:12:04 +09:00
Bartłomiej Dach
19f892687a
Add precise rotation control to osu! editor 2023-08-16 11:37:52 +02:00
Bartłomiej Dach
262f25dce8
Make SelectionRotationHandler a Component 2023-07-30 20:18:33 +02:00
Bartłomiej Dach
821cd08f34
Merge branch 'master' into selection-operations-refactor 2023-07-30 19:29:06 +02:00
Bartłomiej Dach
c21167e2ab
Merge pull request #24360 from peppy/spinner-faster-rotation
Change spinner rotation animation to match input 1:1
2023-07-29 00:48:56 +02:00
Dean Herbert
2e9379474d Change spinner rotation animation to match input 1:1 2023-07-25 19:21:20 +09:00
Dean Herbert
eac6271bd0 Add new property to avoid overlapping usages 2023-07-25 18:14:03 +09:00
Dean Herbert
2f7d38d98b Merge branch 'master' into fix-editor-blueprint-input-extension 2023-07-25 18:14:02 +09:00
Bartłomiej Dach
aec3ca250c
Migrate SelectionHandler to use SelectionRotationHandler 2023-07-23 20:56:22 +02:00
Bartłomiej Dach
ba904fd77b
Migrate osu! rotation handling to SelectionRotationHandler 2023-07-23 20:56:22 +02:00
Bartłomiej Dach
4622255cc7
Move out helper methods to static class 2023-07-23 18:24:20 +02:00
Dean Herbert
b58354ac64 Fix playfield getting cut off (again) at tall aspect ratios 2023-07-21 15:20:20 +09:00
Liam DeVoe
6a81230298 rename ObjectOrderedHitPolicy to LegacyHitPolicy 2023-07-19 14:44:28 -04:00
Liam DeVoe
2c97ac7410 convert AliveObjects to list in hit policy instead of globally 2023-07-19 14:28:04 -04:00
Dean Herbert
4a6a5b174a Fix editor blueprints being selectable for too long when hit markers are enabled
Addresses https://github.com/ppy/osu/discussions/24163.
2023-07-19 14:59:22 +09:00
Liam DeVoe
768d7b5e1c correct implementation of stable notelock 2023-07-17 23:31:21 -04:00
Dean Herbert
dd8774a640 Vertically centre the editor osu! playfield 2023-07-14 13:21:28 +09:00
Bartłomiej Dach
d5912165e9
Merge branch 'master' into results-screen-component-metrics 2023-07-13 19:53:52 +02:00
Dean Herbert
9ad63bae37 Add missing heading for statistics section in results screen 2023-07-13 18:50:52 +09:00
Dean Herbert
947b40149f Adjust metrics of SimpleStatisticTable 2023-07-13 18:45:32 +09:00
Dean Herbert
4f089eb5a5 Adjust metrics of AccuracyHeatmap 2023-07-13 18:30:57 +09:00
Dean Herbert
87570ed238 Fix incorrect slider stacking on very old beatmaps
Closes https://github.com/ppy/osu/issues/24185

The stable code has had a bug in this logic forever. So we'll need to
reimplement the bug.

Basically, sliders have to have `UpdateCalculations` run in order to
have a correct `Position2` and `EndTime`, but this wasn't being called
in the inner loop before use of `EndTime` at
1531237b63/osu!/GameplayElements/HitObjectManager.cs#L1813.

To fix this, we use `StartTime` in the inner loop to reproduce the bug.
2023-07-12 17:35:03 +09:00
Bartłomiej Dach
7be5e0e978
Implement back-and-forth conversion of ModScoreV2 and LegacyMods 2023-07-09 16:15:21 +02:00
Bartłomiej Dach
e9ecad9839
Add failing test cases covering NaN-timing-point sliders 2023-07-08 23:24:38 +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
1629024111 ILegacyScoreProcessor -> ILegacyScoreSimulator 2023-07-04 17:32:54 +09:00
Dan Balasescu
c6ad184d94 Move Ruleset method to ILegacyRuleset interface 2023-06-29 17:24:37 +09:00
Dan Balasescu
09bc8e45de Refactoring 2023-06-28 16:14:32 +09:00
Dan Balasescu
5f350aa66f Fix float division
Firstly, this is intended to be a float division.

Secondly, dividing integers by 0 results in an exception, but dividing
non-zero floats by 0 results in +/- infinity which will be clamped to
the upper range.
In particular, this occurs when the beatmap has 1 hitobject (0 drain
length).
2023-06-27 17:14:35 +09:00
Dan Balasescu
a9c65d200a Initial conversion of scores 2023-06-26 22:19:01 +09:00
Dan Balasescu
e1d723a2cc Merge branch 'master' into diffcalc-total-scorev1 2023-06-26 14:32:14 +09:00
Bartłomiej Dach
e3a89a6273
Fix remaining obvious CI inspections 2023-06-24 16:07:01 +02:00
Dan Balasescu
5fadadc3d0 Merge branch 'master' into diffcalc-total-scorev1 2023-06-24 02:46:15 +09:00
Dean Herbert
df5b389629 Manual fixes to reduce warnings to zero 2023-06-24 01:52:53 +09:00
Dan Balasescu
06565871d6 Add flag to disable computing legacy scoring values 2023-06-24 01:03:18 +09:00
Dean Herbert
0ab0c52ad5 Automated pass 2023-06-24 01:00:03 +09:00
Dan Balasescu
87447f41d0 Fix incorrect calculation of difficulty 2023-06-24 00:58:45 +09:00
Bartłomiej Dach
6d32206a08
Fix slider tails receiving wrong colours
Only visually apparent on legacy skins.
2023-06-19 17:47:01 +02:00
Dan Balasescu
bfa449e47a Adjust attribute data 2023-06-19 21:38:13 +09:00
Dean Herbert
0900cebc0d Avoid doing expensive colour fetch operation every update 2023-06-19 20:12:17 +09:00
Dean Herbert
aa96fefae2 Merge branch 'master' into snap-colour-mod 2023-06-19 20:01:36 +09:00
Dan Balasescu
0844a21a51 Merge branch 'master' into diffcalc-total-scorev1 2023-06-15 19:33:29 +09:00
Dan Balasescu
b9f485b551 Merge classes + split out 2023-06-13 02:32:54 +09:00
Dan Balasescu
446807e7f6 Add combo score / bonus score attributes 2023-06-12 23:00:29 +09:00
Dan Balasescu
024a64e52c
Merge pull request #23866 from bdach/fix-judgement-processing-order
Fix not being able to receive full score for extremely short sliders with repeats
2023-06-12 15:04:08 +09:00
Dean Herbert
bddb91dc0a Adjust adjustment to 1px based on review feedback
Also split out `Size` variable for clarity
2023-06-12 14:24:39 +09:00
Dean Herbert
03a5b701e9
Fix incorrect inline comment
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2023-06-12 14:20:54 +09:00
Bartłomiej Dach
7e5533e205
Fix not being able to receive full score for extremely short sliders with repeats
Closes #23862.

Score V2 is a scoring algorithm, which aside from the raw numerical
values of each judgement, incorporates a combo component, wherein each
judgement's "combo score" is derived from both the raw numerical value
of the object and the current combo after the given judgement. In
particular, this means that Score V2 is sensitive to the _order_ of
judging objects, as if two objects with the same start time are judged
using different ordering, they can end up having a different "combo
score".

The issue that this change is fixing is an instance of one such
reordering. Upon inspection, it turned out that the simulated autoplay
run, which is used to determine max possible score so that it can be
standardised to 1 million again, was processing a slider repeat before a
slider tail circle, while actual gameplay was processing the same slider
repeat _after_ the slider tail circle.

The cause of that behaviour is unfortunately due to `LegacyLastTick`.
The sliders which cause the issue are extremely short. Stable had a
behaviour, in which to provide leniency, slider tails were artificially
offset back by 36ms. However, if the slider is not long enough to make
this possible, the last tick is placed in the middle of the slider. If
that slider also happens to have exactly 1 repeat, then this means that
the last tick and the repeat have the same time instant.

Because of the time equality, what begins to matter now is the _order_
of processing the elements of the drawable slider in the hierarchy. For
the purposes of legacy skins, tail circles were moved below ticks in
fce3eacd7d - but in this particular case,
it means that the order of processing the slider elements is now
inadvertently inverted, causing the entire debacle.

While the fact that scoring depends on order of processing of visuals is
suboptimal, there isn't a great way to address this without significant
restructuring. Due to the structure of processing judgements currently
in place, in which each judgement is processed independently from others
by its corresponding drawable hit object, this is probably the best that
can be done for the time being at least.
2023-06-10 12:14:08 +02:00
Dan Balasescu
4b8c4bd503 Fix black jaggies around argon hitcircles 2023-06-10 01:54:13 +09:00
Dean Herbert
95ad18ed2e Reduce the radius of note-to-note snapping in osu! editor
Stable uses `0.15f`, but for whatever reason that feels too large still.

I've ballparked this.

Addresses https://github.com/ppy/osu/discussions/23806.
2023-06-08 17:44:33 +09:00
John Biddle
d07437f810 Added recommendations from bdach:
Fixed null checking in ApplyToDrawableHitObject
Renamed mod to "Synesthesia"
Moved to the "Fun" mod category
2023-06-08 00:52:28 -07:00
Dan Balasescu
d10c63ed2d Fix difficulty calculation when mods are involved 2023-06-08 16:29:34 +09:00
Salman Ahmed
62cb6a98ca Remove redundant nullable suppression directives 2023-06-07 08:20:41 +03:00
Dean Herbert
247fa088db Add IHasNoTimedInputs interface to scope change further 2023-06-06 22:22:42 +09:00
Dan Balasescu
77c745cc94 "TotalScoreV1" -> "LegacyTotalScore" 2023-06-06 17:25:28 +09:00
Bartłomiej Dach
331e90f720
Merge branch 'master' into tidy-results-grid-usage 2023-06-03 19:45:23 +02:00
Dean Herbert
a5fd833214 Fix "bubbles" mod not adding pool to hierarchy (and constructing too early) 2023-06-02 23:01:03 +09:00
Dan Balasescu
e402c6d2b4 Write max combo attribute from base class 2023-06-02 21:53:25 +09:00
Dan Balasescu
02111e3854 Implement ScoreV1 calculation for OsuRuleset 2023-06-02 17:36:45 +09:00
Dean Herbert
985604fab5 Return StatisticItems rather than StatisticRows from ruleset
There were no usages of more than one column being provided per row, so
it seemed like unnecessarily complexity. I'm currently trying to reduce
complexity so we can improve the layout of the results screen, which
currently has up to three levels of nested `GridContainer`s.

Of note, I can't add backwards compatibility because the method
signature has not changed in `Ruleset` (only the return type). If we do
want to keep compatibility with other rulesets, we could designate a new
name for the updated method.
2023-06-01 14:35:15 +09:00
Dean Herbert
e830b96e61 Add back required override to make AccuracyHeatmap work 2023-06-01 13:26:47 +09:00
Bartłomiej Dach
aaf50c47a7
Merge pull request #23696 from peppy/fix-autopilot-ripples
Fix cursor ripples appearing in a weird place when "autopilot" mod is enabled
2023-05-30 23:29:30 +02:00
John
ed850196d9 Reverted to applying the color change in OnUpdate, removed EnableComboColour flag from DrawableHitObject.cs 2023-05-30 01:43:08 -07:00
Dean Herbert
3e94d4bb5a Fix cursor ripples appearing in a weird place when "autopilot" mod is enabled 2023-05-30 15:18:23 +09:00
Dean Herbert
1558723420 Merge branch 'master' into scorev2 2023-05-29 20:06:32 +09:00
Bartłomiej Dach
53c91349fe
Merge branch 'master' into slider-control-point-no-distance-snap 2023-05-26 19:52:54 +02:00
Bartłomiej Dach
e35201cb99
Don't snap non-head slider nodes to distance grid during placement either
1cd69220ef only disabled snapping the
aforementioned nodes to distance grid for already-placed sliders.
`SliderPlacementBlueprint` has its own logic for placement, so the fix
needs to be mirrored there too.
2023-05-26 19:51:20 +02:00
Bartłomiej Dach
e8db0739fa
Merge pull request #23577 from peppy/accuracy-heatmap-text-hints
Show text hints on the accuracy heat map to better explain direction
2023-05-25 17:00:25 +02:00
Dean Herbert
1cd69220ef Fix slider path placement snapping non-head nodes to distanced snapping grid
As discussed at https://github.com/ppy/osu/discussions/23531.
2023-05-25 21:41:43 +09:00
Dean Herbert
804671ca74 Split out grid snapping modes into "relative" and "global" types 2023-05-25 21:41:19 +09:00
Dan Balasescu
fee3d43596 Merge branch 'master' into scorev2 2023-05-23 19:07:54 +09:00
Dean Herbert
c8303d55cd Adjust text and alignment 2023-05-23 16:21:56 +09:00
Bartłomiej Dach
afdddb0195
Merge pull request #23582 from peppy/placement-blueprint-timeline-combo-fixes
Fix timeline blueprint display not showing correct combo number / colour during placement
2023-05-20 15:02:55 +02:00
Dan Balasescu
30a296bd09 Rename parameters 2023-05-19 17:27:02 +09:00
Dan Balasescu
d74bf2a096 Refactor for safety 2023-05-19 14:37:26 +09:00
Dan Balasescu
2ae34530f7 Avoid NaN values during ApplyBeatmap processing() 2023-05-19 14:14:34 +09:00
Dan Balasescu
8b56a3f87d Remove ClassicScoreMultiplier and DefaultScoreProcessor 2023-05-19 12:24:52 +09:00
Dean Herbert
b58ab28765 Make EditorClock non-nullable in PlacementBlueprint 2023-05-17 21:40:52 +09:00
Dean Herbert
3054348c73 Add text hints to accuracy heat map to better describe travel direction 2023-05-17 15:22:48 +09:00
Dean Herbert
9fe787acd8 Enable NRT on AccuracyHeatmap 2023-05-17 15:03:59 +09:00
Dean Herbert
dc51d5ecf3 Rename GetSampleInfo to better describe what method does
Also add full xmldoc
2023-05-17 14:07:48 +09:00
John
b7dc8d49ba Removed import for Allocation and other unnecessary [Resolved] tag missed in last commit 2023-05-16 21:14:55 -07:00
John
e2633ae993 Removed unnecessary [Resolved] attribute (thanks bdach)
Moved accent color assignment from OnUpdate to ApplyCustomUpdateState. In order to get this to work, a flag needed to be added to DrawableHitObject.cs to disable combo color updates also being applied.
2023-05-16 21:08:56 -07:00
Bartłomiej Dach
a6ddb107cd
Merge branch 'master' into master 2023-05-14 19:45:31 +02:00
alix
d503312788 updates and add changes 2023-05-14 13:37:44 -04:00
John
7a907f7207 Code quality improvements (thanks to ItsShamed): Removed #nullable disable, fixed incorrect LocalisableString, removed incorrect dependency injection for OsuColour, fixed nullable dependency for IBeatmap
Removed unnecessary usage of "this." caught by the CI code quality check
2023-05-12 22:13:39 -07:00
John
24f07633f3 Formatting fixes 2023-05-12 19:43:28 -07:00
John
e5884016ab Initial commit for the snap colour mod. Implements basic functionality. 2023-05-12 19:07:25 -07:00
Dean Herbert
f443cfb93e Move blueprint validity conditions to allow more correct external usage of EndPlacement
Until now, these were haphazardly enforce inline in blueprint
implementations. The only thing stopping complete breakage is that
`EndPlacement` wasn't called (too much) from outside the blueprint,
leaving them responsible for their own placement.

By moving this conditional out of the provided paramters to
`EndPlacement`, it allows more flexible usage of that method externally.
Coming in a future PR.
2023-05-12 16:02:22 +09:00
alix
b3a5e4d305 nest class outside of OsuModRandom 2023-05-12 00:29:00 -04:00
alix
53ab780796 fix indents 2023-05-11 23:50:45 -04:00
alix
e50cab9e81 move class to the bottom of the file 2023-05-11 23:48:31 -04:00
alix
a4954e64ac fix precision from making mouse input also go 0.5 2023-05-11 23:45:41 -04:00
js1086
3bce7ac589 Copy SliderVelocity to strict tracking sliders 2023-05-11 19:07:22 +01:00
alix
4732c8a06c fix angle sharpness slider value from not always scaling by 0.5 2023-05-11 13:46:07 -04:00
Dan Balasescu
a7b623f52a Reimplement classic scoring mode 2023-05-09 20:21:38 +09:00
Dan Balasescu
3c3c812ed6 Initial implementation of ScoreV2 2023-05-09 19:33:33 +09:00
Bartłomiej Dach
808a44ac0c
Resolve code quality inspection 2023-05-06 16:23:00 +02:00
Bartłomiej Dach
a45f0b65a1
Merge pull request #23372 from peppy/fix-slider-end-circle-appear-delay
Fix fade in delay for first slider end circle being incorrect when snaking disabled
2023-05-03 19:06:39 +02:00
Bartłomiej Dach
2add8e119f
Merge pull request #23379 from peppy/legacy-skin-reverse-arrow-colour-flip
Add support for flipping colour of reverse arrow on legacy default skin when combo colour is too bright
2023-05-03 08:48:32 +02:00
Dean Herbert
6b017ac05f
Merge pull request #23308 from OliBomby/sample-control-points
Remove SampleControlPoint and DifficultyControlPoint from HitObject
2023-05-03 14:21:51 +09:00
Dean Herbert
9c4312b407 Add support for flipping colour of reverse arrow on legacy default skin when combo colour is too bright 2023-05-03 12:37:07 +09:00
Dean Herbert
e42b0cc5b1
Merge pull request #23370 from peppy/fix-editor-playfield-padding
Add more padding around playfield in editor to avoid overlap with tool areas
2023-05-03 11:44:55 +09:00
Bartłomiej Dach
03459a4f19
Merge pull request #23371 from peppy/argon-slider-ball-fade-faster
Increase the rate of slider ball fade on argon skins to match other implementations
2023-05-02 19:03:47 +02:00
Dean Herbert
e44672bdd5 Avoid using Schedule in transforms (doesn't handle rewind well) 2023-05-02 17:08:49 +09:00
Dean Herbert
7830711c8e Tidy up various code quality issues in OsuModBubbles 2023-05-02 17:08:37 +09:00
Dean Herbert
fb0e90913d Ensure lifetime start is also updated when reverting judgements 2023-05-02 17:07:12 +09:00
Dean Herbert
b2b9f2a036 Merge branch 'master' into bubble_mod_implementation_clean 2023-05-02 16:59:55 +09:00
Dean Herbert
a619812cab Fix nullability and remove extra preempt from SliderEndCircle calculation 2023-05-02 16:36:43 +09:00
Dean Herbert
1a04be15c7 Fix fade in delay for first slider end circle being incorrect when snaking disabled 2023-05-02 16:27:17 +09:00
Dean Herbert
bd72c67d68 Increase the rate of slider ball fade on argon skins to match other implementations 2023-05-02 15:47:35 +09:00
Dean Herbert
67f83f246b Add more padding around playfield in editor to avoid overlap with tool areas
Closes #23130.
2023-05-02 15:37:02 +09:00
Dean Herbert
e3c384c6b5 Merge branch 'master' into sample-control-points 2023-05-02 14:38:39 +09:00
OliBomby
27cfadca16 add sample info to Banana and SpinnerBonusTick 2023-05-01 14:54:06 +02:00
Dean Herbert
0a70734331 Adjust ripple size with cursor scale (including CS) 2023-05-01 14:43:49 +09:00
Dean Herbert
5cbfefbcb4 Adjust metrics of default ripple to match stable default better 2023-05-01 13:29:50 +09:00
Dean Herbert
b8ae508639 Fix incorrect starting scale for ripples 2023-05-01 13:09:00 +09:00
OliBomby
41d4894aa3 add min and max value to SliderVelocity 2023-04-30 19:32:24 +02:00
OliBomby
4a0ff046ae pass new hitobject properties through beatmap converters 2023-04-30 19:20:42 +02:00
OliBomby
1eb2e35dff fix ticks not being generated by default 2023-04-30 16:03:58 +02:00
Dean Herbert
72b472a756 Change default scaling and add note about legacy cursor-ripple scale 2023-04-30 14:48:03 +09:00
Dean Herbert
6a62949fcd Fix positioning and rewinding support for ripples 2023-04-30 14:48:03 +09:00
Dean Herbert
c994adfc22 Add pooling support for ripples 2023-04-30 14:48:03 +09:00
Dean Herbert
a4ae9e409b Implement ripples (legacy and default) 2023-04-30 14:48:03 +09:00
Dean Herbert
b39a9d816e Add basic structural requirements for cursor ripples 2023-04-30 14:48:03 +09:00
OliBomby
c44f71a737 remove all regular usage of DifficultyControlPoint 2023-04-26 17:55:38 +02:00
OliBomby
9f8d7bccba fix usings 2023-04-26 17:34:02 +02:00
OliBomby
d97daee96b remove all non-test usage of SampleControlPoint 2023-04-26 13:55:39 +02:00
OliBomby
6c70948681 Remove IContext & add IHasGenerateTicks 2023-04-26 13:10:57 +02:00
OliBomby
e4b64bdc3e clean up code stuff 2023-04-25 19:06:29 +02:00
OliBomby
66eda40cdf fix implementations of IHasSliderVelocity 2023-04-25 18:22:22 +02:00
OliBomby
065464d90c Fixed DifficultyPointPiece 2023-04-25 18:12:53 +02:00
OliBomby
97910d6be6 remove unused directives 2023-04-25 13:06:37 +02:00
OliBomby
891b87a5ff remove ApplyLegacyInfo method 2023-04-25 12:52:21 +02:00
OliBomby
ea1e6e9798 Add LegacyContext 2023-04-25 12:12:46 +02:00
OliBomby
a4c6850ab2 made the SampleControlPoint and DifficultyControlPoint obsolete 2023-04-25 11:34:09 +02:00
Dan Balasescu
ad51f880e0 Remove overrides on DC/NC mods 2023-04-10 17:49:29 +09:00
Dan Balasescu
15f6bc155e Add progressive score multiplier for HT 2023-04-10 13:35:48 +09:00
Dan Balasescu
c923482976 Add progressive score multiplier for DT 2023-04-10 13:31:48 +09:00
Dean Herbert
45e3e3623b Fix spinners being selectable for too long after they fade in the editor
The actual visual extension is only applied to `HitCircle`s (which does include slider
start / end), and should not be applied to spinners in the first place.

Addresses https://github.com/ppy/osu/discussions/22949.
2023-03-28 18:49:59 +09:00
Dean Herbert
ad5bdf6511 Merge branch 'master' into fix-ubo-not-bound 2023-03-22 16:46:39 +09:00
Dean Herbert
c056d5a6fb Reduce distance requirement for lock-in behaviour 2023-03-20 15:36:58 +09:00
Dean Herbert
13a32b5246 Move lock-in variable to const and document better 2023-03-20 15:36:27 +09:00
Salman Ahmed
678e8ed736 Update UBO usages inline with framework changes 2023-03-16 14:06:35 +03:00
Dean Herbert
7b34607676 Merge branch 'master' into bubble_mod_implementation_clean 2023-03-16 13:45:22 +09:00
Dean Herbert
42359a9754 Fix previous touch action not being released when it's not a direct touch 2023-03-15 16:43:20 +09:00
Dean Herbert
6c4f596a9a Make osu! touch input aware of the distance travelled of a non-direct touch 2023-03-15 16:43:20 +09:00
Dean Herbert
969c0e9c9d Merge branch 'master' into veldrid-renderer 2023-03-14 17:35:38 +09:00
Dan Balasescu
069b77dd23 Update language version 2023-02-25 02:15:56 +09:00
Dan Balasescu
dd9748a25c Adjust DrawNodes to use UBOs 2023-02-25 01:42:55 +09:00
Dean Herbert
a8c692a215
Merge pull request #22635 from peppy/use-overlays-container-more
Use `Overlays` container rather than `KeyBindingInputManager` for flashlight
2023-02-22 18:30:21 +09:00
Dean Herbert
ee87a29376
Merge pull request #22543 from Cwazywierdo/hitcircle-late-miss-fade
Fix hit circle late-miss fading differences compared to stable
2023-02-21 13:56:57 +09:00
MK56
b74c1c8334
Merge branch 'master' into bubble_mod_implementation_clean 2023-02-19 21:36:59 +01:00
Bartłomiej Dach
8a488ebccc
Actually simplify condition 2023-02-19 16:39:35 +01:00
Adam
58d64cdbd0 Clarify usingHiddenFading logic 2023-02-18 17:33:33 -06:00
Bartłomiej Dach
6b9472c367
Merge branch 'master' into skin-per-ruleset-layouts 2023-02-17 22:58:38 +01:00
Dean Herbert
675e5b81f3 Fix SkinnableLighting showing up as a user placeable component 2023-02-17 18:24:05 +09:00
Adam
e06502085e Enable fading when hidden only hides appreach circles 2023-02-16 16:31:42 -06:00
mk56-spn
d5bc8e2941 Code cleanup pass:
Make bubble transform logic more sane.

Extract bubble `getPosition()` method.

Address poorly named variables.
2023-02-16 11:12:30 +01:00
Dean Herbert
7afdcb9383 Merge branch 'master' into hide-resume-overlay 2023-02-16 15:42:14 +09:00
mk56-spn
8fc35b159f Remove dysfunctional slider colouring 2023-02-15 10:04:50 +01:00
mk56-spn
297963b461 Remove BubbleInfo struct and consume DrawableOsuHitObjects directly 2023-02-15 10:00:46 +01:00
mk56-spn
1d1c794ccf Invert pointless nested if statement 2023-02-15 09:37:47 +01:00
mk56-spn
e9a7d90273 make transform duration for bubble a method instead of a variable 2023-02-15 09:33:18 +01:00
mk56-spn
82292d6162 Make colouring for bubble more intuitive and remove unnecessary alpha assignment 2023-02-15 09:30:56 +01:00
Adam
5e774a28d8 Correct timings to match stable exactly + don't fade with hidden 2023-02-15 01:02:54 -06:00
Dean Herbert
da8ab7143b
Merge branch 'master' into maximum-judgement-offset-in-hit-object 2023-02-15 14:48:15 +09:00
mk56-spn
5db624159b Change bubble rewind removal to be in ApplyToDrawableHitObject method. 2023-02-14 18:06:43 +01:00
mk56-spn
92c61c7339 move logic for bubble invoking to ApplyToDrawableHitobject()` method 2023-02-14 16:31:34 +01:00
mk56-spn
2d49b5f9d6 Move bubbles to ruleset overlays container 2023-02-14 14:03:48 +01:00
mk56-spn
d100a4a491 Make lastJudgedHitObject nullable, and fix typo in name. 2023-02-14 10:12:37 +01:00
Dean Herbert
c540d78fbc Expose the actual KeyBindingInputManager
Turns out that `CreateInputManager` is called more than once, and some
mods (ie. `InputBlockingMod`) rely on consuming the "main" one. So let's
go back to accessing and exposing in `DrawableOsuRuleset` rather than
storing out own reference.
2023-02-14 18:10:26 +09:00
Dean Herbert
5ec5222d8a Expose and consume OsuInputManager explicitly 2023-02-14 17:36:07 +09:00
Pasi4K5
e4b84ebd0b Add UseResumeOverlay and use it for hiding the ResumeOverlay 2023-02-13 23:51:39 +01:00
mk56-spn
6ff6e06a69 Simplify bubble container structure, modify some comments 2023-02-12 11:37:07 +01:00
mk56-spn
5e0c4aa904 Refactor pooling for bubbles, tweak the animations a tad, add some clarifying comments 2023-02-12 00:59:46 +01:00
Adam
7bad0113cd Move early fade effect to classic mod setting 2023-02-09 16:20:11 -06:00
Adam
d027d69913 Make hit circle fade out into late miss judgement 2023-02-06 19:22:47 -06:00
mk56-spn
f0d4b9f0ca Add inline comment for colour border override 2023-02-06 17:00:47 +01:00
Dean Herbert
abcb564a74 Code quality pass of OsuModBubbles 2023-02-06 17:35:43 +09:00
Dean Herbert
a67d5d2a14 Merge branch 'master' into bubble_mod_implementation_clean 2023-02-06 17:24:20 +09:00
Bartłomiej Dach
49443f0b55
Inline temporary variable 2023-02-04 14:36:30 +01:00
Bartłomiej Dach
a1343dacc1
Merge branch 'master' into SnapToReverseSlider 2023-02-04 14:14:37 +01:00
Wleter
60f6484073 fix spaces 2023-02-03 16:13:37 +01:00
Wleter
f7f13cb9d9 fix formatting 2023-02-03 16:13:04 +01:00
Wleter
20e220df56 prioritize closest snap position 2023-02-03 16:05:16 +01:00
Wleter
23e9bdd554 check every snap position in blueprint 2023-02-02 14:22:30 +01:00
Dean Herbert
10df64467a
Merge pull request #22430 from peppy/skin-editor-nrt
Apply NRT to all skin editor classes
2023-02-02 13:57:57 +09:00
Bartłomiej Dach
a14481acca
Merge pull request #22440 from peppy/argon-hit-lighting-v2
Adjust argon hit lighting further
2023-01-30 19:34:58 +01:00
mk56-spn
3bdf83bf44 Redo the drawable structure of bubbledrawable to run and look better 2023-01-29 00:48:14 +01:00
mk56-spn
66da4c0288 Add colouration to the sliders to better match the vibrancy of the mod 2023-01-28 17:38:24 +01:00
mk56-spn
c3090dea5f Simplify animations 2023-01-28 00:30:30 +01:00
mk56-spn
7c81f1e75b Remove unnecessary BDL from bubble drawable
Improve animation duration formula
2023-01-27 12:53:19 +01:00
MK56
c50604f701
Merge branch 'master' into bubble_mod_implementation_clean 2023-01-27 11:58:56 +01:00
Dean Herbert
98c9ba5b6f
Merge branch 'master' into skin-editor-nrt 2023-01-27 19:35:43 +09:00
Dean Herbert
74ab036f3e Refactor SkinnableSound.Samples to be non-nullable 2023-01-27 19:32:30 +09:00
Dean Herbert
2b55e05b10 Adjust argon hit lighting further 2023-01-27 13:31:21 +09:00
Bartłomiej Dach
c4dce30de5
Merge pull request #22412 from peppy/argon-kiai
Add very basic kiai flash to argon hit circles
2023-01-26 19:13:58 +01:00
Dean Herbert
7344d34d5b Move where class specs to next line 2023-01-26 17:12:41 +09:00
Dean Herbert
13937cf555
Merge branch 'master' into stream-tool-2 2023-01-26 16:08:20 +09:00
Dean Herbert
de1d473d29 Fix kiai flash being visible and incorrectly sized during hit animation 2023-01-26 15:24:10 +09:00
Dan Balasescu
9ed0b8ccfa
Merge pull request #22375 from peppy/osu-ruleset-touch-support
Add empty space tap-streaming support for osu! ruleset on touchscreen devices
2023-01-26 08:12:12 +09:00
Bartłomiej Dach
73f53328cf
Merge branch 'master' into argon-kiai 2023-01-25 22:21:26 +01:00
Bartłomiej Dach
3daa9e6295
Merge branch 'master' into argon-hit-lighting-peppy-take 2023-01-25 21:44:43 +01:00
Dean Herbert
48d68b0f4f Add very basic kiai flash to argon hit circles 2023-01-25 18:59:26 +09:00
Dean Herbert
9499d3a20a Add support for disabling "hit lighting" with osu! argon skin 2023-01-25 15:50:49 +09:00
Dean Herbert
1cde90d55d Add note about CheckScreenSpaceActionPresJudgeable being naive 2023-01-25 15:03:47 +09:00
Dean Herbert
5bfd4e47a1 Refactor position tracking touch handling (and comments) to read better 2023-01-25 14:59:54 +09:00
Dean Herbert
d8365f4fca Reverse order of application to match DrawableHitObject 2023-01-25 11:47:15 +09:00
Dean Herbert
3a47be6e00 Fix argon hit circles occasionally going missing during editor seeking 2023-01-24 17:43:14 +09:00
Dean Herbert
a966d6c330
Merge pull request #18402 from ggliv/mod-accuracy-challenge
Add accuracy challenge mod
2023-01-24 16:00:55 +09:00
Dean Herbert
3cd810f332
Merge pull request #22265 from Wleter/SliderEnd-Snap
Add snapping sliderends with nearby objects
2023-01-24 13:43:43 +09:00
Dean Herbert
72cfe2ba5a Move private field up with others 2023-01-24 12:30:11 +09:00
Dean Herbert
949610c8a4 Add commentary as to why ReceivePositionalInputAt override is required 2023-01-24 11:06:54 +09:00
Pasi4K5
8b47af6503 Remove HidesResumeOverlay and set ResumeOverlay to null in OsuModAutopilot 2023-01-24 00:49:09 +01:00
Susko3
a992682276 Fix OsuTouchInputMapper not handling all touches when using screen scaling 2023-01-23 21:46:01 +01:00
Bartłomiej Dach
7483967157
Merge branch 'master' into SliderEnd-Snap 2023-01-23 21:33:16 +01:00
Dean Herbert
c4d5957ac3 Add empty space tap-streaming support for osu! ruleset on touchscreen devices 2023-01-23 17:07:27 +09:00
Dean Herbert
73f083a316 Refactor how additional points are provided to avoid confusion 2023-01-23 14:13:46 +09:00
Pasi4K5
75a1a2ec2f Hide ResumeOverlay when OsuModAutopilot is enabled 2023-01-22 03:44:59 +01:00
ekrctb
7e466e1eba Fix SPM calculation division by zero 2023-01-20 21:00:01 +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
Wleter
f8d8a627b8 change property name 2023-01-18 22:00:39 +01:00
Wleter
ab78dd0436 add collection of selection points. 2023-01-18 21:34:23 +01:00
Dean Herbert
ecb4727aec Fix formatting issues 2023-01-18 17:33:14 +09:00
Dean Herbert
3630b41a5b Remove unused usings 2023-01-18 13:13:20 +09:00
Wleter
00f15d19f9 fix double newlines 2023-01-17 21:11:21 +01:00
Gabe Livengood
dfbbc4002c address test failure 2023-01-17 10:22:58 -05:00
Dean Herbert
00996c9f47 Remove unnecessary touch interception from OsuInputManager 2023-01-17 19:11:22 +09:00
Dean Herbert
70cb23bbc9
Merge branch 'master' into mod-accuracy-challenge 2023-01-17 16:46:54 +09:00
Dean Herbert
24a626a9cd Fix incorrect touch handling in autopilot and relax mods 2023-01-17 15:07:05 +09:00
Dean Herbert
3b95691d53 Add note about mouse button disable tracking 2023-01-17 14:54:52 +09:00
Dean Herbert
45b34f5306 Remove pointless xmldoc 2023-01-17 14:53:24 +09:00
Dean Herbert
34120b6131 Use linq Single instead of First for guaranteed singular match 2023-01-17 14:52:45 +09:00
Dean Herbert
9b5d6b391b Remove nullability allowance from BackgroundDependencyLoader 2023-01-17 14:52:15 +09:00
Dean Herbert
c6d33df147 Only track TouchSource for now 2023-01-17 14:51:46 +09:00
Dean Herbert
b3860c6d52 Only use positional input from most recent touch 2023-01-16 21:21:00 +09:00
Dean Herbert
606e374d94 Don't handle touch down events if "mouse" buttons are disabled
Maintains compatibility with existing logic.
2023-01-16 21:21:00 +09:00
Dean Herbert
355bec2058 Handle movement locally as we are blocking events from touch->mouse mapping 2023-01-16 21:21:00 +09:00
Dean Herbert
b265888f18 Add bare minimum touch support to osu! ruleset 2023-01-16 21:21:00 +09:00
ansel
9ce7c51b14 Localise osu! settings 2023-01-15 23:29:58 +03:00