Commit Graph

534 Commits

Author SHA1 Message Date
Salman Ahmed
a3234e2cde Add failing test case 2024-08-20 12:39:41 +09:00
Dean Herbert
5710f0f302
Merge pull request #26254 from frenzibyte/mania-combo-counter
Add argon/classic osu!mania combo counter
2024-08-15 17:56:28 +09:00
Dean Herbert
e465049050
Merge branch 'master' into mania-combo-counter 2024-08-14 15:12:00 +09:00
Dean Herbert
2221c4891f
Remove legacy non-pooled pathway to DrawableJudgement 2024-08-13 21:03:00 +09:00
Dean Herbert
e645651ef4
Merge branch 'master' into mania-combo-counter 2024-08-09 00:19:17 +09:00
clayton
48d9bc982f
Fix tests 2024-08-07 14:36:04 -07:00
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
Salman Ahmed
95961dc989 Add various visual test coverage 2023-12-30 05:29:44 +03: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