Dean Herbert
004798d61d
Update Legacy components to not require skin in ctor
2021-05-11 18:39:14 +09:00
Dean Herbert
b54eb56169
Move new judgement binding to LoadComplete
to ensure containers are loaded
2021-05-11 18:39:14 +09:00
Dean Herbert
6a88b8888b
Add basic support for child serialisation
2021-05-11 18:39:14 +09:00
Dean Herbert
df72656aa1
Remove downwards dependency from HUDOverlay
to HealthDisplay
2021-05-11 18:39:14 +09:00
Dean Herbert
95a497e9df
Remove unused interface class for simplicity
2021-05-11 18:39:14 +09:00
Dean Herbert
95a8f21ab2
Add the concept of skinnable target containers and mark a basic one for HUD elements
2021-05-11 18:39:14 +09:00
Dean Herbert
67ea4a7e97
Read from skin config
2021-05-11 18:39:14 +09:00
Dean Herbert
b9ab9342fa
Setup basics to allow extracting serializable content from skinnable Drawable
s
2021-05-11 18:39:14 +09:00
smoogipoo
10a4a5decb
Merge branch 'master' into multiplayer-spectator-screen
2021-05-11 17:33:09 +09:00
Dan Balasescu
7d9cdd3bc2
Merge branch 'master' into skin-components-list
2021-05-11 17:27:48 +09:00
Salman Ahmed
004ce95f33
Merge branch 'current-star-rating' into player-loader-star-rating
2021-05-11 09:53:10 +03:00
smoogipoo
0f00ee8640
Change failure text
...
Although this is not visible anywhere.
2021-05-11 11:35:08 +09:00
smoogipoo
8c9390dc75
Remove replay condition
2021-05-11 11:33:21 +09:00
smoogipoo
6db9e26d48
Fix score submission failures with autoplay
2021-05-11 11:28:09 +09:00
smoogipoo
32f7691349
Fix token failure preventing base.LoadAsyncComplete()
2021-05-11 11:24:35 +09:00
Dean Herbert
2ecd638f7f
Merge branch 'master' into skin-components-list
2021-05-10 18:13:10 +09:00
smoogipoo
fa872858b5
Remove unnecessary check
2021-05-10 16:40:06 +09:00
Dean Herbert
97e72849af
Fix regressed HitErrorDisplay
behaviour (and localise binding to meter implementations)
2021-05-10 15:24:13 +09:00
Dan Balasescu
78952c07b0
Merge branch 'master' into remove-hud-overlay-unused-pieces
2021-05-10 14:39:32 +09:00
smoogipoo
35a7226cd8
Add newline
2021-05-10 13:41:04 +09:00
Dean Herbert
52ce16f9f1
Merge branch 'master' into player-loader-star-rating
2021-05-10 12:46:10 +09:00
Dean Herbert
3c3500d070
Merge branch 'skin-components-bind-outwards-health' into remove-hud-overlay-unused-pieces
2021-05-10 12:23:18 +09:00
Dean Herbert
1bbbe80420
Fix missing instances of HealthProcessor
caching
2021-05-10 12:22:24 +09:00
Dean Herbert
b274fdf20d
Merge branch 'master' into skin-components-bind-outwards-health
2021-05-10 11:13:44 +09:00
Dean Herbert
2bcf1ed306
Merge pull request #12715 from Cublibre/fix-early-exit-crash
...
Fix InvalidOperationException when exiting a map at the end
2021-05-09 23:21:19 +09:00
Bartłomiej Dach
67cea6e762
Remove explicit binding to accuracy counter from overlay
2021-05-08 21:38:06 +02:00
Bartłomiej Dach
0bc6a026eb
Merge branch 'master' into skin-components-bind-outwards-accuracy
2021-05-08 21:08:53 +02:00
Salman Ahmed
c52f1733be
Apply further refactoring to star rating display UX-wise
2021-05-08 21:17:19 +03:00
Christine Chen
25312b3e88
Don't restart completion delegate on exit, revert exit behavior to lazer
2021-05-08 11:47:44 -04:00
Salman Ahmed
655e8d3d86
Remove pattern-matching on nullable with simple .HasValue
/.Value
2021-05-08 18:44:44 +03:00
Salman Ahmed
a75347cb2a
Remove nullable facade logic
2021-05-08 18:43:17 +03:00
Salman Ahmed
dca5efc59a
Remove no longer necessary ruleset info requirement
2021-05-08 13:00:39 +03:00
Salman Ahmed
43090067da
Use BeatmapDifficultyCache.GetBindableDifficulty(...)
instead
2021-05-08 12:59:59 +03:00
Salman Ahmed
b4801faf32
Pass ruleset info to constructor instead
...
Follows the way working beatmap is passed, not sure why mods are passed as a bindable though, don't wanna bother too much with that.
2021-05-08 11:57:13 +03:00
Salman Ahmed
7b7e7a86bf
Allow null logo facade
2021-05-08 11:47:18 +03:00
Salman Ahmed
0f08c2a479
Add star rating display underneath the beatmap metadata
2021-05-08 11:47:18 +03:00
Christine Chen
8c564a69ed
Fix InvalidOperationException when exiting a map at the end
2021-05-07 21:11:03 -04:00
Dean Herbert
a1aeac5677
Remove remaining cruft from SkinnableAccuracyCounter
2021-05-07 18:12:18 +09:00
Dean Herbert
68de870986
Merge branch 'skin-components-bind-outwards-health' into remove-hud-overlay-unused-pieces
2021-05-07 18:11:14 +09:00
Dean Herbert
9fe6e1096a
Remove cruft from SkinnableHealthDisplay
2021-05-07 18:11:08 +09:00
Dean Herbert
1cb10c2a22
Remove unnecessary binding logic from HUDOverlay
2021-05-07 17:51:46 +09:00
Dean Herbert
a7acecc52b
Merge branch 'skin-components-bind-outwards-health' into remove-hud-overlay-unused-pieces
2021-05-07 17:51:41 +09:00
Dean Herbert
04d35826a3
Merge branch 'skin-components-bind-outwards-accuracy' into remove-hud-overlay-unused-pieces
2021-05-07 17:25:39 +09:00
Dean Herbert
755588258e
Update HealthDisplay
components to use DI to attach data source
2021-05-07 17:22:45 +09:00
Dean Herbert
01eff7f316
Merge branch 'skin-components-bind-outwards' into skin-components-bind-outwards-score-display
2021-05-07 16:30:08 +09:00
Dean Herbert
93f10330e3
Merge branch 'skin-components-bind-outwards' into skin-components-bind-outwards-accuracy
2021-05-07 16:29:10 +09:00
Dean Herbert
ad398165a2
Update AccuracyCounter
components to use DI to attach data source
2021-05-07 16:27:25 +09:00
Dean Herbert
17b93361d5
Merge branch 'master' into skin-components-bind-outwards
2021-05-07 16:20:24 +09:00
Dean Herbert
a2e4fb5b6b
Update ScoreCounter
components to bind outwards
2021-05-07 16:16:48 +09:00
Dean Herbert
ee23124bb1
Remove no-longer-used interface
2021-05-06 15:18:06 +09:00
Dean Herbert
aff32b0d19
Merge branch 'master' into skin-components-list
2021-05-06 14:17:33 +09:00
Bartłomiej Dach
3cac837acf
Merge branch 'master' into skin-bindables
2021-05-05 20:16:27 +02:00
Dean Herbert
9ec3255c50
Fix SkipOverlay
's FadeContent
not getting correct state from parent
2021-05-05 17:50:25 +09:00
Christine Chen
1472960319
Hide and disable skip outro overlay on rewind
2021-05-04 21:35:36 -04:00
Dean Herbert
b380be7169
Add xmldoc for updateCompletionState
2021-05-04 16:43:51 +09:00
Dean Herbert
4c7a4239f8
Fix AllowGameplayOverlays
potentially not working for outro skip overlay
2021-05-04 16:36:07 +09:00
Dean Herbert
b30145de40
Specify explicit primitive type
2021-05-04 16:35:50 +09:00
Dean Herbert
bb9fa1a25e
Merge branch 'master' into play-storyboard-outro
2021-05-04 14:01:34 +09:00
Dean Herbert
ca4b860920
Move BindValueChanged
call to LoadComplete
2021-05-03 20:11:24 +09:00
Dean Herbert
625890381f
Update ComboCounter
components to use DI to attach data source
2021-05-03 17:43:00 +09:00
Dean Herbert
8b82a07914
Move skin-related interfaces out of HUD namespace
2021-04-30 13:10:42 +09:00
Dean Herbert
5585a7d438
Add basic interfaces for skinnable target containers
2021-04-30 13:10:42 +09:00
Dean Herbert
6442fb819f
Split out component from test scene and fix SongProgress
2021-04-30 13:10:42 +09:00
Dean Herbert
434e63d629
Add skin customisation support to song progress display
2021-04-29 16:12:15 +09:00
Dean Herbert
fd587a82ff
Replace abstract class with interface, attached to the actual components (not skinnable wrapper)
2021-04-29 16:12:15 +09:00
Dean Herbert
defa350aa7
Set defaults on SkinnableHUDComponent to cancel out relative size default
...
Specifying locally on each HUD component looks to make more sense.
2021-04-29 16:12:15 +09:00
Dean Herbert
2540d6029c
Use AutoSize for SkinnableHudComponents
2021-04-29 16:12:15 +09:00
Dean Herbert
59339aa4fd
Add support for x/y position and scale back in
2021-04-29 16:12:15 +09:00
Dean Herbert
1cb8fc9a24
Extract editor classes out of test namespace and add anchor support
2021-04-29 16:12:15 +09:00
Dean Herbert
74fb7cd180
Extract storable attributes to bindables
2021-04-29 16:12:15 +09:00
Dean Herbert
fca173225a
Refactor editor selection/blueprint components to be generic
2021-04-29 16:12:14 +09:00
Dean Herbert
2d17219c8f
Setup basic test and classes for scale adjustment
2021-04-29 16:12:14 +09:00
Dean Herbert
3b876a43c2
Merge branch 'master' into multiplayer-spectator-screen
2021-04-26 14:12:35 +09:00
Bartłomiej Dach
e937b778f6
Fix potential failure in ensureSourceClockSet()
...
`ensureSourceClockSet()` was intended to only run when the adjustable
source hasn't been set at all yet. As it turns out permitting it to run
unconditionally can break the state of the underlying interpolated
clock. This is caused by the following factors:
* While the decoupleable clock is running, its `CurrentTime` does not
come from either the source clock, or the internal stopwatch; it is
instead calculated using the base `InterpolatingFramedClock` logic.
* A source change of a decoupleable clock seeks the provided source
clock to the decoupleable's current time.
* When an interpolating clock is seeked (decoupleable clock is also
an interpolating one), its interpolation state
(`{Last,Current}InterpolatedTime`) are reset to 0.
* If the interpolating clock determines that its current time is too
far away from the source's time (which was set when the source is
changed), it will ignore the source and instead continue to use
its current time until the source clock has caught up.
Overall, the source change is not really necessary if a source is
already there. The only reason to ensure it was set was to make sure
the first seek of the gameplay clock wasn't performed in decoupled
mode. Therefore, add a guard to make sure the source is only set if
there isn't one already.
2021-04-24 14:19:39 +02:00
Bartłomiej Dach
fdb5490e51
Attempt to explain source initialisation better
2021-04-23 21:56:08 +02:00
smoogipoo
ae2fd2f2e1
Ensure source is set on reset
2021-04-23 18:46:59 +09:00
smoogipoo
f32d00c0d9
Fix post-merge errors
2021-04-21 17:13:01 +09:00
smoogipoo
e78ef05fcf
Merge branch 'gcc-abstraction' into multiplayer-spectator-screen
2021-04-21 17:11:14 +09:00
smoogipoo
fb848f7544
Rename to MasterGameplayClock
2021-04-21 16:33:14 +09:00
smoogipoo
ec080fcb32
Move seekOffset back to MasterGameplayClockContainer
2021-04-20 18:25:46 +09:00
smoogipoo
a683e5ec34
Seek using local method
2021-04-20 17:40:11 +09:00
smoogipoo
97fb90d9f4
Move clock processing to base.Seek()
2021-04-20 17:35:59 +09:00
smoogipoo
3d6d26039a
Remove unused usings
2021-04-20 14:09:54 +09:00
smoogipoo
88ded95e75
Ensure clock is set in GCC.Start()
2021-04-20 13:56:13 +09:00
smoogipoo
8dd9134e3d
Move source clock adjustment application to Start()
2021-04-20 13:09:49 +09:00
smoogipoo
a92ae8ce76
Fix Reset() potentially not resetting to the intended start position
2021-04-20 13:01:42 +09:00
smoogipoo
acbf4580a4
Only set initial source in Reset()
2021-04-19 19:57:00 +09:00
smoogipoo
c7183f92f7
Rename Restart() -> Reset()
2021-04-19 19:57:00 +09:00
Christine Chen
abfa6aec87
Remove completionState parameter
2021-04-19 01:58:19 -04:00
Christine Chen
0b36dd9bce
Skip outro overlay and PerformExit() call updateCompletionState() instead of scheduleCompletion()
...
Co-Authored-By: Marlina José <marlina@umich.edu>
2021-04-19 01:23:21 -04:00
Christine Chen
99fab456b5
Storyboard completion calls updateCompletionState
...
- If the storyboard ends after the beatmap, call updateCompletionState as if the score processor has completed at that time. (completionProgressDelegate is null here since earlier when the score processor actually completed, updateCompletionState returned after showing the skip overlay.)
- If the storyboard ends before the beatmap does, updateCompletionState simply returns and waits until the score processor is completed.
- If the storyboard and beatmap end at the exact same time, make sure updateCompletionState() is called only once by the score processor completion.
Co-Authored-By: Marlina José <marlina@umich.edu>
2021-04-18 23:25:20 -04:00
Salman Ahmed
f45aed1259
Remove new line between skip overlay fields
2021-04-18 07:25:52 +03:00
Salman Ahmed
f6a09be62d
Add further xmldoc
2021-04-18 07:25:49 +03:00
Salman Ahmed
a73bae7a66
Schedule completion when storyboard has actually ended
2021-04-18 07:25:33 +03:00
Christine Chen
c77f838fb0
HasStoryboardEnded doesn't trigger updateCompletionState()
...
Scores won't be shown prematurely if the storyboard ends before the playable portion of the beatmap.
2021-04-17 21:49:07 -04:00
Christine Chen
97bacbdc76
Show score after the end of the storyboard after it was toggled
2021-04-17 18:10:21 -04:00
Christine Chen
fdcb5e924c
Initialize skipOutroOverlay with alpha 0, other small changes
2021-04-17 17:45:38 -04:00
Christine Chen
81be562379
Read StoryboardEndTime directly from Beatmap
2021-04-17 12:28:31 -04:00
smoogipoo
c8d38f9983
Merge branch 'gcc-abstraction' into multiplayer-spectator-screen
2021-04-16 20:51:00 +09:00
smoogipoo
314b1646bd
Add xmldoc to MasterGameplayClockContainer
2021-04-16 20:47:09 +09:00
smoogipoo
3a78c19f96
More refactoring/xmldocs
2021-04-16 20:33:29 +09:00
smoogipoo
6301111fa3
Remove ClockToProcess, always process underlying clock
2021-04-16 20:17:21 +09:00
smoogipoo
a7aa3cb263
Merge branch 'gcc-abstraction' into multiplayer-spectator-screen
2021-04-16 20:16:26 +09:00
smoogipoo
f98ffbb1b3
Remove ClockToProcess, always process underlying clock
2021-04-16 20:15:42 +09:00
smoogipoo
5e82f40d67
Merge branch 'master' into gcc-abstraction
2021-04-16 20:14:53 +09:00
smoogipoo
65a6f9f8a4
Merge branch 'fix-initial-spectator-state-callback' into multiplayer-spectator-screen
2021-04-16 18:26:46 +09:00
Christine Chen
33a665224e
Clean up skipOutroOverlay if skipping is disabled
2021-04-16 01:03:15 -04:00
Christine Chen
b15838b220
Move storyboard outro logic to DrawableStoryboard
2021-04-16 00:59:10 -04:00
Christine Chen
45c2b72a25
Merge branch 'master' into play-storyboard-outro
2021-04-15 15:11:35 -04:00
Christine Chen
25b8c2f257
Allow skipping storyboard outro
...
Reuses SkipOverlay by calculating the endtime of the storyboard and using that as a "start point". Upon skipping the outro the score is instantly shown.
When the end of the storyboard is reached the score screen automatically shows up. If the player holds ESC (pause) during the outro, the score is displayed
The storyboard endtime is calculated by getting the latest endtime of the storyboard's elements, or simply returning 0 if there is no storyboard.
Co-Authored-By: Marlina José <marlina@umich.edu>
2021-04-15 13:20:40 -04:00
Dan Balasescu
a19f3bac35
Merge pull request #12408 from peppy/hide-top-right-elements-as-part-of-hud
...
Hide top-right HUD overlay elements as part of HUD visibility
2021-04-15 23:29:55 +09:00
Dean Herbert
5b06a68b93
Merge pull request #12330 from Cublibre/master
...
Send a warning notification if device is unplugged and at low battery
2021-04-15 19:21:04 +09:00
smoogipoo
fe3ba2b80e
Implement IAdjustableClock on GameplayClockContainer
2021-04-15 19:07:25 +09:00
smoogipoo
7993c2b880
Merge branch 'gcc-abstraction' into multiplayer-spectator-screen
2021-04-15 14:23:12 +09:00
smoogipoo
f56125bd68
Update clock from base class
2021-04-14 21:15:14 +09:00
smoogipoo
54643f53e3
Merge branch 'gcc-abstraction' into multiplayer-spectator-screen
2021-04-14 19:56:58 +09:00
smoogipoo
18c69cdaf7
Split out files
2021-04-14 19:50:22 +09:00
smoogipoo
b53b30c1a9
Fix incorrect offset due to another intermediate Decoupleable clock
2021-04-14 19:33:55 +09:00
smoogipoo
2935f87e70
Fix IsPaused not being bound
2021-04-14 18:29:34 +09:00
smoogipoo
1aa36818df
Abstractify GameplayClockContainer
2021-04-14 17:47:11 +09:00
Dean Herbert
7654df94f6
Merge pull request #12395 from frenzibyte/fix-cinema-ignore-settings
...
Fix beatmap background displayed if storyboard is hidden on "Cinema" mod
2021-04-14 14:31:03 +09:00
Dean Herbert
6044083cf7
Speed up the fade of the HUD a touch
2021-04-14 14:25:16 +09:00
Dean Herbert
65a1270f9a
Hide top-right HUD overlay elements as part of HUD visibility
2021-04-14 14:16:18 +09:00
smoogipoo
5b53a2b211
Merge branch 'master' into multiplayer-spectator-screen
2021-04-13 20:07:56 +09:00
Dean Herbert
2c1f20a38f
Merge branch 'master' into fix-editor-alt-scroll
2021-04-13 19:36:25 +09:00
Salman Ahmed
36510309d1
Merge EnableUserDim
and IgnoreUserSettings
to one bindable
2021-04-13 10:58:56 +03:00
Dean Herbert
273099d53c
Don't store online IDs from score submission responses for now
...
Closes remaining portion of https://github.com/ppy/osu/issues/12372 .
2021-04-13 14:31:44 +09:00
Christine Chen
f66306a81a
Remove IsLowBattery
2021-04-12 11:15:24 -04:00
Christine Chen
43b97fe0ad
Refactor PowerStatus (now called BatteryInfo)
2021-04-12 10:52:52 -04:00
smoogipoo
c531e38a36
Rework to create a derived tracked user data instead
2021-04-12 22:00:27 +09:00
Dean Herbert
0eab9daf13
Update existing overlay containers to not block scroll input
2021-04-12 16:41:36 +09:00
Salman Ahmed
1fd4cb8963
Merge branch 'master' into master
2021-04-11 10:19:16 +03:00
Christine Chen
08311abc5e
Remove setters, cache CreatePowerStatus() and use a dummy LocalPowerStatus class in test scene
2021-04-10 00:00:21 -04:00
smoogipoo
950e4e05ef
Merge branch 'multiplayer-spectator-leaderboard' into multiplayer-spectator-screen
2021-04-09 18:30:21 +09:00
smoogipoo
7cbc8f2695
Add some xmldocs
2021-04-09 18:29:02 +09:00
smoogipoo
bb15baf118
Add initial multiplayer spectator leaderboard
2021-04-09 17:31:14 +09:00
Dean Herbert
51fee79ef1
Fix scores not being accepted due to missing ruleset ID
2021-04-09 15:18:02 +09:00
Christine Chen
59d13b0dd3
Fixed indentation
...
sorry about the style fixes... I'm using JetBrains Rider from now on.
2021-04-08 21:53:42 -04:00
Christine Chen
493c095535
Fixed code style
2021-04-08 20:28:23 -04:00
Christine Chen
6bccb3aab6
Use DI to implement battery detection, add BatteryCutoff property
...
- Removed the Xamarin.Essentials package from osu.Game and added it to osu.iOS and osu.Android only.
- iOS and Android implementations use Xamarin.Essentials.Battery, while the Desktop implementation
only returns 100% battery for now.
- Added a BatteryCutoff property to PowerStatus so it can be different for each platform (default 20%, 25% on iOS)
2021-04-08 19:55:11 -04:00
smoogipoo
709016f0d6
Add initial multiplayer screen implementation
2021-04-08 22:07:00 +09:00
Christine Chen
0a6baf670e
Send a warning notification if device is unplugged and low battery
...
- Uses Xamarin.Essentials in osu.Game.PlayerLoader to check battery level
- Encapsulated battery checking in the public BatteryManager class so battery level and plugged in status can be accessed and edited in TestPlayerLoader
- When checking battery level, catch NotImplementedException thrown by Xamarin.Essentials.Battery on non-mobile platforms
- Added visual unit tests for battery notification
To mock battery status and level, we had to define a batteryManager object in TestPlayerLoader and add a new function ResetPlayerWithBattery()
Co-Authored-By: Marlina José <marlina@umich.edu>
2021-04-07 15:56:50 -04:00
smoogipoo
1f4c17b8f8
Apply changes to AllowScreenSuspension bindable
2021-04-07 21:20:44 +09:00
smoogipoo
cd53074941
Schedule spectator callbacks
2021-04-02 21:27:20 +09:00
smoogipoo
9bc2a486e0
Make SoloSpectator use the new SpectatorScreen class
2021-04-01 22:10:17 +09:00
smoogipoo
9e95441aa6
Rename Spectator -> SoloSpectator
2021-04-01 22:08:52 +09:00
Dean Herbert
0c53b4eb93
Fix wrong counting and add test
2021-03-31 14:09:39 +09:00
Dean Herbert
e0c61f4dc5
Fix retry count not updating correctly
...
Regressed with changes to player reference retention logic. Could add a
test but the logic is so local now it seems quite redundant.
2021-03-31 13:57:58 +09:00
Salman Ahmed
6aa0c9d8fd
Merge branch 'master' into legacy-sprite-text-fonts
2021-03-25 14:52:01 +03:00
Dean Herbert
4269cb7124
Extract majority of token retrieval code out of LoadComponentAsync for legibility
2021-03-25 13:48:41 +09:00
Dean Herbert
d55324585d
Change RoomSubmittingPlayer's request implementation to return null on RoomID missing, rather than silently succeeding
2021-03-24 13:23:23 +09:00
Dean Herbert
84b2f9a848
Make token private
2021-03-24 13:20:44 +09:00
Dean Herbert
a0c6c4da35
Rename and refactor token request process to be easier to understand
2021-03-24 13:17:29 +09:00
Dean Herbert
e372e355ef
Reorder overrides in SoloPlayer to better follow chronological request order
2021-03-24 13:12:51 +09:00
Dean Herbert
8bed7748d6
Rename token request method to avoid double Request terminology
2021-03-24 13:02:37 +09:00
Dean Herbert
a1c35677ef
Add more xmldoc
2021-03-24 13:02:17 +09:00
Dean Herbert
e649a330a4
Implement SoloPlayer's request construction
2021-03-23 18:23:25 +09:00
Dean Herbert
242b847516
Add flow for allowing gameplay to continue even when an error occurs with token retrieval
2021-03-23 18:23:25 +09:00
Dean Herbert
3cd8bf2d7f
Move token request construction to LoadAsyncComplete to better allow DI usage
2021-03-23 18:20:55 +09:00
Dean Herbert
571124669d
Remove all references to "score submission" from Player
2021-03-23 18:20:55 +09:00
Dean Herbert
194b2d05d3
Update SoloPlayer to derive SubmittingPlayer
2021-03-23 18:20:55 +09:00
Dean Herbert
12f050264a
Further split out a player class which submits to "rooms"
2021-03-23 18:20:55 +09:00
Dean Herbert
7045fce555
Move score submission logic in general out to its own Player type
2021-03-23 18:20:55 +09:00
Dean Herbert
6cb14e91c9
Make Player abstract and introduce SoloPlayer
2021-03-23 18:18:49 +09:00
Salman Ahmed
43c1e1d217
Update existing usages
...
Resolve post-conflict issues
2021-03-13 06:09:07 +03:00
Dean Herbert
b1cd01ceb8
Apply ConfigureAwait changes to game side
2021-03-08 14:36:35 +09:00
Dean Herbert
503f29609a
Also set additive mode to match stable
2021-03-07 23:40:09 +09:00
Joehu
3e4dfdb675
Fix pop out count being above displayed count on legacy combo counter
2021-03-06 20:37:27 -08:00
Dean Herbert
4fd8501c86
Remove unnecessary using (underlying enumerator change)
2021-02-26 20:03:03 +09:00
Dean Herbert
90e8308716
Merge branch 'master' into localisation-refactor-framework
2021-02-25 17:28:55 +09:00
Dean Herbert
e82eaffaed
Flip order back to original for romanisable strings
2021-02-25 14:14:07 +09:00
Dean Herbert
6a5c6febc5
Add inline comment explaining the retry loop
2021-02-23 13:23:32 +09:00
Salman Ahmed
5493c55da7
Fix silly mistake
2021-02-22 16:59:35 +03:00
Salman Ahmed
5e9040c291
Use "pausing supported" conditional instead
2021-02-22 16:26:35 +03:00
Dean Herbert
8a97e2e28d
Update LocalisedString usages to RomanisedString
2021-02-22 19:01:42 +09:00
Dean Herbert
1fd76ea3fb
Apply changes to UI components overriding functions with changing signatures
2021-02-22 19:01:42 +09:00
Salman Ahmed
6bac83964a
Merge branch 'master' into fix-pofl-on-cooldown
2021-02-22 10:03:27 +03:00
Dean Herbert
38a2124921
Support instant exit if pausing is not allowed in the current game mode
2021-02-20 14:26:50 +09:00
Dan Balasescu
52372fe50d
Merge pull request #11713 from peppy/fix-error-exit-during-results-transition
...
Fix a potential crash when exiting play during the results screen transition
2021-02-19 18:39:21 +09:00
Salman Ahmed
0771154dd2
Make PauseCooldownActive
protected and expose on test class
2021-02-19 11:42:30 +03:00
Salman Ahmed
ddd1dcff88
Attempt pausing every single frame
2021-02-19 11:33:26 +03:00
Dean Herbert
82cc06ca57
Fix new logic not considering fail overlay correctly
2021-02-19 17:26:54 +09:00
Dean Herbert
4c214b74ce
Merge branch 'master' into fix-error-exit-during-results-transition
2021-02-19 17:13:55 +09:00
Salman Ahmed
4436585aa4
Keep attempting to pause gameplay while window not active
2021-02-19 10:46:32 +03:00
Salman Ahmed
772471a6d8
Add failing test case
2021-02-19 10:46:31 +03:00
Dean Herbert
691cfa5bc3
Add expanded/compact display modes for GameplayLeaderboard
2021-02-19 16:46:30 +09:00
Dean Herbert
ee9e6fff40
Add bindable flow for expanded leaderboard state
2021-02-19 15:09:41 +09:00
Dean Herbert
3208b2c5bf
Fix potential nullref if mods are never set
2021-02-17 23:13:51 +09:00
Dean Herbert
403536ef80
Fix ModDisplay potentially being operated on before loaded completely
...
Closes https://github.com/ppy/osu/issues/11810 .
2021-02-17 21:11:46 +09:00
Dean Herbert
9cba350337
Refactor again to better cover cases where the pause dialog should definitely be shown
2021-02-15 15:57:36 +09:00
Dean Herbert
1aea840504
Add missing return in early exit scenario (MakeCurrent isn't compatible with the following Exit)
2021-02-15 15:03:12 +09:00
Dean Herbert
2b69c7b325
Fix incorrect order of operation in pause blocking logic
2021-02-15 14:24:08 +09:00
smoogipoo
d3f0c0730d
Merge branch 'master' into non-concurrent-sample-playback
2021-02-12 17:22:15 +09:00
Dean Herbert
2c052d70e8
Only trigger pause cooldown on pause (not exit)
2021-02-09 17:29:18 +09:00
Dean Herbert
cba116ff09
Fix incorrect call parameter for quick exit
2021-02-09 17:28:57 +09:00
Dean Herbert
61b9539864
Fix regression in quick exit logic
2021-02-09 17:14:16 +09:00
Dean Herbert
5bd4f74ddf
Fix a potential crash when exiting play during the results screen transition
2021-02-09 16:24:29 +09:00
Dean Herbert
2cac373365
Merge pull request #11706 from smoogipoo/fix-failing-test
...
Fix failing test
2021-02-08 20:57:38 +09:00
Dean Herbert
156f5bd5df
Add newline between statements
2021-02-08 20:05:16 +09:00
smoogipoo
19368f87fb
Fix failing test
2021-02-08 19:59:07 +09:00
smoogipoo
69ca440ae5
Merge branch 'master' into more-accurate-most-common-bpm
2021-02-08 18:40:58 +09:00
Dean Herbert
9e0724b138
Remove unnecessary double resolution of OsuGame
2021-02-08 15:58:41 +09:00
Dean Herbert
93f1a3c1bf
Merge branch 'master' into instant-pause-on-focus-loss
2021-02-08 14:31:40 +09:00
Joehu
d74a1437be
Fix player loader metadata not being centred
2021-02-07 15:14:08 -08:00
Salman Ahmed
d0ca2b99a8
Remove unnecessary injected dependency
2021-02-06 20:57:01 +03:00
Salman Ahmed
40ddccf0c7
Do not consider replays for "pause on focus lost"
...
Replays are not pausable as can be seen in the `canPause` check.
2021-02-06 20:56:08 +03:00
Salman Ahmed
c9db0bf886
Call break time update when loaded
2021-02-06 20:54:13 +03:00
Salman Ahmed
f29938e15d
Make last binding game activity more sensible
2021-02-05 20:39:57 +03:00
Salman Ahmed
8d18c7e929
Fix BreakTracker.IsBreakTime
not updated properly on breaks set
...
Causes a pause from focus lose when playing a beatmap that has a break section at the beginning, due to `IsBreakTime` incorrectly set to `false`
2021-02-05 10:28:35 +03:00
Salman Ahmed
e1789c29b1
Use Pause()
instead of performUserRequestedExit()
to avoid unexpected operations
2021-02-05 10:28:13 +03:00
Salman Ahmed
730e66f0ee
Make pausing on window focus lose instant
2021-02-05 09:07:59 +03:00
Dean Herbert
328bd191d4
Merge pull request #11561 from Mysfit/fix-storyboard-samples
...
Fix storyboard samples continuing to play when the beatmap is paused or intro is skipped
2021-02-01 17:48:08 +09:00
Dean Herbert
f054b38105
Merge branch 'master' into revert-beatmap-controlpointinfo-cloning
2021-01-25 18:25:53 +09:00
Dean Herbert
91ce3df3a9
Bind MultiplayerGameplayLeaderboard to player updates later in load process
2021-01-25 17:44:01 +09:00
Mysfit
b220939650
Fix storyboard samples continuing to play when the beatmap is paused or the intro is skipped.
2021-01-21 17:10:11 -05:00
smoogipoo
de9d075f94
Initial sample + samplechannel rework
2021-01-19 17:11:40 +09:00
Dean Herbert
d6e6b4bbee
Revert forced cloning of ControlPointInfo
...
This reverts commit 3c3e860dbc
.
Closes https://github.com/ppy/osu/issues/11491 .
2021-01-15 17:34:59 +09:00
smoogipoo
c6e9a6cd5a
Make most common BPM more accurate
2021-01-15 14:28:49 +09:00
Mysfit
5f10bcce02
Added beatmap colour settings checkbox and associated tests.
2021-01-13 00:09:22 -05:00
Bartłomiej Dach
25b4628672
Merge branch 'master' into fix-transform-mutation-from-background
2021-01-06 11:04:51 +01:00
Bartłomiej Dach
2b253f6d01
Remove now-unused fields & locals
2021-01-05 22:56:53 +01:00
Dean Herbert
54982dcdd7
Refactor LoadingLayer to avoid applying effects to external drawables
...
In theory this seemed like a good idea (and an optimisation in some
cases, due to lower fill rate), but in practice this leads to weird edge
cases.
This aims to do away with the operations on external drawables by
applying a dim to the area behind the `LoadingLayer` when required.
I went over each usage and ensured they look as good or better than
previously.
The specific bad usage here was the restoration of the colour on dispose
(if the `LoadingLayer` was disposed in a still-visible state).
I'm aware that the `BeatmapListingOverlay` will now dim completely during
load. I think this is fine for the time being.
2021-01-05 17:31:45 +09:00
Dean Herbert
b3f08b29ca
Ensure that all changes to screen backgrounds are on the correct thread
2021-01-05 15:22:50 +09:00
Dean Herbert
20d04d6933
Fix Storyboard's FirstEventTime not finding the true earliest event
2021-01-04 15:16:01 +09:00
mcendu
17abe90c27
move SkinnableHealthDisplay
...
Similar components are in osu.Game.Screens.Play.HUD while this is not
2020-12-31 20:23:13 +08:00
Dean Herbert
e3a41f6118
Rename variable to make more sense
...
It needs to be explicitly stated that the users in this list are related
to the *joined* room. Especially since it's sharing its variable name
with `SpectatorStreamingClient` where it has the opposite meaning (is a
list of *globally* playing players).
2020-12-29 14:27:35 +09:00
Bartłomiej Dach
a9822800fc
Add more null hinting in GameplayLeaderboard
2020-12-28 13:00:05 +01:00
Dean Herbert
447a55ce11
Fix incorrect null handling in GameplayLeaderboard
2020-12-28 20:16:53 +09:00
Bartłomiej Dach
2ff49f4758
Merge branch 'master' into fix-quit-user-showing-in-leaderboard
2020-12-27 13:02:40 +01:00
Bartłomiej Dach
f75dccc9e4
Explicitly use discard in value changed callback
2020-12-27 13:00:27 +01:00
Bartłomiej Dach
6b6b1514e2
Rename method to be less misleading
...
As it doesn't only change colour, but also width.
2020-12-27 12:58:37 +01:00
Dean Herbert
1b34f2115f
Remove dignostics using
2020-12-27 16:57:23 +09:00
Dean Herbert
d14a8d24b5
Remove assert for now
2020-12-27 16:42:20 +09:00
Dean Herbert
fa0576f47f
Move quit colour change implementation to updateColour for better coverage
2020-12-27 13:40:02 +09:00
Bartłomiej Dach
15948de2f0
Fix gameplay leaderboard avatars being clickable
2020-12-26 14:35:14 +01:00
Dean Herbert
71dcbeaf7c
Mark user as quit visually on the leaderboard
2020-12-26 12:11:09 +09:00
Dean Herbert
116acc2b5e
Add flow for marking user as quit for further handling
2020-12-26 11:35:51 +09:00
Dean Herbert
ff57562956
Fix multiplayer leaderboard not unsubscribing from quit users
2020-12-26 11:35:31 +09:00
Bartłomiej Dach
83fb7c7a1a
Re-namespace all files in OnlinePlay directory
2020-12-25 16:50:09 +01:00
Dean Herbert
f991448a3e
Re-sort the leaderboard order a maximum of once a second
2020-12-24 21:49:38 +09:00
Bartłomiej Dach
d5fc517fab
Merge branch 'master' into disallow-skipping
2020-12-24 12:35:22 +01:00
Bartłomiej Dach
ee5a6ff9fa
Merge branch 'master' into improved-loading-experience
2020-12-24 11:59:46 +01:00
Bartłomiej Dach
4fb2610c82
Merge branch 'master' into frame-bundle-accuracy
2020-12-24 11:20:06 +01:00
Dean Herbert
6bd6888a93
Disallow skipping in multiplayer for now
2020-12-24 16:29:51 +09:00
Dean Herbert
e86e9bfae6
Don't begin gameplay until all users are in a completely prepared state
2020-12-24 15:32:55 +09:00
Dean Herbert
d66e218318
Source display accuracy from header and remove from ScoreProcessor function
2020-12-24 14:57:23 +09:00
Dean Herbert
76935b93b6
Merge branch 'master' into disallow-multiplayer-restart-retry
2020-12-24 13:31:54 +09:00
Bartłomiej Dach
980e85ce25
Refactor player exit logic to convey intention better
2020-12-23 16:16:24 +01:00
Bartłomiej Dach
c839892a4c
Merge branch 'master' into fix-multiplayer-server-disconnection-flow
2020-12-23 11:57:43 +01:00
Dean Herbert
f9fd909187
Fix missed inspections
2020-12-23 18:07:38 +09:00
Dean Herbert
3c8f871b28
Move player constructor configuration to dedicated class; add AllowRestart parameter
2020-12-23 17:47:46 +09:00
Dean Herbert
f5d27b40a8
Standardise flow for aborting realtime player exit to avoid double-exit call
2020-12-23 16:35:39 +09:00
Dean Herbert
6517acc510
Add leaderboard display to realtime player
2020-12-22 19:10:08 +09:00
Dean Herbert
8ac76bd524
Merge pull request #11199 from smoogipoo/refactor-player-score-creation
...
Asyncify player score creation and submission
2020-12-20 17:30:11 +09:00
Bartłomiej Dach
4e5064c4f6
Start accuracy at 1
2020-12-19 21:31:17 +01:00
Bartłomiej Dach
c738a57b39
Fix username overflow in new leaderboard design
2020-12-19 18:48:17 +01:00
Dean Herbert
b3bff281ce
Merge branch 'master' into spectator-driven-leaderboard
2020-12-20 01:13:59 +09:00
Bartłomiej Dach
06a17a9d8c
Rename other constant to be distinguishable
2020-12-19 15:18:05 +01:00
Bartłomiej Dach
315a957a0c
Extract constant for text transition duration
2020-12-19 15:17:31 +01:00
Bartłomiej Dach
e2cc401c12
Move BDL above LoadComplete()
2020-12-19 15:05:59 +01:00
Bartłomiej Dach
d392e0f27e
Extract shared rank-formatting helper
2020-12-19 15:04:22 +01:00
Bartłomiej Dach
22a2c3efdf
Add back xmldoc of AddPlayer
2020-12-19 15:04:18 +01:00
Bartłomiej Dach
28ca21b432
Seal banned method & throw better exception
2020-12-19 14:50:09 +01:00
Dean Herbert
beaced3211
Remove unnecessary async state machine
2020-12-19 13:58:56 +09:00
smoogipoo
772dd0287e
Split submission and import into two methods
2020-12-19 03:32:05 +09:00
Salman Ahmed
030dce5559
Increase leaderboard score width a bit
2020-12-18 13:09:50 +03:00
Salman Ahmed
c9e75e7908
Add user avatar to leaderboard scores
2020-12-18 13:09:05 +03:00
smoogipoo
eccfc8ccd2
Fix potential cross-reference access
2020-12-18 18:31:49 +09:00
smoogipoo
8826d01559
Create completion progress delegate immediately
2020-12-18 18:20:36 +09:00
smoogipoo
1369b75a86
Fix potential multiple submission
2020-12-18 17:48:42 +09:00
smoogipoo
2958cab239
Remove GotoRanking
2020-12-18 17:47:33 +09:00
Dean Herbert
75c5b99ac5
Merge branch 'gameplay-leaderboard-update' into spectator-driven-leaderboard
2020-12-18 17:33:25 +09:00
Dean Herbert
fdad5e86d3
Remove stray newline
2020-12-18 17:33:18 +09:00
Dean Herbert
470c68d6a5
Merge branch 'gameplay-leaderboard-update' into spectator-driven-leaderboard
2020-12-18 17:30:21 +09:00
Dean Herbert
615352c1e4
Fix shear offset not being included in GameplayLeaderboard's own size
2020-12-18 17:30:11 +09:00
Dean Herbert
668536ce56
Fix vertical size potentially changing during relayout
2020-12-18 17:25:48 +09:00
Dean Herbert
5cc2156801
Merge branch 'gameplay-leaderboard-update' into spectator-driven-leaderboard
2020-12-18 17:20:20 +09:00
Dean Herbert
e82986b763
Fix panel x positions getting weird duration relayouts
...
Also adjust the transitions a bit to feel better.
2020-12-18 17:19:55 +09:00
Dean Herbert
4cf013c005
Fix animation replacing itself even when score position hasn't changed
2020-12-18 17:19:55 +09:00
Dean Herbert
bca4d83af7
Revert previous player add flow via interface
2020-12-18 17:19:55 +09:00
Dean Herbert
cb3f89d0a5
Hook up with new leaderboard design
2020-12-18 17:13:51 +09:00
Dean Herbert
5e83605026
Merge branch 'gameplay-leaderboard-update' into spectator-driven-leaderboard
2020-12-18 17:07:43 +09:00
Dean Herbert
157a72ec5d
Revert previous player add flow via interface
2020-12-18 17:07:38 +09:00
Dean Herbert
96f23a1135
Merge branch 'master' into gameplay-leaderboard-update
2020-12-18 16:56:21 +09:00
Dean Herbert
70cda680c0
Update to match new implementation
2020-12-18 16:55:55 +09:00
Dean Herbert
869cac819d
Merge branch 'gameplay-leaderboard-update' into spectator-driven-leaderboard
2020-12-18 16:55:44 +09:00
smoogipoo
2db7433c0b
Refactor player score creation and submission process
2020-12-18 16:51:59 +09:00
Dean Herbert
99f2032fdf
Merge branch 'master' into gameplay-leaderboard-update
2020-12-18 16:44:52 +09:00
Dean Herbert
c84807ed5c
Refactor implementation
2020-12-18 16:20:54 +09:00
smoogipoo
c80ecec0b4
Reorder methods
2020-12-18 15:36:24 +09:00
Dean Herbert
4af508235e
Rename long variable
2020-12-18 15:35:18 +09:00
Dean Herbert
fa524d64f8
Merge branch 'master' into spectator-driven-leaderboard
2020-12-18 13:34:03 +09:00
Salman Ahmed
92bf74ba29
localUser -> localOrReplayPlayer
2020-12-18 03:37:24 +03:00
Salman Ahmed
a8abefcd66
Make GameplayLeaderboardScore a model class
2020-12-18 03:34:33 +03:00
Salman Ahmed
0faf3fdfd3
Update gameplay leaderboard scores with the new design
2020-12-17 15:19:10 +03:00
Dean Herbert
3ff70d331a
Mark recordingScore as nullable
2020-12-17 16:17:13 +09:00
Dean Herbert
81b0db0401
Remove double construction of empty replay object
2020-12-17 16:17:08 +09:00
Dean Herbert
de9c21e7d1
Tenatively mark leaderboard class as LongRunningLoad until final integration
2020-12-17 15:48:53 +09:00
Dean Herbert
a01bb3d5a3
Better limit bindable exposure of data class
2020-12-16 16:20:29 +09:00
Dean Herbert
6bce587b59
Pass users in via constructor and correctly unbind on disposal
2020-12-16 16:20:29 +09:00
Dean Herbert
6e2131c164
Don't track local user score in any special way
2020-12-16 16:20:29 +09:00
Dean Herbert
09d0ceb766
Add testing setup to get a better visual idea of how scoreboard will work
...
fixup! Add method to ScoreProcessor to calculate score and accuracy from statistics
2020-12-16 16:20:29 +09:00
Dean Herbert
d009a0be51
Move class to final location
2020-12-16 16:20:29 +09:00
Dean Herbert
88b3bf06e8
Merge branch 'master' into add-bundle-header
2020-12-16 13:40:15 +09:00
Dean Herbert
ea6c196f81
Remove unused using statement
2020-12-15 16:03:18 +09:00
Dean Herbert
e37089af5e
Further code cleanup
2020-12-15 15:44:56 +09:00
Dean Herbert
8b68ccc0ff
Rename class and move inside HUD namespace
2020-12-15 15:34:11 +09:00
Dean Herbert
dd5572b20a
Remove unnecessary methods and event
2020-12-15 15:26:20 +09:00
Dean Herbert
8362ad37e3
Bring up-to-date with code changes
2020-12-15 15:22:14 +09:00
Dean Herbert
70e5d4495a
Merge branch 'master' into ingame-leaderboard-general-implementation
2020-12-15 15:14:56 +09:00
Dean Herbert
ae22f75406
Bind replay recording score to judgement changes
2020-12-14 17:33:33 +09:00
Dean Herbert
1793385e96
Pass a score to the replay recorder to allow reading more general scoring data
2020-12-14 16:52:14 +09:00
Dean Herbert
0d7f53b0b9
Fix gameplay loading too fast the first time entering a beatmap
2020-12-14 14:21:21 +09:00
Bartłomiej Dach
d457926523
Merge branch 'master' into fix-player-load-stuck-at-empty-screen
2020-12-11 20:49:27 +01:00
Dean Herbert
2dd5911256
Rename method to better match purpose
2020-12-11 14:44:01 +09:00
Dean Herbert
01bd765384
Simplify pause handling by moving transform logic to bindable change event
2020-12-10 17:42:47 +09:00
Dean Herbert
679a550d83
Fix single threaded seeking not working due to unnecessary seek call
2020-12-10 17:42:28 +09:00
Dean Herbert
437c0506ce
Refactor to allow for special disposal handling to still work
2020-12-10 16:56:56 +09:00
Dean Herbert
67dd7be71a
Move cancelLoad call to OnResuming
...
This has no real effect; it just feels more readable to me.
2020-12-10 16:34:59 +09:00
Dean Herbert
491ab74059
Schedule pushWhenLoaded once ever
...
Previously it was being scheduled another time each OnResume, resulting
in more and more calls as a user retries the same beatmap multiple
times.
To simplify things I've decided to just schedule once ever. This means
that on resuming there's no 400ms delay any more, but in testing this
isn't really an issue (load time is still high enough that it will never
really be below that anyway). Even if gameplay was to load faster, the
animation should gracefully proceed.
2020-12-10 16:33:30 +09:00
Dean Herbert
cc996ec7fc
Ensure player is consumed at the point of scheduled push running the first time
2020-12-10 16:32:14 +09:00
Dean Herbert
a147b7186d
Remove unnecessary call to updateVisibility
2020-12-01 14:01:34 +09:00
Dean Herbert
63ff722963
Fix code formatting
2020-12-01 14:00:54 +09:00
Ryan Zmuda
e102f2e8fa
Moved enum to bottom, change defualt bind to Shift-Tab, Fixed Notification
2020-11-30 21:38:16 -05:00
Ryan Zmuda
9145557522
Revert "Revert "forgot to remove something... sorry""
...
This reverts commit 6478bed431
.
2020-11-29 23:15:12 -05:00
Ryan Zmuda
6478bed431
Revert "forgot to remove something... sorry"
...
This reverts commit a780a8bbd8
.
2020-11-29 23:14:43 -05:00
Ryan Zmuda
a780a8bbd8
forgot to remove something... sorry
2020-11-29 21:52:58 -05:00
Ryan Zmuda
3994cf082d
add keybind for in game overlay
2020-11-29 20:59:02 -05:00
Dean Herbert
3346c06aca
Rename variable/text to be more verbose as to toggle purpose
2020-11-26 20:04:44 +09:00
Dean Herbert
1d82557d9f
Avoid blocking global actions when skip overlay is not actually active
2020-11-24 15:42:14 +09:00
Dean Herbert
72b8eef36e
Add ability to pause/resume replay playback
2020-11-24 15:41:56 +09:00
Dean Herbert
2db42f8e67
Remove default allowRetry parameter value from ResultsScreen
2020-11-20 14:35:44 +09:00
Bartłomiej Dach
b344a13734
Add support for previewing tracks on spectator screen
2020-11-14 17:08:27 +01:00
Bartłomiej Dach
d55eae55ad
Merge branch 'master' into fix-combo-break-rewind-replay
2020-11-13 21:46:32 +01:00
Bartłomiej Dach
405407ff9e
Merge branch 'master' into fix-combo-break-sounds
2020-11-13 21:07:34 +01:00
Dean Herbert
4b5743d993
Fix combo break sound not playing after rewind
2020-11-13 13:38:14 +09:00
Dean Herbert
43626573df
Fix combo break sounds playing when seeking
2020-11-13 13:36:19 +09:00
smoogipoo
6f7a1dd57d
Merge branch 'master' into hitobject-pooling-base
2020-11-11 17:09:18 +09:00
Dean Herbert
11cf04eed1
Fix frames potentially getting added to spectator replay in wrong format
...
The way spectator currently works, the `Spectator` screen is responsible
for adding new frames to the replay, even when it has a child
(`SpectatorPlayer`) present.
There was a possibility that a new play had already started, and on
returning to the Spectator screen (to initialise the new play) there
would be a brief period where the Player instance is still reading from
the replay, the `userBeganPlaying` call had not yet finished
initialising the new target replay, and `userSentFrames` is run
(asynchronously), writing frames to the previous replay using the
incorrect ruleset instance).
To make this work, it doesn't `Schedule` frame addition to the replay
(making things a bit unsafe). Changing this itself isn't such a simple
one to do, so I instead opted to fix this via locking.
Closes https://github.com/ppy/osu/issues/10777 .
2020-11-11 13:39:43 +09:00
smoogipoo
66213f2ed0
Add pooling support to DrawableRuleset + Playfield
2020-11-10 23:56:32 +09:00
Dean Herbert
07166ec819
Fix a couple of remaining unnecessary casts
2020-11-06 13:29:47 +09:00
Dean Herbert
1b2bd6a8c9
Remove redundant base call
2020-11-03 20:10:13 +09:00
Dean Herbert
3e29e468ea
Ensure "start watching" button starts in a disabled state
2020-11-03 20:06:42 +09:00
Dean Herbert
414f65c1ef
Merge branch 'master' into spectator-listing
2020-11-02 15:48:21 +09:00
Dan Balasescu
04178e9458
Merge branch 'master' into spectator-replay-watcher
2020-11-02 14:54:51 +09:00
Dan Balasescu
1b53e6c782
Merge branch 'master' into sample-lookup-improvements
2020-11-02 13:04:35 +09:00
Bartłomiej Dach
716458344f
Ensure spectator player is unsubscribed to prevent leak
2020-11-01 16:13:19 +01:00
Bartłomiej Dach
b7696c85ad
Add more xmldocs
2020-11-01 15:23:03 +01:00
Dean Herbert
a088151e58
Merge branch 'spectator-replay-watcher' into spectator-listing
2020-10-31 16:22:10 +09:00
Dean Herbert
79aecc9a98
Merge branch 'master' into spectator-replay-watcher
2020-10-30 16:31:24 +09:00
Dan Balasescu
0ef1459f4b
Merge pull request #10621 from peppy/hud-momentary-visibility
...
Add momentary HUD toggle
2020-10-30 15:40:54 +09:00
Dean Herbert
8928aa6d92
Add key binding to show HUD while held
2020-10-30 14:19:40 +09:00
Dean Herbert
b4eda65383
Commit missing pieces
2020-10-30 13:53:51 +09:00
Dean Herbert
9bb86ccb83
Change shift-tab to cycle available HUD visibility modes
2020-10-30 13:09:22 +09:00
Dean Herbert
2ea4aa0a37
Fix incorrect specification on some sample lookups
2020-10-30 11:59:41 +09:00
Dean Herbert
bca317b151
Remove excess using statement
2020-10-28 23:43:16 +09:00
Dean Herbert
e1bf751dac
Merge branch 'spectator-replay-watcher' into spectator-listing
2020-10-28 23:17:50 +09:00
Dean Herbert
5d02de29ca
Fix attempt to change ruleset/beatmap bindables while screen is not active
2020-10-28 22:50:45 +09:00
Dean Herbert
25ab3a5fea
Construct replay after being sure a ruleset is available to avoid nullrefs
2020-10-28 22:10:37 +09:00
Dean Herbert
dd2f44f393
Add basic "currently watching" text to player to signify that spectator is active
2020-10-28 19:43:06 +09:00
Dean Herbert
93fd913876
Add setting to allow automatically downloading during a spectating session
2020-10-28 19:43:06 +09:00
Dean Herbert
9807089834
Fix screen exit potentially occuring during transition
2020-10-28 19:43:06 +09:00
Dean Herbert
4df8119852
Add missing schedule
2020-10-28 19:43:06 +09:00
Dean Herbert
93e3e1a4db
Don't inherit ReplayPlayer to make results screen work correctly
2020-10-28 19:02:38 +09:00
Dean Herbert
344ff8f4bc
"Improve" visuals of spectator screen
2020-10-28 19:02:38 +09:00
Dean Herbert
2d73dfbe39
Add more safety around beatmap panel and button display logic
2020-10-28 19:02:38 +09:00
Dean Herbert
c97feb09bf
Allow continuing to automatically spectate user from results screen
2020-10-28 19:02:38 +09:00
Dean Herbert
16b0a7b33e
Add button flow to allow resuming watching after exiting manually
2020-10-28 19:02:38 +09:00
Dean Herbert
6169349f7c
Fix switching to new beatmap not working correctly
2020-10-28 17:44:11 +09:00
Dean Herbert
730cc645fb
Avoid reconstructing ruleset for each frame bundle
2020-10-28 16:33:52 +09:00
Dean Herbert
48b0357e7d
Fix "finished playing" events handled for potentially incorrect user
2020-10-28 16:11:14 +09:00
Dean Herbert
0a7f3dc19b
Avoid null reference on finalization
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2020-10-28 07:29:07 +09:00
Dean Herbert
d5e0fa322b
Fix a couple of inspections
2020-10-27 22:30:45 +09:00
Dean Herbert
2cacdaa11b
Add basic beatmap download and play flow
2020-10-27 19:28:34 +09:00
Dean Herbert
42b3aa3359
Fix spectating when starting from a point that isn't at the beginning of the beatmap
2020-10-27 18:58:37 +09:00
Dean Herbert
851d45d2eb
Add sane pausing logic
2020-10-27 18:58:37 +09:00
Dean Herbert
3ec3321a3d
Add missing space
2020-10-27 18:58:37 +09:00
Dean Herbert
b737a8bf6e
Add field to Replay denoting whether the full replay have been received or not
2020-10-27 18:58:37 +09:00
Dean Herbert
9bac8f3792
Add null check on replay as safety measure
2020-10-27 18:58:37 +09:00
Dean Herbert
ac4671c594
Add basic implementation of spectator screen
2020-10-27 18:58:37 +09:00
Dean Herbert
5fd97bd043
Add basic spectator screen
2020-10-27 18:58:37 +09:00
Dean Herbert
9cfb81589e
Use bindable flow instead
2020-10-27 14:10:12 +09:00
Dean Herbert
6853da459d
Move sample pausing logic out of FrameStabilityContainer
2020-10-27 13:54:33 +09:00
Dean Herbert
b86347dc81
Merge branch 'master' into spectator
2020-10-26 13:39:07 +09:00
Bartłomiej Dach
0542a45c43
Change to manual adjustment add/remove
2020-10-25 12:33:35 +01:00
Bartłomiej Dach
85e14f3f0c
Shorten fade duration to make fade out snappier
2020-10-25 00:40:11 +02:00
Bartłomiej Dach
e101ba5cba
Move volume manipulations to player loader
2020-10-25 00:40:11 +02:00
Bartłomiej Dach
73174961f0
Rework animation sequence for readability
2020-10-24 22:30:08 +02:00
Dean Herbert
4fca7675b0
Don't send spectate data when an autoplay mod is active
2020-10-23 14:47:21 +09:00
Dan Balasescu
bd4e0e1a60
Merge branch 'master' into epilepsy-warning
2020-10-20 17:43:37 +09:00
Dean Herbert
55d08fad5c
Remove unused field
2020-10-20 15:18:15 +09:00
Dean Herbert
7a68636f71
Adjust fade sequence and durations to feel better
2020-10-20 15:03:33 +09:00
Dean Herbert
4e57751ca1
Fix background dim application to avoid overdraw, transition smoother
2020-10-20 15:03:12 +09:00
Dean Herbert
80b1f816c7
Merge branch 'master' into hide-hud-during-break-time
2020-10-20 14:19:04 +09:00
Dean Herbert
c57fecd1fc
Update comment to make it clear this is a hack
2020-10-20 12:43:57 +09:00
Bartłomiej Dach
fd4bab85cf
Merge branch 'master' into epilepsy-warning
2020-10-20 01:06:46 +02:00
Bartłomiej Dach
05251c646e
Fade volume back up on pop out
2020-10-20 01:06:20 +02:00
Bartłomiej Dach
1fc22bdbff
Only show warning once on given map
2020-10-20 00:59:36 +02:00
Bartłomiej Dach
a164d330e5
Improve feel of transition
2020-10-20 00:51:31 +02:00
Bartłomiej Dach
6e50ae0458
Reformulate push sequence code
2020-10-20 00:22:30 +02:00
Bartłomiej Dach
8505903041
Move warning construction to load()
2020-10-20 00:08:05 +02:00
Bartłomiej Dach
aeca61eb3e
Split warning to separate file
2020-10-19 23:48:02 +02:00
Bartłomiej Dach
44279ed347
Remove unused using directive
2020-10-19 23:46:09 +02:00
Salman Ahmed
6e4b28ed1e
Different version of epilepsy warning display
2020-10-20 00:32:44 +03:00
Joehu
fef6e55b39
Remove unused using and field
2020-10-19 12:32:16 -07:00
Joehu
dbda18acea
Fix autoplay/replay settings going off screen on some legacy skins
2020-10-19 12:04:23 -07:00
Dan Balasescu
b5cadd6a2c
Merge pull request #10555 from peppy/fix-score-display-zero-padding
...
Fix incorrect zero padding for classic scoring mode
2020-10-19 15:54:12 +09:00
Dean Herbert
ba99c5c134
Remove rolling delay on default combo counter
2020-10-19 14:39:02 +09:00
Dean Herbert
cb1784a846
Fix score displays using non-matching zero padding depending on user score display mode
2020-10-19 14:05:28 +09:00
Dan Balasescu
b7c12ff61e
Merge pull request #10530 from peppy/fix-catch-dual-combo-counter
...
Fix osu!catch showing two combo counters for legacy skins
2020-10-16 23:52:14 +09:00
smoogipoo
dfbc0965e4
Merge branch 'master' into peppy/skinnable-health-display
2020-10-16 23:17:17 +09:00
Dean Herbert
8a3bce3cc3
Fix osu!catch showing two combo counters for legacy skins
2020-10-16 18:20:17 +09:00
Dean Herbert
a774de2270
Also add support in LegacyComboCounter
2020-10-16 17:52:22 +09:00
Dean Herbert
77bf050a80
Ignore IgnoreHits for flashiness
2020-10-16 17:24:43 +09:00
Dean Herbert
f0b15813e2
Add support for both legacy styles
2020-10-16 17:08:46 +09:00
Dean Herbert
a810f56ec8
Move "flash on hit only" logic to binding
2020-10-16 17:08:46 +09:00
Dean Herbert
c0a1f2158c
Add basic component structure for skinnable health displays
2020-10-16 17:08:46 +09:00
Dan Balasescu
583fdc3a95
Merge pull request #10510 from peppy/skinnable-accuracy-display
...
Add legacy skinning support for accuracy display
2020-10-15 21:20:48 +09:00
Dan Balasescu
5d8cf87155
Merge pull request #10511 from peppy/bottom-error-display
...
Add support for bottom-anchored hit error display
2020-10-15 20:51:09 +09:00
Dan Balasescu
70b050f212
Merge branch 'master' into skinnable-accuracy-display
2020-10-15 20:28:57 +09:00
Dan Balasescu
1ce0e83e59
Merge branch 'master' into skinnable-score-display
2020-10-15 19:16:03 +09:00
Dan Balasescu
93dfbd5d9e
Merge pull request #10505 from peppy/skin-disabler-refactor
...
Move ISampleDisabler implementation to Player and FrameStabilityContainer
2020-10-15 19:14:52 +09:00
Dean Herbert
70806deba1
Add support for bottom-anchored hit error display
2020-10-15 19:14:02 +09:00
Dean Herbert
d76365ed1b
Make container readonly
2020-10-15 18:38:41 +09:00
Dan Balasescu
5640d33d1a
Merge branch 'master' into skin-disabler-refactor
2020-10-15 18:32:50 +09:00
Dean Herbert
6983978c98
Correct top-right element offset by finding the lower top anchor element
2020-10-15 18:30:44 +09:00
Dean Herbert
b31a3fbabb
Add test
2020-10-15 18:11:30 +09:00
Dean Herbert
254eba9008
Add and consume skinnable accuracy counter
2020-10-15 17:53:16 +09:00
Dean Herbert
90ff8ff050
Merge branch 'skinnable-combo-counter' into skinnable-score-display
2020-10-15 17:52:06 +09:00
Dean Herbert
37e9f331ad
Simplify score font lookup
2020-10-15 17:49:55 +09:00
Dean Herbert
43e5cb90e2
Merge branch 'skinnable-combo-counter' into skinnable-score-display
2020-10-15 17:30:29 +09:00
Dean Herbert
9f51327e4b
Fix completely incorrect default positioning logic
2020-10-15 17:29:40 +09:00
Dean Herbert
5b5ba7df93
Remove unused offset
2020-10-15 17:22:34 +09:00
Dean Herbert
d8d085ede9
Align top-right elements with lowest point in score display
2020-10-15 17:14:42 +09:00
Dean Herbert
74c031cfbb
Fix ModOverlay not including "UNRANKED" text in size
2020-10-15 17:14:42 +09:00
Dean Herbert
b210147c2e
Update combo counter to read from default score display's position correctly
2020-10-15 17:14:42 +09:00
Dean Herbert
950c47287c
Fix positioning of score display in HUD overlay
2020-10-15 17:14:42 +09:00
Dean Herbert
e1da64398e
Add and consume skinnable score counter
2020-10-15 17:14:42 +09:00
Dean Herbert
219cbec6bd
Split out DefaultScoreCounter and make ScoreCounter abstract
2020-10-15 16:32:30 +09:00
Dean Herbert
d5f2aab52e
Tidy up SkinnableComboCounter class slightly
2020-10-15 15:37:40 +09:00
Dean Herbert
e0210f5c4c
Ignore failed casts to make tests happy
2020-10-14 23:52:58 +09:00
Dean Herbert
e3eaba7b2c
Move ISampleDisabler implementation to Player and FrameStabilityContainer
2020-10-14 19:39:48 +09:00
Dean Herbert
ac4f56403d
Adjust size/position
2020-10-14 19:16:34 +09:00
Dean Herbert
7f5ea57bd4
Clean-up pass (best effort) on LegacyComboCounter
2020-10-14 19:16:34 +09:00
Dean Herbert
9bb8a43bce
Combine LegacyComboCounter and ComboCounter classes
2020-10-14 19:16:34 +09:00
Dean Herbert
fbbea48c8c
Add score text skinnability
2020-10-14 19:16:34 +09:00
Dean Herbert
2fce064e32
Add basic legacy combo counter and updating positioning logic
2020-10-14 19:16:34 +09:00
Dean Herbert
6a6718ebab
Allow bypassing origin/anchor setting of skinnable components
...
It makes little sense to set these when using RelativeSizeAxes.Both
2020-10-14 19:16:34 +09:00
Dean Herbert
899bac6ca5
Rename catch combo counter for clarity
2020-10-14 19:16:34 +09:00
Dean Herbert
f5623ee21e
Setup skinnable combo counter component with default implementation
2020-10-14 19:16:34 +09:00
Dean Herbert
60603d2918
Add skin components and interfaces
2020-10-14 19:16:34 +09:00
Dean Herbert
98acf1e31d
Make field read only
2020-10-14 19:16:25 +09:00
Dean Herbert
a7f8e26e35
Adjust bottom-right elements positions based on song progress display
2020-10-14 18:51:53 +09:00
Dean Herbert
0cf3e90904
Update SongProgress height based on its dynamic height during resize
2020-10-14 18:44:22 +09:00
Dean Herbert
ace9fbc8d3
Confine available area for HUD components to excluse the song progress area
2020-10-14 18:44:22 +09:00
Dean Herbert
de6fe34361
Bind to local bindable and combine dual bindings
2020-10-11 21:51:48 +09:00
Dean Herbert
5fcdee6fd8
Remove cast and expose as IBindable
2020-10-11 21:46:55 +09:00
unknown
6a52c98a42
make IsBreakTime its own bindable and bind it to BreakTracker on load
2020-10-11 06:15:20 +08:00
unknown
7bbdd6ab25
expose break time bindable
2020-10-10 21:07:17 +08:00
Dean Herbert
8dddd8aff5
Merge pull request #9883 from swoolcock/confine-during-gameplay
...
Add "During Gameplay" option for mouse confining
2020-10-08 20:25:27 +09:00
Dean Herbert
dbdb25ccf7
Move reset logic to OsuGame
2020-10-08 18:29:19 +09:00
Dean Herbert
43a575484a
Remove pointless comments
2020-10-08 18:29:09 +09:00
Dean Herbert
0f6eb9d4cb
Ensure music playback is stopped when retrying by any means
2020-10-07 17:40:54 +09:00
Shane Woolcock
2e0a9f53c1
Add test coverage
2020-10-07 17:52:39 +10:30
Shane Woolcock
8b8eb00bd7
Permit nulls rather than casting to OsuGame
2020-10-07 16:16:58 +10:30
Shane Woolcock
485bd962c7
Also reset LocalUserPlaying in OnSuspending
2020-10-07 16:15:17 +10:30
Shane Woolcock
7fff762dfc
Rename IsGameplay
2020-10-07 16:14:49 +10:30
Shane Woolcock
8847b88e65
Fix unit tests trying to resolve OsuGame
2020-10-07 11:44:41 +10:30
Shane Woolcock
ec12a21088
Merge branch 'master' into confine-during-gameplay
...
# Conflicts:
# osu.Game/Overlays/Settings/Sections/Input/MouseSettings.cs
2020-10-07 11:07:00 +10:30
Shane Woolcock
478f2dec96
Maintain the current gameplay state in OsuGame
2020-10-06 22:39:35 +10:30
Shane Woolcock
782fc1d60f
Use OsuGame.OverlayActivationMode rather than per-Player
2020-10-06 20:27:35 +10:30
Dean Herbert
d5782c95bd
Merge branch 'master' into confine-during-gameplay
2020-10-06 18:05:15 +09:00
Dean Herbert
9d7880afda
Make SettingsItem conform to IHasCurrentValue
2020-10-06 17:18:54 +09:00
Dean Herbert
e4710f82ec
Fix sample disabled status not being updated correctly from seek state
2020-10-05 14:27:51 +09:00
Shane Woolcock
a483dfd2d7
Allow confineMouseTracker to be null
2020-10-05 11:54:39 +10:30
Shane Woolcock
5859755886
Use current OverlayActivationMode to determine confine logic
2020-10-05 11:11:46 +10:30
Shane Woolcock
4b6f893408
Merge branch 'master' into confine-during-gameplay
...
# Conflicts:
# osu.Game/Configuration/OsuConfigManager.cs
# osu.Game/OsuGame.cs
# osu.Game/Screens/Play/Player.cs
2020-10-05 10:23:37 +10:30
Bartłomiej Dach
6f2b991b32
Ensure true gameplay rate is finite when paused externally
2020-10-04 14:54:51 +02:00
Bartłomiej Dach
1f0620ffd4
Replace assignment references to HitResult.Miss with Judgement.MinResult
2020-10-02 23:31:24 +02:00
Bartłomiej Dach
2b1ef16f89
Replace comparison references to HitResult.Miss with IsHit
2020-10-02 23:31:24 +02:00
Dean Herbert
367b35bb10
Merge branch 'master' into fix-storyboard-sample-pausing
2020-09-30 22:42:26 +09:00
Dean Herbert
b0f8e11bd4
Fix incorrect caching
2020-09-30 17:34:14 +09:00
Dean Herbert
7f579850dd
Merge branch 'master' into fix-editor-silence-on-seek
2020-09-30 17:03:23 +09:00
Dean Herbert
414c40d298
Reverse inheritance order of SkinnableSound's pause logic
2020-09-30 15:45:14 +09:00
Dean Herbert
136843c8e4
Make DrawableStoryboardSample a SkinnableSound
...
Allows sharing pause logic with gameplay samples.
2020-09-29 14:25:39 +09:00
Dean Herbert
74e74e1c31
Fix pause loop sound not working because paused
2020-09-29 14:20:41 +09:00
Dean Herbert
c5f6b77bba
Add missing cached type
2020-09-29 13:42:17 +09:00
Dean Herbert
d6f3beffb6
Use existing bindable flow instead
2020-09-29 12:50:17 +09:00
Dean Herbert
4f0c0ea5f9
Fix hit samples playing while paused / seeking in the editor
2020-09-28 18:17:47 +09:00
Dean Herbert
26ba7d3100
Remove unused method (was moved to a more local location)
2020-09-25 13:20:19 +09:00
Dean Herbert
7df8b5bce7
Merge branch 'master' into fix-spinner-rpm-user-rate-adjust
2020-09-25 13:17:03 +09:00
Joehu
c5b684bd2e
Fix typo in log when beatmap fails to load
2020-09-23 00:30:20 -07:00
Dean Herbert
3276b9ae9c
Fix fail animation breaking on post-fail judgements
2020-09-22 15:08:53 +09:00
Dean Herbert
508278505f
Make local clock private
2020-09-21 19:40:57 +09:00
Dean Herbert
3f788da06d
Fix SPM changing incorrectly with playback rate changes
2020-09-21 19:39:54 +09:00
smoogipoo
06c49070b1
Remove player collection settings
2020-09-11 16:04:09 +09:00
Dean Herbert
d3957e6155
Move title specification for settings groups to constructor
...
Using an abstract property was awkward for this as it is being consumed
in the underlying constructor but could not be dynamically set in time from a
derived class.
2020-09-09 18:50:31 +09:00
Lucas A
82e314da59
Fix merge conflicts.
2020-09-03 21:56:47 +02:00
Dan Balasescu
84b3604192
Merge branch 'master' into game-overlay-activation-mode
2020-09-03 13:34:22 +09:00
smoogipoo
7e1844ed77
Fix track adjusments being reset incorrectly
2020-09-01 18:07:19 +09:00
smoogipoo
26b4226b55
Fix ModTimeRamp not working
2020-09-01 16:55:10 +09:00
Dan Balasescu
f08e7828da
Merge branch 'master' into beatmap-track-rework
2020-09-01 16:06:38 +09:00
Lucas A
dd093f44d8
Cast base immutable bindable to mutable for testing purposes and make InitialOverlayActivationMode property protected
2020-08-31 11:26:55 +02:00
Dean Herbert
a171d0e292
Remove unused methods and classes
2020-08-31 18:14:22 +09:00
Dean Herbert
3b03116179
Remove unnecessary using statement
2020-08-21 16:45:59 +09:00
Dean Herbert
f7e4feee34
Update remaining Player components to use WorkingBeatmap again
2020-08-21 15:25:57 +09:00
Dean Herbert
357fb3a10e
Merge branch 'master' into beatmap-track-rework
2020-08-21 12:53:09 +09:00
Dean Herbert
5714c761eb
Merge pull request #9768 from frenzibyte/allow-counter-customize-sprite-text
...
Allow providing custom sprite text for RollingCounter<T>
2020-08-20 00:14:48 +09:00
Salman Ahmed
8f1a71c6b1
Remove counter sprite attributes for not being of any reasonable use
2020-08-19 07:44:45 +03:00
Dean Herbert
93a8bc3d5a
Remove local reset method in GameplayClockContainer
2020-08-17 22:36:09 +09:00
Dean Herbert
d9debef156
Add explicit LoadTrack method
2020-08-17 15:38:16 +09:00
Lucas A
589d4eeb52
Remove setting.
2020-08-16 17:18:40 +02:00
Shane Woolcock
85b3fff9c8
Update mouse confine when gameplay state changes
2020-08-16 23:11:09 +09:30
Dean Herbert
71f4e753f0
Merge branch 'master' into beatmap-track-rework
2020-08-16 22:35:32 +09:00
Bartłomiej Dach
a426ff1d5b
Refactor gameplay menu overlay to fix regression
2020-08-15 14:18:50 +02:00
Dean Herbert
e465afa280
Merge branch 'master' into beatmap-track-rework
2020-08-14 20:02:43 +09:00
Dan Balasescu
b7ae70ff96
Merge branch 'master' into fix-skinnable-sound-mute
2020-08-14 19:01:32 +09:00
Lucas A
84cb36b6a8
Defer subscriptions for updateOverlayActivationMode() to OnEntering()
2020-08-13 10:57:18 +02:00
Dean Herbert
99bea6b8e9
Add missing null check (player construction is potentially delayed now)
2020-08-13 12:52:35 +09:00
Dean Herbert
27cd9e119a
Delay beatmap load until after transition has finished
...
Previously the beatmap would begin loading at the same time the
`PlayerLoader` class was. This can cause a horribly visible series of
stutters, especially when a storyboard is involved.
Obviously we should be aiming to reduce the stutters via changes to the
beatmap load process (such as incremental storyboard loading,
`DrawableHitObject` pooling, etc.) but this improves user experience
tenfold in the mean time.
2020-08-13 12:04:32 +09:00
smoogipoo
c0031955c9
Update with further framework changes
2020-08-12 01:50:18 +09:00
smoogipoo
e47a1eb313
Use adjustable ITrack
2020-08-12 01:41:21 +09:00
smoogipoo
eec94e1f53
Make track not-null in GameplayClockContainer/FailAnimation
2020-08-12 00:51:43 +09:00
smoogipoo
c66a14e9c5
Remove beatmap from FailAnimation
2020-08-11 12:37:48 +09:00
Lucas A
f74e162bbc
Fix overlay activation mode being updated when player is not current screen.
2020-08-10 20:27:42 +02:00
Lucas A
052bb06c91
Add ability to open overlays during gameplay breaks.
2020-08-10 20:13:50 +02:00
Dean Herbert
365aae799e
Merge branch 'master' into fix-skinnable-sound-mute
2020-08-10 23:55:51 +09:00
Bartłomiej Dach
9a09f97478
Extract constant to avoid double initial value spec
2020-08-08 21:21:30 +02:00
Dean Herbert
e3105fd4c8
Add more resilient logic for whether to avoid playing SkinnableSound on no volume
2020-08-06 19:16:26 +09:00
smoogipoo
2e3ecf71c7
Pass track from Player to components
2020-08-06 18:31:08 +09:00
smoogipoo
5c05fe3988
Expose track from MusicController
2020-08-06 16:24:14 +09:00
smoogipoo
6e42b8219c
Move track to MusicController, compiles
2020-08-06 16:24:14 +09:00
smoogipoo
9a00ad48c6
Update components to use extension methods
2020-08-06 14:43:39 +09:00
Lucas A
71895964f4
Refactor overlay activation logic and reword tip.
2020-08-05 11:21:09 +02:00
Lucas A
30c7a6f6a7
Fix CI issue and use method instead of triggering change on bindable.
2020-08-03 21:33:18 +02:00
Lucas A
242a035f7e
Apply review suggestions.
2020-08-03 21:25:45 +02:00
Lucas A
25ebb8619d
Add tests.
2020-08-03 16:04:11 +02:00
Lucas A
fe97d472df
Enable back overlays when a replay is loaded.
2020-08-02 21:53:13 +02:00
Lucas A
f1ba576438
Disable overlay activation when in gameplay.
2020-08-02 21:34:35 +02:00
Joe Yuan
e795b1ea31
Failing effect displays vertically
2020-07-28 00:42:48 -07:00
Dean Herbert
ee05d5cb14
Remove no-longer-necessary play trigger on skin change
2020-07-23 09:06:15 +09:00
Dean Herbert
fea6389f69
Hide HUD elements during break time by default
2020-07-22 12:41:06 +09:00
Gagah Pangeran
95f52573f7
change font size
2020-07-21 15:58:25 +07:00
Gagah Pangeran
055e31ddd5
update minor
2020-07-20 18:37:02 +07:00
Gagah Pangeran
6a144fba80
add epilepsy warning in metadata display
2020-07-20 17:24:17 +07:00
Dean Herbert
a39c4236c7
Fix multiple issues and standardise transforms
2020-07-17 19:08:50 +09:00
Dean Herbert
aa992f2e34
Merge branch 'master' into Issue#9170
2020-07-17 18:29:40 +09:00
Joehu
ecbd8067e9
Add ability to seek replays/auto with arrow keys
2020-07-14 20:18:47 -07:00
Dan Balasescu
c49ce65326
Merge pull request #9540 from peppy/gameplay-pause-via-middle-mouse
...
Allow pausing gameplay via middle mouse button
2020-07-14 21:13:31 +09:00
Dean Herbert
2626ab41c3
Add implicit braces for clarity
2020-07-14 20:15:31 +09:00
Dean Herbert
c7d3b025ad
Rename variable and change default to true
2020-07-14 20:11:54 +09:00
Dean Herbert
690f2fd482
Merge branch 'master' into always-combo-break
2020-07-14 20:11:02 +09:00
Dean Herbert
f442df75a9
Add missing released conditional
2020-07-13 09:00:10 +09:00
Dean Herbert
c1aafe83fa
Add note about future behaviour
2020-07-12 23:05:47 +09:00
Dean Herbert
08696b9bca
Allow pausing gameplay via middle mouse button
2020-07-12 23:03:03 +09:00
BananeVolante
f03303573e
formating
2020-07-08 13:54:22 +02:00
BananeVolante
e8f23e35a5
WIP : replaced TransformBindableTo by VolumeTo
...
Currently, the VolumeTO calls taht use a fading does not do anything.
calling VolumeTo calls pauseLoop.samplesContainer.TransformBindableTo(....), while i used to call pauseLoop.TransformBindableTo(....)
2020-07-03 14:33:42 +02:00
BananeVolante
ab1eb469af
removed unneeded null checks
2020-07-01 13:30:23 +02:00
BananeVolante
ab134c0ed7
removed unneeded information in a comment
2020-07-01 13:27:33 +02:00
BananeVolante
946fcf75ac
Merge branch 'master' of https://github.com/ppy/osu into Issue#9170
...
update local code
2020-07-01 13:06:44 +02:00
Dan Balasescu
0e80d6629b
Merge branch 'master' into red-tint
2020-06-30 15:44:22 +09:00
Bartłomiej Dach
678767918e
Centralise logic further
2020-06-28 23:32:04 +02:00
Bartłomiej Dach
3637bf2f9b
Clean up member order & access modifiers
2020-06-26 19:39:55 +02:00
Bartłomiej Dach
02f590309d
Add xmldoc for public property
2020-06-26 19:39:55 +02:00
Bartłomiej Dach
a63b6a3ddf
Simplify binding
2020-06-26 19:39:55 +02:00
Bartłomiej Dach
415e1c05ff
Simplify implementation
2020-06-26 19:39:55 +02:00
Bartłomiej Dach
3783fe8d6a
Rename fields for clarity
2020-06-26 19:39:53 +02:00
Power Maker
798e8e7a8d
Fix CI fail
2020-06-26 15:12:01 +02:00
Power Maker
efeaa1cc10
Make some changes, fix and add tests
2020-06-26 14:58:42 +02:00
Power Maker
97a212a7f6
Hide red tint based on "Show health display even when you can't fail" setting
2020-06-26 14:32:01 +02:00
BananeVolante
a4bb238c45
fixed bug preventing the pause loop from playing during the first pause after changing a skin
2020-06-26 14:07:27 +02:00
BananeVolante
7d2d6a52c9
now uses SkinnableSample instead of Drawable sample
...
Still does not support switching skins after Pause overlay loading,
there will be no sound for the first pause (works fine the the nexts)
Also, the pause loop seems to play for approximately 1 second when exiting the
screens via restart or quit
finally, since SkinnableSound does not play a sound if its aggregate
volume is at 0, i had turn up the volume a bit before playing the loop
2020-06-25 18:58:04 +02:00
BananeVolante
9e5cc1b7a2
added skin support for the pause loop
2020-06-25 13:26:42 +02:00
BananeVolante
2e8f30461f
play/stops music when entering the pause overlay, instead of letting it play silently in the background
2020-06-24 14:22:12 +02:00
BananeVolante
53107973a3
merged 2 lines
...
Co-authored-by: Salman Ahmed <email@iisalman.me>
2020-06-24 14:01:13 +02:00
Dean Herbert
9119f41604
Merge branch 'master' into results-screen-statistics-overlapping-transition
2020-06-24 18:22:51 +09:00
Bartłomiej Dach
43be75d481
Merge branch 'master' into Issue#9170
2020-06-23 20:49:13 +02:00
BananeVolante
624ad65806
formating
2020-06-23 13:09:24 +02:00
Dean Herbert
a6c6e391ca
Fix player not exiting immediately on Alt-F4
2020-06-23 17:38:30 +09:00
BananeVolante
579d7cedcc
Merge branch 'master' of https://github.com/ppy/osu into Issue#9170
...
updated local source
2020-06-22 15:29:05 +02:00
BananeVolante
836386d03b
removed duplicate lines
2020-06-22 15:22:13 +02:00
BananeVolante
9dea96e5fd
added pause sound with fading
2020-06-22 14:02:21 +02:00
BananeVolante
a4eb6c81c5
undid changes to the file
2020-06-22 13:40:31 +02:00
smoogipoo
261adfc4e6
Create a local playable beatmap instead
2020-06-22 18:38:41 +09:00
smoogipoo
33fdd7466c
Merge branch 'master' into results-screen-statistics-overlapping-transition
2020-06-22 15:38:48 +09:00
smoogipoo
49bdd89775
Cleanup ReplayPlayer adjustments
2020-06-19 21:54:09 +09:00
Dean Herbert
290ae37346
Add assertion of only usage game-wide
2020-06-18 23:54:20 +09:00
Dean Herbert
7da56ec7fd
Add null check and xmldoc
2020-06-18 23:52:35 +09:00
Dean Herbert
add1265d53
Block screen suspend while gameplay is active
2020-06-18 23:48:00 +09:00
smoogipoo
9442fc00ac
Temporary hack to make replay player populate scores
2020-06-16 17:48:59 +09:00
Dean Herbert
17a70bf6ee
Add test coverage
2020-06-15 20:32:27 +09:00
BananeVolante
4e7d60b6ff
Merge branch 'master' of https://github.com/ppy/osu into Issue#9170
...
updated local source
2020-06-15 12:58:47 +02:00
Dean Herbert
0d53d0ffc8
Fix back-to-front math
2020-06-15 00:46:20 +09:00
Dean Herbert
7b95c55afb
Fix HardwareCorrectionOffsetClock breaking ElapsedTime readings
2020-06-14 11:33:59 +09:00
BananeVolante
04c1efe298
resolved issues with inspect code script
2020-06-13 14:33:55 +02:00
BananeVolante
794b8673e2
formated using dotnet format
2020-06-13 10:56:02 +02:00
BananeVolante
8b8f2dfda2
Removed duplicate samplepause.stop() calls, removed test lines
...
Since restart() always call perform immediate exit when the function lead
to a restart, there is no need to stop the pause sample in restart
2020-06-13 10:31:54 +02:00
BananeVolante
6fd8548f79
no longer crash if the restart sample isn't found
2020-06-13 10:13:41 +02:00
BananeVolante
2feaf2c74a
added music during pause
2020-06-12 19:17:52 +02:00
Dean Herbert
64550fe87c
Merge branch 'master' into fix-draining-in-between-break-sections
2020-06-02 16:06:08 +09:00
smoogipoo
de0b6ec9f1
Create abstract implementation
2020-05-26 17:00:41 +09:00
Dean Herbert
ce223a2bd8
Silence hit sounds while seeking
2020-05-21 11:08:06 +09:00
smoogipoo
e5de382760
Merge branch 'master' into storyboard-overlay-layer
2020-05-20 15:08:45 +09:00
smoogipoo
85088c9b3b
Privatise setter
2020-05-20 15:08:33 +09:00
Bartłomiej Dach
ce4301c5b8
Add overlay layer to player by proxying
2020-05-19 19:47:50 +02:00
smoogipoo
6d70f4b410
Merge branch 'master' into allowgameplayoverlays-hide-skip
2020-05-18 19:54:38 +09:00
smoogipoo
49ee05c3c4
Make into CompositeDrawable
2020-05-18 19:37:49 +09:00
Lucas A
4096463d02
Move SkipOverlay internal alpha manipulation to a nested container and adjust visual tests.
2020-05-15 19:43:01 +02:00
Dean Herbert
9b6525bb03
Fix applied platform/user offsets being incorrect when rate adjust mods are active
2020-05-15 18:44:47 +09:00
Lucas A
7874045b1f
Allow disabling SkipOverlay through AllowGameplayOverlays.
2020-05-12 23:05:56 +02:00
Dean Herbert
de50b725d5
Fix mod failure checks executing actual game logic
2020-05-12 20:08:35 +09:00
Dan Balasescu
6841bd5609
Merge branch 'master' into taiko-scroller
2020-05-11 11:10:55 +09:00
Bartłomiej Dach
ee2ff77b89
Merge branch 'master' into fix-draining-in-between-break-sections
2020-05-10 17:57:44 +02:00
Dean Herbert
c712e98f2b
Merge branch 'master' into publicly-expose-hud
2020-05-10 20:06:28 +09:00
Dean Herbert
9b8589583c
Merge branch 'master' into taiko-scroller
2020-05-08 19:10:39 +09:00
Lucas A
30dd158c33
Rename property to AllowGameplayOverlays and update XMLDoc accordingly.
2020-05-08 09:37:50 +02:00
Lucas A
83be5455d3
Disable the display of HUD through DisplayHud property.
2020-05-07 08:52:36 +02:00
Lucas A
aff74db80d
Publicly expose HUDOverlay in Player.
2020-05-05 10:40:10 +02:00
alex
0e2ccac33b
Add spaces to comments
2020-05-04 18:36:24 -07:00
Dean Herbert
cea6be5e52
Expose as JudgementResult instead of "passing" state
2020-05-03 23:55:44 +09:00
Bartłomiej Dach
8118747732
Make PeriodTracker actually immutable
2020-05-02 01:33:33 +02:00
Dean Herbert
ff1d63060d
Add and consume passing state in GameplayBeatmap
2020-05-01 20:08:18 +09:00
Salman Ahmed
6fa9feb15c
Merge remote-tracking branch 'upstream/master' into add-interval-list
2020-04-29 05:14:40 +03:00
Salman Ahmed
6e76e5900a
Rename is-in-any check method to a more legible name
2020-04-29 05:11:44 +03:00
Salman Ahmed
8d899f4e77
Apply changes to the BreakTracker and more adjustment
2020-04-29 05:11:43 +03:00
Dean Herbert
a91c63819b
Refactor updateCompletionState implementation for legibility and code share
2020-04-21 11:55:28 +09:00
Salman Ahmed
e12e3391fb
Base wait steps duration on the delay used for results display
...
With `* 2` for safety of not potentially going to the next step and the delegate not executed yet.
2020-04-20 06:42:33 +03:00
Endrik Tombak
f893d523f5
User setting for always playing first combo break
2020-04-19 12:23:41 +03:00
Salman Ahmed
6d276890a7
Fix results screen pushed after rewinding in-between push delay
2020-04-19 05:59:56 +03:00
Salman Ahmed
7e64bec94f
Use HasCompleted in Player
2020-04-19 05:58:22 +03:00
Salman Ahmed
fc6c245de5
Replace all judged event logic with HasCompleted bindable
2020-04-19 05:36:04 +03:00
smoogipoo
f3dbddd75c
Update bindings in LoadComplete()
2020-04-14 15:52:38 +09:00
smoogipoo
b8b334ca27
Always unbind bindings
2020-04-14 15:21:56 +09:00
smoogipoo
3183827329
Reorder fields
2020-04-14 15:09:31 +09:00
smoogipoo
7d2d0785fd
Fix potential unsafe ordering of binds
2020-04-14 15:07:32 +09:00
smoogipoo
9619fb9f6a
Remove bind in Player
2020-04-14 15:00:36 +09:00
Salman Ahmed
9a29797a5b
Use IntervalList<double> for tracking break periods
2020-04-09 23:00:16 +03:00
Dean Herbert
c5005eb378
Adjust gradient size slightly and make const
2020-04-09 14:55:02 +09:00
Dean Herbert
5a78e74470
Use Lerp instead of ValueAt
2020-04-09 14:51:50 +09:00
Dean Herbert
c44957db3f
Change initial health to 1 to avoid false fail display
2020-04-09 14:49:09 +09:00
Dean Herbert
947745d87e
Change fail effect to be less distracting
2020-04-09 14:34:23 +09:00
Dean Herbert
4976f80b71
Move implementation to HUD
2020-04-09 14:31:25 +09:00
Dean Herbert
0e2d5213ce
Merge branch 'master' into low-hp-red-layer
2020-04-09 13:53:57 +09:00
Joehu
0f11ecce01
Make icons container private
2020-04-05 14:53:49 -07:00
Salman Ahmed
7fab07670e
Remove no longer necessary usage of IsBreakTime
2020-04-05 21:35:09 +03:00
Joehu
493b654011
Remove horizontal margin from mod display
...
Can skew center alignment on fill flow containers.
Fixes affected areas. Vector2(5, 0) is similar to MarginPadding { Left = 10 }.
2020-04-03 11:30:02 -07:00
smoogipoo
1f797207f7
Rework lookups to not require total playfield columns
2020-04-03 12:31:05 +09:00
Lucas A
1562612f41
Update visual tests and remove unessecary XMLDoc tag
2020-04-01 15:12:31 +02:00
Lucas A
ab01111c36
Fix merge conflicts.
2020-03-30 17:39:11 +02:00
Lucas A
3cae0cedee
Add a game setting to disable the layer
2020-03-30 12:59:39 +02:00