Bartłomiej Dach
feadf7a56e
Allow modifying hold note start/end time via mania composer playfield
2024-06-12 15:30:27 +02:00
Bartłomiej Dach
011c2e3651
Move SpecialStyle
out of BeatmapInfo
2024-06-12 13:12:30 +02:00
Dean Herbert
2a8bd8d968
Fix failing tests due to missing DI pieces
2024-06-12 11:23:56 +08:00
Bartłomiej Dach
da53a11d3c
Attempt full editor reload on key count change
2024-06-11 11:31:49 +02:00
Bartłomiej Dach
10af642342
Split mania difficulty section implementation off completely from base
...
- "Circle size" / key count needs completely different handling.
- Approach rate does not exist in mania.
2024-06-11 11:30:20 +02:00
Bartłomiej Dach
629e7652c0
Implement flip operations in mania editor
2024-06-07 09:01:41 +02:00
Bartłomiej Dach
bf0040447c
Fix legacy mania note body animation not resetting sometimes
...
Hopefully closes https://github.com/ppy/osu/issues/28284 .
As far as I can tell this is a somewhat difficult one to reproduce
because it relies on a specific set of circumstances (at least the
reproduction case that I found does). The reset to frame 0 would
previously be called explicitly when `isHitting` changed:
182ca145c7/osu.Game.Rulesets.Mania/Skinning/Legacy/LegacyBodyPiece.cs (L144)
However, it can be the case that `bodyAnimation` is not loaded at the
point of this call. This is significant because
`SkinnableTextureAnimation` contains this logic:
182ca145c7/osu.Game/Skinning/LegacySkinExtensions.cs (L192-L211)
which cannot be moved any earlier (because any earlier the `Clock` may
no longer be correct), and also causes the animation to be seeked
forward while it is stopped.
I can't figure out a decent way to layer this otherwise (by scheduling
or whatever), so this commit is just applying the nuclear option of just
seeking back to frame 0 on every update frame in which the body piece is
not being hit.
2024-05-28 15:29:15 +02:00
Bartłomiej Dach
97de73b99c
Do not change mania column width on mobile platforms
...
- Closes https://github.com/ppy/osu/issues/25852
- Reverts https://github.com/ppy/osu/pull/25336 /
https://github.com/ppy/osu/pull/25777
With the columns not being directly touchable anymore after
https://github.com/ppy/osu/pull/28173 I see very little point to this
continuing to exist.
2024-05-16 08:21:52 +02:00
Bartłomiej Dach
3d190f7e88
Remove redundant cast
2024-05-14 18:41:15 +02:00
Dean Herbert
f781dc3300
Remove touch mod addition to mania
...
Feels a bit pointless? I dunno.
2024-05-14 22:38:31 +08:00
Dean Herbert
5c9a90cb40
Tidy class and change to be a VisibilityContainer
similar to taiko implementation
2024-05-14 22:34:05 +08:00
Dean Herbert
390557634a
Rename touch area class to match existing usage (see taiko)
2024-05-14 22:34:05 +08:00
Dean Herbert
12e98fe55d
Move out of playfield so touch overlay is not affected by playfield position
2024-05-14 22:34:05 +08:00
Dan Balasescu
a761a7bced
Hook up touch device mod
2024-05-14 19:14:58 +08:00
Dan Balasescu
e3f2e1ba08
Add opacity setting
2024-05-14 19:14:50 +08:00
Dan Balasescu
39337f5189
Hook up input manager
2024-05-14 19:14:50 +08:00
Dan Balasescu
ef40197713
Add mania touch overlay
...
Adjust default anchor/origin
2024-05-14 19:14:50 +08:00
Dan Balasescu
4f6777a0a1
Remove existing per-column touch input
2024-05-14 19:10:14 +08:00
Dan Balasescu
362a7b2c77
Remove unused members from GameplaySkinComponentLookup
2024-04-19 18:03:13 +09:00
Dan Balasescu
343b3ba0e6
Don't re-filter unless mods may change the filter
2024-04-15 21:07:36 +09:00
Dan Balasescu
8e0ca11d1c
Fully qualify LegacyBeatmapConversionDifficultyInfo
2024-04-01 17:02:32 +09:00
Dan Balasescu
9fd6449fd8
Add mods to FilterCriteria, pass to ruleset method
2024-03-28 23:03:26 +09:00
Dan Balasescu
c08a4898b2
Refactor score simulator to use GetColumnCount()
2024-03-28 22:58:39 +09:00
Dan Balasescu
ce21235db4
Remove unused OriginalTargetColumns
2024-03-28 22:51:13 +09:00
Dan Balasescu
10edb54614
Add ability to query key count with mods
2024-03-28 22:51:12 +09:00
Dan Balasescu
64399e9dd9
Refactor pattern generation to not require ManiaBeatmap
2024-03-28 22:32:27 +09:00
Bartłomiej Dach
b74f8dba41
Merge branch 'master' into verify-abnormal-difficulty-settings
2024-03-26 11:13:16 +01:00
Bartłomiej Dach
1866b4b6b1
Refactor abstract check to reduce duplication
2024-03-26 11:13:03 +01:00
Arthur Araujo
6fa663c8ca
Make check ruleset specific
2024-03-22 14:48:22 -03:00
Arthur Araujo
2d6a3b8e2b
Remove warning for 10K+
2024-03-20 16:51:27 -03:00
Arthur Araujo
c605e463a4
Add mania keycount check
2024-03-20 15:52:16 -03:00
Dan Balasescu
0beaa8e8c5
Merge branch 'master' into tcm-resume
2024-03-14 12:22:46 +09:00
Dan Balasescu
ca92a31cf9
Fix missing event unbinds
2024-03-07 21:10:11 +09:00
Salman Ahmed
672f645cba
Clamp only on horizontal sides
2024-03-06 18:40:20 +03:00
Salman Ahmed
f1b66da469
Add comments
2024-03-01 22:57:13 +03:00
Salman Ahmed
e0c73eb362
Fix osu!mania key images potentially showing gaps between columns
2024-03-01 22:49:12 +03:00
Andrei Zavatski
b92cff9a8e
Reduce allocations in ManiaSelectionBlueprint
2024-02-20 20:47:41 +03:00
Andrei Zavatski
e9aca9226a
Reduce allocations in ManiaPlayfield.TotalColumns
2024-02-20 19:10:03 +03:00
Salman Ahmed
3108842a1c
Merge branch 'master' into legacy-body-piece-crash
2024-02-16 00:30:36 +03:00
Dean Herbert
c1d9f53ab4
Merge pull request #27068 from smoogipoo/mania-hd-fi-progression
...
Add progressive coverage for mania's Hidden and FadeIn mods
2024-02-16 01:00:53 +08:00
Bartłomiej Dach
4b2197039c
Make dropdown text nicer
2024-02-15 16:40:58 +01:00
Dan Balasescu
878fb2d10d
Add break support
2024-02-15 22:05:25 +09:00
Dan Balasescu
d1a51b474c
Adjust tests
2024-02-15 21:25:40 +09:00
Dan Balasescu
755bc7c050
Fix resolution scaling
2024-02-15 20:07:55 +09:00
Bartłomiej Dach
36005a5449
Fix selected legacy skins crashing on zero-length hold notes
...
Closes https://github.com/ppy/osu/issues/27134 .
2024-02-12 08:33:08 +01:00
Berkan Diler
6adf0ac01e
Use new LINQ Order() instead of OrderBy() when possible
2024-02-08 18:01:00 +01:00
Dan Balasescu
dcb195f3c8
Add delayed resume for taiko/catch/mania
2024-02-08 02:16:08 +09:00
Dan Balasescu
8f995a30af
Fix legacy coverage metrics
2024-02-08 00:20:32 +09:00
Dan Balasescu
af20eacc82
Fix coordinate space
2024-02-07 00:25:22 +09:00
Dan Balasescu
69db1b2778
Add ManiaModCover to take over old roles of the mods
2024-02-07 00:15:14 +09:00
Dan Balasescu
bacb1d0dc7
Add easing to make the transition less awkward
2024-02-06 23:58:27 +09:00
Dan Balasescu
5bc7befbd4
Add progressive cover to mania HD and FI mods
2024-02-06 23:47:20 +09:00
Dan Balasescu
5265d33c12
Make coverage into a bindable
2024-02-06 23:33:00 +09:00
Dan Balasescu
ee05743921
Bump databased star rating versions
2024-02-06 22:58:11 +09:00
Dan Balasescu
c18cd65081
Merge pull request #26694 from chandler14362/hit-object-result-allocations
...
Avoid closure allocations when applying hit object results
2024-02-06 17:49:26 +09:00
Bartłomiej Dach
0b82df00c0
Merge branch 'master' into mania-skin-alloc
2024-02-05 15:09:56 +01:00
Bartłomiej Dach
8b9c9f4fed
Add NRT annotations to DrawableManiaRuleset
2024-02-05 14:52:08 +01:00
Dean Herbert
cc5e1e0af3
Merge pull request #26957 from smoogipoo/net8
...
Update to .NET 8 + C# 12
2024-02-05 20:59:31 +08:00
Bartłomiej Dach
fb80d76b4a
Apply further changes to remove remaining weirdness
2024-02-05 13:37:38 +01:00
Bartłomiej Dach
39fe078984
Merge branch 'master' into hit-object-result-allocations
2024-02-05 13:24:10 +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
Dan Balasescu
6e4d52863c
Upgrade to .NET 8 SDK
2024-02-02 21:28:51 +09:00
Andrei Zavatski
e00e583bb4
Fix DrawableManiaRuleset performing skin lookup every frame
2024-02-02 03:56:38 +03:00
Bartłomiej Dach
f89923aeae
Annotate mods that give pp
2024-01-31 14:59:35 +01:00
Andrei Zavatski
8e20eed4ef
Don't use LINQ in ReceivePositionalInputAt
2024-01-30 03:19:27 +03:00
Andrei Zavatski
7dba870518
Rework Content storage in ColumnFlow
2024-01-30 03:07:37 +03:00
Chandler Stowell
93bd3ce5ae
update DrawableHitCircle.ApplyResult
to pass this
to its callback
2024-01-25 11:25:41 -05:00
Dean Herbert
dda96d7106
Rename JudgementPiece
to TextJudgementPiece
2024-01-25 19:31:57 +09: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
e9812fac7a
Fix osu!mania judgments not being pooled correctly
2024-01-15 20:50:09 +09:00
Salman Ahmed
02f5ea200e
Fix failing tests
2023-12-30 07:41:55 +03:00
Salman Ahmed
408287e086
Add very basic argon mania combo counter implementation
2023-12-30 05:29:44 +03:00
Salman Ahmed
8be3f4f632
Add legacy mania combo counter implementation
2023-12-30 05:29:38 +03:00
Salman Ahmed
08d88ec2fa
Add back initial position transform to ensure correctness
2023-12-29 20:47:18 +03:00
Salman Ahmed
8df9a1ee1f
Fix argon miss judgement on mania placed on a different position
2023-12-29 20:43:03 +03:00
Dan Balasescu
2ec6aa7fbb
Make mania scroll speed independent of hit position
2023-12-26 12:46:21 +09:00
Dean Herbert
7e09164d70
Merge pull request #26036 from smoogipoo/fix-perfect-mod-special-judgements
...
Fix perfect mod not failing with special judgements
2023-12-22 18:22:28 +09:00
Dan Balasescu
93efa98d9b
Fix mania "Great" hits failing with perfect mod
2023-12-22 16:19:36 +09:00
Dan Balasescu
6b4b2a57fc
Expose only as one method
2023-12-21 14:58:23 +09:00
Dan Balasescu
4e3b994142
Relocate HitResult numeric score to ScoreProcessor
2023-12-21 14:52:31 +09:00
Bartłomiej Dach
8c06d3873d
Merge branch 'master' into mania-scorev2-values
2023-12-20 15:54:31 +01:00
Dan Balasescu
bff08d124b
Remove mania mod multiplier for DT/NC
2023-12-20 22:28:50 +09:00
Dean Herbert
e0c27510f2
Remove remaining usage of NotePerfectBonus
2023-12-20 19:47:36 +09:00
Dan Balasescu
023bbda7db
Change mania to 85% acc / 15% combo
2023-12-20 18:43:06 +09:00
Dan Balasescu
104fbbde94
Change mania scoring to match ScoreV2
2023-12-20 18:35:45 +09:00
Dean Herbert
831c273b45
Merge pull request #25887 from smoogipoo/restore-taiko-accuracy
...
Restore taiko accuracy to ScoreV2 values
2023-12-20 17:29:40 +09:00
OliBomby
ec578e1d9f
fix near-zero length sliders n stuff being placeable
2023-12-19 21:20:21 +01:00
Dean Herbert
372f930f8b
Refactor usage of object counts for mania key count lookup to be a bit safer
...
Protects against non-initialised values and also div-by-zero.
2023-12-19 18:28:04 +09:00
Dan Balasescu
c1b55c7fac
Add ScoreProcessor methods to override numeric result
2023-12-19 13:50:31 +09:00
Dan Balasescu
30116512ca
Populate MaxCombo scoring attrib for non-osu rulesets
2023-12-18 12:01:51 +09:00
clayton
f07771f59b
Fix fallback column colors for legacy split stage mania skins
2023-12-15 22:41:55 -08:00
Bartłomiej Dach
432ce275c4
Explain magic constants better
2023-12-15 20:43:18 +01:00
Dean Herbert
e8f3e52c9e
Fix nullref failure in tests
2023-12-15 19:17:48 +09:00
Dean Herbert
eb5a8284f1
Move mobile check earlier to avoid unnecessary looping
2023-12-15 19:16:18 +09:00
Dean Herbert
456916f680
Fix column sizing exceeding screen width on tablets
2023-12-15 18:02:27 +09:00
Dean Herbert
fdcf87569c
Merge pull request #25711 from smoogipoo/mania-convert-song-select-keycount
...
Display osu!mania keycount in song select carousel panels and details
2023-12-13 16:31:25 +09:00
Dean Herbert
0e4e916388
Sneaky comment fix
2023-12-13 15:04:52 +09:00
Dan Balasescu
6ed5613c22
Merge branch 'master' into mania-convert-song-select-keycount
2023-12-13 13:53:50 +09:00
Dan Balasescu
2930b53edd
Simplify implementation
2023-12-13 13:43:14 +09:00
Dan Balasescu
36d0ec34d3
Merge pull request #25727 from PercyDan54/mania-autoplay-0ms-hold
...
Fix mania Autoplay mod missing 0ms hold notes
2023-12-13 12:13:53 +09:00
PercyDan54
b20b2203ac
Fix mania Autoplay mod missing 0ms hold notes
2023-12-11 21:10:14 +08:00
Dan Balasescu
b36db3518c
Add keycount to song select details panel and carousel panels
2023-12-09 22:31:51 +09:00
Dan Balasescu
81fe15f288
Fix osu!mania converted key count edge cases
2023-12-09 15:39:54 +09:00
Dan Balasescu
0fe2e1e8d6
Re-fix mania conversion following new discoveries
2023-12-08 16:33:10 +09:00
Dan Balasescu
d6cb8b70bb
Fix FP precision issue when converting mania beatmaps
2023-12-07 12:26:02 +09:00
Dan Balasescu
d0acb7f4f9
Improve commenting
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2023-12-04 06:08:31 +09:00
Dan Balasescu
230278f2c9
Once again remove Mania passive HP drain
2023-12-03 01:47:20 +09:00
Dan Balasescu
1c3bcbd548
Use IHasPath instead of IHasDistance for mania/taiko
2023-11-29 17:30:21 +09:00
Dan Balasescu
16577829e2
Fix mania and taiko slider conversion distance
2023-11-28 21:14:56 +09:00
Dan Balasescu
d924227810
Add ManiaHealthProcessor
that uses the legacy drain rate algorithm
2023-11-27 14:38:31 +09:00
Bartłomiej Dach
a8fc73695f
Rename variable
2023-11-20 22:04:08 +09:00
Bartłomiej Dach
364a3f75e1
Compile regexes
2023-11-20 22:03:25 +09:00
Bartłomiej Dach
b6215b2809
Rename and document SelectFromTimestamp
2023-11-20 21:57:14 +09:00
ratinfx
fab6fc9adb
Updated comments, renamed method
2023-11-12 15:09:15 +01:00
ratinfx
4e7c40f1d7
Do Split and Parse before checking HitObjects
2023-11-12 14:58:46 +01:00
ratinfx
4e1e19728c
Refactor HitObject selection in Composer
2023-11-11 14:02:42 +01:00
ratinfx
aa87e0a44d
HitObject Selection logic and separation for gamemodes
...
+ moved time_regex into EditorTimestampParser
2023-11-07 01:36:58 +01:00
Bartłomiej Dach
998d709331
Merge branch 'master' into mania-key-expand-mobile
2023-11-02 11:59:01 +01:00
Dean Herbert
704f5a6de3
Adjust sizing slightly to ensure we stay within 1366 limits
2023-11-02 11:44:36 +01:00
Dean Herbert
c83589cb74
Change osu!mania conversion mod ordering to be more appeasing
2023-11-02 15:49:10 +09:00
Dean Herbert
6dab5ee4cf
Add support for "argon" default skin to expand columns when on mobile device
...
Should ease those looking to play the game on mobile until we
(potentially) have a better solution in the future.
If this works out well, we can consider rolling it out to other skins.
Closes https://github.com/ppy/osu/issues/23377 .
2023-11-02 15:13:44 +09:00
Dean Herbert
fbba3787d1
Merge pull request #25190 from frenzibyte/match-skin-element-animation-support
...
Match capability of animating legacy skin elements with osu!(stable)
2023-10-30 18:25:06 +09:00
Salman Ahmed
976ae62214
Fix incorrect nullability specification
2023-10-21 01:10:06 +03:00
Salman Ahmed
491f119988
Add animation support for legacy osu!mania column lights
2023-10-21 00:22:34 +03:00
Salman Ahmed
517d0f65b6
Adjust frame length of osu!mania hold-note body animation
2023-10-21 00:22:31 +03:00
Salman Ahmed
badb1310a3
Adjust frame length of osu!mania judgement animation
2023-10-20 23:59:03 +03:00
Bartłomiej Dach
b321d556b6
Enforce minimum gameplay sample volume of 5%
2023-10-20 15:50:13 +02:00
Dean Herbert
52c2eb93de
Merge branch 'master' into taiko-beat-snap-grid
2023-10-19 23:53:01 +09:00
Dean Herbert
5341a335a6
Bypass Parent
nullability checks for now
2023-10-17 17:48:45 +09:00
Bartłomiej Dach
2192c9f2c2
Remove unused using directive
2023-10-17 10:30:01 +02:00
Bartłomiej Dach
22c1a963e7
Remove unused field
2023-10-17 10:27:16 +02:00
Dean Herbert
4381169a3f
Combine selection and input handling logic for beat snap grids across all rulesets
2023-10-17 17:09:42 +09:00
Dean Herbert
1b9acdf55c
Abstract out common implementation of BeatSnapGrid
2023-10-17 16:42:52 +09:00
Dean Herbert
d26d4b8b79
Cache IScrollingInfo
at a HitObjectComposer
level automatically
2023-10-17 16:42:22 +09:00
Bartłomiej Dach
b9a84127ac
Remove mention of "any tick"
...
They're very dead now.
2023-10-16 08:57:35 +02:00
Dean Herbert
4f1546c474
Rename PerfectBonusNote
to NotePerfectBonus
2023-10-16 15:14:28 +09:00
Dean Herbert
3f09ed396f
Fix legacy skin body piece dimming when it shouldn't
2023-10-16 15:11:33 +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
850950ba61
Add note about why SmallBonus
is not listed in GetValidHitResults
2023-10-13 17:36:30 +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
a42e75452e
Remove remaining usages of LargeTickHit
in mania
2023-10-12 11:16:51 +02:00
Bartłomiej Dach
063623b4e6
Merge branch 'master' into remove-hold-note-ticks
2023-10-11 19:47:51 +02: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
Dean Herbert
1a60d6ade5
Use a DrawablePool
for mania's beat snap grid
...
I'm not sure what the cause of the issue is, but I'm also not sure why
it wasn't using `DrawablePool` (was it not around back then?).
Either way, switching to a proper pool fixes things just fine.
Resolves https://github.com/ppy/osu/issues/25009 .
2023-10-10 13:36:31 +09:00