1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-16 02:47:30 +08:00
Commit Graph

64430 Commits

Author SHA1 Message Date
OliBomby
a8f3a0533a Use 4th order BSpline by default 2023-12-06 16:35:59 +01:00
Dean Herbert
b8694aba98
Remove unnecessary prefix
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2023-12-06 22:00:35 +09:00
Bartłomiej Dach
f239d03d75
Forcibly change ruleset to correct one before entering gameplay from main menu
Closes #25663 (again).

As it turns out, in some scenarios it can be the case that the current
game-global `Beatmap` is not valid for the current game-global
`Ruleset`. The validity of one and the other in conjunction is only
really validated by the song select screen; elsewhere there is no
guarantee that the global beatmap is playable using the global ruleset.

However, this only comes up in very specific circumstances, namely one:
when trying to autoplay a catch beatmap with osu! ruleset globally
active via the skin editor flow.

`Player` is responsible for retrieving the beatmap to be played. It does
so by invoking the appropriate beatmap converter and asking it if the
beatmap can be converted:

	6d64538d7a/osu.Game/Beatmaps/WorkingBeatmap.cs (L262-L266)

If the code above throws, `Player` actually silently covers for this, by
trying the beatmap's default ruleset instead:

	6d64538d7a/osu.Game/Screens/Play/Player.cs (L529-L536)

However, for the pairing of osu! ruleset and catch beatmap, this fails,
as `OsuBeatmapConverter`'s condition necessary for permitting conversion
is that the objects have a defined position:

	6d64538d7a/osu.Game.Rulesets.Osu/Beatmaps/OsuBeatmapConverter.cs (L25)

which they will do, due to the fact that all catch beatmaps are really
just osu! beatmaps but with conversion steps applied, and thus `Player`
succeeds to load the catch beatmap in osu! ruleset.

