1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-17 05:22:54 +08:00
Commit Graph

34883 Commits

Author SHA1 Message Date
Dean Herbert
ca86524c92 Add locking on join/leave operations 2020-12-08 20:43:18 +09:00
Dean Herbert
fdf025942b Ensure room is locked when mutating users 2020-12-08 20:43:18 +09:00
Dean Herbert
8ebdb5723b Add models for users and rooms 2020-12-08 20:43:18 +09:00
Dean Herbert
f4ccbbd092 Add basic server implementation 2020-12-08 20:43:18 +09:00
Dean Herbert
daed27460c Add simple user state class 2020-12-08 20:43:18 +09:00
Dean Herbert
be4a668e0b Add basic structure for multiplayer state and model components 2020-12-08 20:43:18 +09:00
Dean Herbert
a5e2509d52
Merge pull request #11105 from Joehuu/mod-settings-fade-in/out
Add fade in/out animations to mod settings container
2020-12-07 17:12:29 +09:00
Dean Herbert
9cd3cec041
Merge pull request #11111 from ekrctb/fix-mouse-settings-null-reference 2020-12-07 16:55:05 +09:00
Dean Herbert
454e94574c Add corner rounding and positional transform 2020-12-07 16:43:07 +09:00
Dean Herbert
7253866e17 Move customisation panel to be in same area as main content 2020-12-07 16:42:55 +09:00
ekrctb
f4eb17d398
Update osu.Game/Overlays/Settings/Sections/Input/MouseSettings.cs
Set mouse confine mode at initialization

Co-authored-by: Dean Herbert <pe@ppy.sh>
2020-12-07 16:09:14 +09:00
ekrctb
2469608c10 Fix possible null reference due to bindable change before variable is initialized 2020-12-07 15:19:18 +09:00
Dan Balasescu
8757c89246
Merge pull request #11108 from peppy/fix-discord-rpc-crashes
Update DiscordRichPresence with fix for startup crashes
2020-12-07 13:40:57 +09:00
Dean Herbert
42b810d0c8 Update DiscordRichPresence with fix for startup crashes 2020-12-07 13:03:34 +09:00
Joehu
15e0ea332b Check state instead of alpha in tests 2020-12-06 13:18:19 -08:00
Joehu
0f9b38da08 Add fade in/out animations to mod settings container 2020-12-06 11:35:14 -08:00
Dean Herbert
56699df0cf
Merge pull request #11101 from bdach/confine-mode-dropdown-fullscreen
Hide confine mode dropdown when full-screen
2020-12-06 22:47:04 +09:00
Bartłomiej Dach
71edada623 Hide confine setting entirely in fullscreen 2020-12-05 22:15:41 +01:00
Bartłomiej Dach
08f23cc424 Revert leasing logic 2020-12-05 22:15:41 +01:00
Bartłomiej Dach
15ce7bacf1 Add test coverage for confine functionality
Due to growing levels of complexity around confine logic.
2020-12-05 14:17:05 +01:00
Bartłomiej Dach
0a745144e3 Disable confine mode dropdown when full-screen
After hard-locking the mouse confine mode to `Always` in full-screen to
prevent confine issues from popping up, the confine mode dropdown in
settings had confusing UX due to seemingly having no effect when
full-screen.
2020-12-05 13:49:09 +01:00
Dean Herbert
9064ca9064
Merge pull request #11066 from ekrctb/fix-sample-expire
Fix DrawableHitObjects potentially expiring before their hit samples finish playback
2020-12-04 21:52:36 +09:00
Dean Herbert
91c5183b3e
Merge pull request #11092 from peppy/fix-fullscreen-mouse-confining
Always confine mouse to screen when running fullscreen
2020-12-04 21:52:20 +09:00
Dean Herbert
7c0edb796e Always confine mouse to screen when running fullscreen 2020-12-04 20:49:18 +09:00
Dean Herbert
a21311f029
Merge pull request #11089 from Joehuu/one-binding-not-sentence-cased 2020-12-04 18:02:27 +09:00
Joehu
b8c284b34f Fix one more key binding string not being sentence cased 2020-12-04 00:51:46 -08:00
Dean Herbert
ff64ba1b08
Merge pull request #11071 from ekrctb/caught-object-refactor 2020-12-04 17:17:38 +09:00
Dean Herbert
d3a17b65d5 Move public methods upwards 2020-12-04 14:36:40 +09:00
Dean Herbert
8988023407 Tidy up code formatting and remove unnecessarily publicly exposed methods 2020-12-04 14:35:56 +09:00
Dean Herbert
aa24890aff
Merge branch 'master' into caught-object-refactor 2020-12-04 14:12:33 +09:00
Dean Herbert
e37c325d94
Merge pull request #11084 from bdach/fix-hidden-increased-visibility-state-2 2020-12-04 14:08:36 +09:00
Dean Herbert
a0f92628ac Merge branch 'master' into fix-sample-expire 2020-12-04 13:49:08 +09:00
Dean Herbert
2f4b3a2d4c
Merge branch 'master' into fix-hidden-increased-visibility-state-2 2020-12-04 13:38:01 +09:00
Dean Herbert
aeb059bcce
Merge pull request #11069 from smoogipoo/fix-hidden-mod-crash 2020-12-04 13:27:43 +09:00
Dean Herbert
48c42e4247
Merge pull request #11083 from LittleEndu/recommend-if-filtered
Select recommended beatmap if last selection is filtered
2020-12-04 13:22:34 +09:00
Dean Herbert
0134ac94a7
Merge pull request #11055 from ekrctb/catch-stateless-rng 2020-12-04 13:08:30 +09:00
Dean Herbert
5db15a6b26
Merge branch 'master' into fix-hidden-mod-crash 2020-12-04 12:50:02 +09:00
Dean Herbert
d15f947778
Merge pull request #11073 from smoogipoo/dho-remove-onparentreceived 2020-12-04 11:41:34 +09:00
Dean Herbert
5ded4b9faa
Merge branch 'master' into dho-remove-onparentreceived 2020-12-04 11:04:56 +09:00
Dean Herbert
3b38e0259f
Merge pull request #11085 from bdach/sampleinfo-consistent-hashcode 2020-12-04 10:31:44 +09:00
ekrctb
23af70dd32 Invert if 2020-12-04 10:24:25 +09:00
ekrctb
e82ca66d3e Fix depth of dropped objects 2020-12-04 10:21:54 +09:00
ekrctb
3de46d0a3b Fix & clarify catcher tests 2020-12-04 10:14:00 +09:00
Bartłomiej Dach
15d9147edd Ensure equality member consistency for SampleInfo
The previous implementation of `SampleInfo`'s equality members was not
completely correct in its treatment of the `sampleNames` array. While
`Equals()` compared the values of `sampleNames` using `SequenceEqual()`,
therefore performing a structural check that inspects the contents of
both arrays, `GetHashCode()` used `HashCode.Combine()` directly on the
arrays, therefore operating on reference equality. This could cause the
pooling mechanism of samples to fail, as pointed out in #11079.

