1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-17 03:55:30 +08:00
Commit Graph

527 Commits

Author SHA1 Message Date
Bartłomiej Dach
449d50a46a
Add failing test case 2024-07-08 16:28:33 +02:00
Dean Herbert
5350945340
Update HasFlag usages 2024-07-03 00:19:04 +09:00
Bartłomiej Dach
3bf3e9133b
Merge pull request #28689 from smoogipoo/fix-break-conversion
Fix `ManiaModInvert` permanently destroying the beatmap
2024-07-02 07:53:16 +02:00
Dan Balasescu
04da1209f7
Revert "Change breaks list to IReadOnlyList"
This reverts commit 2c3b411bb5.
2024-07-02 12:16:11 +09:00
Dean Herbert
2c3b411bb5
Change breaks list to IReadOnlyList 2024-07-02 11:59:24 +09:00
Nathan Du
1eb10e029c Rewrite no release mod
Per the request of spaceman_atlas, the No Release mod is rewritten to
avoid modifications to DrawableHoldNoteTail. The approach is based
on that of the Strict Tracking mod for the osu!(standard) ruleset,
injecting the mod behavior by replacing the normal hold note with
the mod's variant. The variant inherits most bevaior from the normal
hold note, but when creating nested hitobjects, it creates its own
hold note tail variant instead, which in turn is used to instantiate
the mod's variant of DrawableHoldNoteTail with a new behavior.

The time a judgement is awarded is changed from the end of its
Perfect window to the time of the tail itself.
2024-07-01 20:29:30 +08:00
Dan Balasescu
4cb58fbe47
Add failing test 2024-07-01 15:02:00 +09:00
Nathan Du
463ab46fee formatting 2024-06-29 16:46:16 +08:00
Nathan Du
679f4735b3 add tests for No Release mod
The new test scene is essentially a copy of TestSceneHoldNoteInput,
modified to test the judgement changes applied by the new mod. A base
class might need to be abstracted out for them.
2024-06-29 16:20:07 +08:00
Dean Herbert
14104e57d4
Merge branch 'master' into timeline-drag-selection-crash 2024-06-20 15:16:10 +09:00
Bartłomiej Dach
659505f711
Adjust calls to GetContainingInputManager() 2024-06-18 07:41:19 +02:00
Bartłomiej Dach
31a8bc7553
Remove redundant qualifier 2024-06-14 14:12:55 +02:00
Bartłomiej Dach
bdeea37a44
Commit active placement when starting drag selection via timeline
This was reported in https://github.com/ppy/osu/pull/28474, albeit the
code changes proposed there did not fix the issue at all.

See 8b6385f7d0 for demonstration of the
crash scenario. Basically what is happening there is:

- The starting premise is that there is a spinner placement active.
- At this time, a drag selection is started via the timeline.
- Once the drag selection finds at least one suitable object to select,
  it mutates `SelectedItems`.
- When selection changes for any reason, the `HitObjectComposer`
  decides to switch to the "select" tool, regardless of why
  the selection changed.
- Changing the active tool causes the current placement - if any -
  to be committed, which mutates the beatmap.
- Back at the drag box selection code, this causes a "collection
  modified when enumerating" exception.

The proposed fix here is to eagerly commit active placement - if any -
when drag selection is initiated via the timeline, which avoids this
issue. This also appears to vaguely match stable behaviour and is sort
of consistent with the logic of committing any outstanding changes upon
switching to the selection tool.
2024-06-14 09:32:40 +02:00
Bartłomiej Dach
6d2f910813
Add test coverage 2024-06-12 15:43:33 +02:00
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
e67d73be7d
Add test coverage 2024-06-11 12:28:39 +02:00
Bartłomiej Dach
f787a29f49
Add test coverage 2024-06-07 09:19:17 +02:00
Dean Herbert
636e200471
Update tests in line with new structure 2024-05-14 22:34:05 +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
Dan Balasescu
a761a7bced
Hook up touch device mod 2024-05-14 19:14:58 +08:00
Bartłomiej Dach
9b923b1909
Fix code quality issues 2024-03-26 10:55:49 +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
5bd037fe8f
Merge branch 'master' into catch-fail-on-banana 2024-03-04 13:13:26 +09:00
Dean Herbert
4184a5c1ef
Add flag to allow backwards seeks in tests 2024-02-29 23:05:28 +08:00
Salman Ahmed
ec85bf0ae6 Update other VS code configuration files 2024-02-16 01:45:30 +03: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
Bartłomiej Dach
d07ea8f5b1
Add failing test coverage for mania 2024-02-13 13:06:19 +01:00
Dan Balasescu
5265d33c12
Make coverage into a bindable 2024-02-06 23:33:00 +09:00
Dan Balasescu
6e4d52863c
Upgrade to .NET 8 SDK 2024-02-02 21:28:51 +09:00
Andrei Zavatski
7dba870518 Rework Content storage in ColumnFlow 2024-01-30 03:07:37 +03:00
Dean Herbert
18d16018d3
Fix failing tests due to pooling safety changes 2024-01-21 12:17:16 +09:00
Dean Herbert
a69fd8198d
Update framework and other nuget packages
- Moq held back because dicks
- NUnit held back because large API changes (trivial but effort)
- SignalR held back due to api deprecations
2024-01-21 11:00:53 +09:00
Dan Balasescu
88a5ba8167
Add mania/osu sudden death mod tests 2023-12-22 16:43:09 +09:00
Dan Balasescu
93efa98d9b
Fix mania "Great" hits failing with perfect mod 2023-12-22 16:19:36 +09:00
Dan Balasescu
9c35e25036
Add failing tests 2023-12-22 13:58:12 +09:00
Bartłomiej Dach
b0da24176e
Remove outdated inline comments 2023-12-20 15:44:02 +01:00
Dean Herbert
d417b156b2
Update test expectations 2023-12-20 19:57:42 +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
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
230278f2c9
Once again remove Mania passive HP drain 2023-12-03 01:47:20 +09:00
Dean Herbert
efb6c30252
Merge branch 'master' into scoring-test-mods 2023-11-28 18:38:50 +09:00
Dean Herbert
3afaafb1d9
Reorder and simplify private helper methods 2023-11-21 15:05:51 +09:00
ratinfx
6ddecfd806 Update Test cases 2023-11-11 14:13:06 +01:00