In the skin editor scenario, this would lead to the secondary failure
of the skin editor trying to apply `CatchModAutoplay` on top of all
of that, which would fail at the hard-cast of the beatmap
to `CatchBeatmap`.
2023-12-06 10:35:41 +01:00
Bartłomiej Dach
faf60cec91
Extend test coverage of skin editor open to fail better 2023-12-06 10:11:41 +01:00
Bartłomiej Dach
6d64538d7a
Merge pull request #25687 from peppy/fix-skin-editor-beatmap-change
Fix being able to change ruleset / beatmap when opening skin editor from main menu
2023-12-06 10:08:29 +01:00
Bartłomiej Dach
f69a5b44cc
Merge branch 'master' into fix-argon-initial-display 2023-12-06 09:30:28 +01:00
Bartłomiej Dach
4585a169b1
Merge pull request #25686 from peppy/fix-song-select-match
Fix searching at song select matching incorrect ruleset
2023-12-06 09:25:47 +01:00
Dean Herbert
ca991f1f54
Move flags local to EndlessPlayer 2023-12-06 17:18:35 +09:00
Dean Herbert
44beecb840
Test multiple values, including default 2023-12-06 17:16:20 +09:00
Dean Herbert
853d67f9cc
Add test coverage of correct multiplier written to .osu file 2023-12-06 17:14:12 +09:00
Dean Herbert
01c614935b
Revert "Remove pointless test"
This reverts commit 51f9377e3d.
2023-12-06 17:09:12 +09:00
Bartłomiej Dach
2a3761fb29
Merge pull request #25598 from rodrigopina360/tournament-ban-count
Add ban count option to round editor
2023-12-06 08:45:38 +01:00
Dean Herbert
317d581a8a
Merge pull request #25685 from smoogipoo/fix-catch-pixeljump-conversion
Fix several issues around catch beatmap conversion
2023-12-06 16:19:17 +09:00
Dean Herbert
51f9377e3d
Remove pointless test 2023-12-06 16:03:32 +09:00
Dean Herbert
1b50d1011a
Move constant local to taiko 2023-12-06 15:59:34 +09:00
Dean Herbert
8a0d152bcf
Reapply legacy taiko velocity multiplier in all relevant places 2023-12-06 15:59:34 +09:00
Dean Herbert
1cb3c710ba
Remove complex implementation of taiko SV multiplier 2023-12-06 15:59:34 +09:00
Dean Herbert
b5bae566c2
Fix incorrect slider velocity being written on export for osu!taiko beatmaps 2023-12-06 15:59:34 +09:00
Dean Herbert
43dc908257
Fix test value getting clobbered due to stupid stuff
Don't even ask. Just smile and nod.
2023-12-06 15:59:29 +09:00
Dan Balasescu
394ea73055
Add some comments where truncations were added 2023-12-06 14:50:03 +09:00
Dean Herbert
79826dee58
Fix tests which were relying on SliderMultiplier==1 2023-12-06 13:50:10 +09:00
Dean Herbert
f9dd5bd828
Remove unused constant 2023-12-06 13:39:59 +09:00
Dean Herbert
0af16732b8
Change default slider velocity to 1.4
This is the default in osu!stable and plays better than 1.0.
2023-12-06 13:38:46 +09:00
Dan Balasescu
40ff95d586
Fix diffcalc tests 2023-12-06 12:27:11 +09:00
Dan Balasescu
2c44ca1915
Add more test beatmaps
Move test files to Catch.Tests project
2023-12-06 12:27:11 +09:00
Dean Herbert
4da6d53c72
Merge pull request #25672 from frenzibyte/fix-argon-health-display-2
Fix `ArgonHealthDisplay` sometimes behaving weirdly on miss judgements (alternative)
2023-12-06 12:24:39 +09:00
Dean Herbert
639fac2d49
Fix being able to change ruleset / beatmap when opening skin editor from main menu
No tests because it would be silly to test this – it's already a well
established behaviour and was just initialised incorrectly.
2023-12-06 12:09:34 +09:00
Dean Herbert
2605aafe24
Merge branch 'master' into tournament-ban-count 2023-12-06 12:05:17 +09:00
Dean Herbert
49ca1ccb22
Simplify state reset in test scene 2023-12-06 12:03:54 +09:00
Dean Herbert
73aaa0406a
Add test coverage of multiple bans order 2023-12-06 12:00:32 +09:00
Dean Herbert
1d1b855510
Refactor test for readability 2023-12-06 11:57:04 +09:00
Dean Herbert
ac67320b61
Refactor for readability 2023-12-06 11:50:43 +09:00
Dean Herbert
8afa88eae0
Merge pull request #25683 from POeticPotatoes/master
Remove hover checks for mod-copying menu item
2023-12-06 11:42:21 +09:00
Dean Herbert
8286d3896f
Fix searching at song select matching incorrect ruleset
Regressed with https://github.com/ppy/osu/pull/25679.
2023-12-06 11:32:26 +09:00
POeticPotatoes
07f9f5c6d8 Remove hover checks for mod-copying menu item 2023-12-06 06:33:25 +08:00
Bartłomiej Dach
43701c5d47
Prefer using statement to fully qualified name 2023-12-05 21:49:32 +01:00
Bartłomiej Dach
7392cc2fda
Fix headless test failures due to input handling idiosyncrasies 2023-12-05 21:49:04 +01:00
Bartłomiej Dach
2c7db61a5c
Improve test 2023-12-05 21:19:35 +01:00
Salman Ahmed
f45336a4f6 Make skin dropdown searching non-contiguous 2023-12-05 22:53:48 +03:00
Salman Ahmed
d4aedaf22d Always show search bar in skin dropdown for visibility 2023-12-05 22:53:48 +03:00
Salman Ahmed
ee2e176082 Add osu! dropdown search bar implementation 2023-12-05 22:53:48 +03:00
Salman Ahmed
d92db8059e Add new dropdown properties to SettingsDropdown 2023-12-05 22:53:48 +03:00
Salman Ahmed
a67df76654 Add test coverage 2023-12-05 22:53:48 +03:00
Salman Ahmed
b8b82f8901 Handle back action in OsuDropdown rather than menu 2023-12-05 22:47:10 +03:00
Salman Ahmed
a0813d18ca CalculatedTextSize -> FontSize 2023-12-05 22:47:10 +03:00
Salman Ahmed
c55bfc03ee Move private method 2023-12-05 22:06:53 +03:00
Salman Ahmed
20fd458fac Perserve miss animation when followed by a hit at same frame 2023-12-05 21:59:28 +03:00
Salman Ahmed
986f4fa407 Add test scenarios for same-frame judgements 2023-12-05 21:59:28 +03:00
Salman Ahmed
9496cdf42b Add explanatory note for scheduling 2023-12-05 21:59:28 +03:00
Salman Ahmed
927cfe4257 Fix health processor event leaks 2023-12-05 21:59:28 +03:00