To resolve, change the `GetHashCode()` implementation such that it also
considers the contents of the array rather than just the reference to
the array itself. This is achieved by leveraging
`StructuralEqualityComparer`.

Additionally, as a bonus, an array sort was added to the constructor of
`SampleInfo`. This is intended to be a "canonicalisation" processing
step for the array of sample names. Thanks to that sort, two instances
of `SampleInfo` that have the same sample names but permutated will also
turn out to be equal and have the same hash codes, given the
implementation of both equality members. This gives `SampleInfo`
set-like semantics.
2020-12-03 23:25:53 +01:00
Bartłomiej Dach
71fa0da7f4 Add failing test cases 2020-12-03 23:13:48 +01:00
Bartłomiej Dach
4d739f11a8 Fix spinner ticks getting increased visibility state
Regressed in #10696. The old `IsFirstHideableObject()` method did not
consider nested hitobjects, while its replacement -
`IsFirstAdjustableObject()` - did. Therefore, spinner ticks could be
considered first adjustable objects, breaking the old logic.

There is no need to match over `SpinnerBonusTick`, as it inherits from
`SpinnerTick`.
2020-12-03 22:51:59 +01:00
Bartłomiej Dach
0bc591fef2 Add failing assertions
`GameplayBeatmap` has to be used instead of the normal bindable
`Beatmap`, beecause the former uses osu!-specific hitobjects, while
the latter returns convert objects (i.e. `ConvertSlider`s).

Similarly, the mod has to be fetched from the player instead of the
global bindable, as `Player` has its own cloned instance of the mod, to
which the beatmap is applied. The global bindable instance does not have
`FirstObject` set.
2020-12-03 22:51:59 +01:00
Endrik Tombak
c25e2c3dd5 Select recommended beatmap if last selection is filtered 2020-12-03 23:13:14 +02:00
Dan Balasescu
1d92800761
Merge pull request #11068 from peppy/fix-carousel-edge-masking
Fix beatmap carousel panels getting masked away when out of scroll bounds
2020-12-03 20:40:44 +09:00
smoogipoo
09af4bbd57 Merge branch 'dho-remove-onparentreceived' into fix-hidden-mod-crash 2020-12-03 20:10:16 +09:00