1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-14 23:37:26 +08:00
Commit Graph

8862 Commits

Author SHA1 Message Date
Christine Chen
8c564a69ed Fix InvalidOperationException when exiting a map at the end 2021-05-07 21:11:03 -04:00
Dean Herbert
495eb04e2f
Merge pull request #12488 from Denrage/add-missing-author-links
Add missing author links in Beatmap Details
2021-05-08 05:41:40 +09: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
Salman Ahmed
fc2a527e9d Revert "Guard against potentially null track if ever"
This reverts commit b1134c3857.
2021-05-07 09:57:08 +03:00
Salman Ahmed
7c4e54a1d4 Unrevert null-colaescing/conditionals removal 2021-05-07 09:54:14 +03:00
Dean Herbert
165f443ab5 Merge branch 'master' into add-missing-author-links 2021-05-07 14:32:44 +09:00
Salman Ahmed
b1134c3857 Guard against potentially null track if ever 2021-05-07 08:30:50 +03:00
Salman Ahmed
37f44d2e37 Revert wrong not-null track changes
This reverts commit f9d99a9882.
This reverts commit 71547bece0.
2021-05-07 08:28:44 +03:00
Salman Ahmed
71547bece0 Remove any null-coalescing/conditionals in WorkingBeatmap.Track usages 2021-05-07 07:46:23 +03:00
Salman Ahmed
539643c72b Set loadable beatmap track to clock immediately in BDL
This reverts commit 84da247002.

Use loadable beatmap track for clock directly in BDL
2021-05-07 07:21:56 +03:00
Salman Ahmed
84da247002 Fix editor clock using the wrong beatmap track on creation 2021-05-07 05:32:55 +03: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
Salman Ahmed
2a67361dc0 OnOperation -> TriggerOperation 2021-05-05 21:50:16 +03:00
Bartłomiej Dach
3cac837acf
Merge branch 'master' into skin-bindables 2021-05-05 20:16:27 +02:00
Dean Herbert
cb8bda2248
Merge pull request #12503 from Denrage/split-BufferedWedgeInfo 2021-05-06 03:16:16 +09:00
Dean Herbert
cffeb8641f Make setters private for protected containers 2021-05-06 02:14:57 +09:00
Dean Herbert
fe9ade6754 Rename Container to DisplayedContent 2021-05-06 02:14:04 +09:00
Denrage
b6b9a69601 Removed unnecessary class for wrapping 2021-05-05 18:50:49 +02:00
Denrage
bb385f4255 Reverted difficulty and mod updates 2021-05-05 18:15:59 +02:00
Denrage
2797507758 Reorganized elements for readability 2021-05-05 17:56:07 +02:00
Denrage
88506a51dd reduced complexity 2021-05-05 17:51:29 +02:00
Denrage
5049e2fbf9 Refactored out changes in DifficultyColourBar 2021-05-05 15:28:33 +02:00
Dean Herbert
4ef901d08d Remove unnecessary redirection property to Container.Info 2021-05-05 21:07:49 +09:00
Denrage
cf6ed7a7cf Refactored out changes in StarRatingDisplay 2021-05-05 13:13:37 +02:00
Dean Herbert
377af38d94 Remove unnecessary pixelSnapping parameter
This was only required because there was text being rendered to the
`BufferedContainer` content until now. Removing this should allow for
better resolution in the background display (due to using a better
minify scale mode).
2021-05-05 17:59:51 +09:00
Dean Herbert
805ef621e9
Merge branch 'master' into play-storyboard-outro 2021-05-05 17:51:16 +09: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
Salman Ahmed
1ac80d42f9
Merge branch 'master' into corner-rotation-controls 2021-05-04 23:53:23 +03:00
Bartłomiej Dach
4185053120
Merge branch 'master' into fix-selection-handler-visibility 2021-05-04 20:21:05 +02: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
Salman Ahmed
8abff4881b Hide the corresponding rotation handle when holding scale handle 2021-05-04 07:31:55 +03:00
Dean Herbert
4f12ae2711 Merge branch 'master' into split-BufferedWedgeInfo 2021-05-04 13:28:42 +09:00
Salman Ahmed
b2a0c2b563 Consider drag handles active using mouse down instead of when dragged 2021-05-04 06:41:26 +03:00
Salman Ahmed
5f33c3514e Move selection box control internal events to drag handles 2021-05-04 06:37:22 +03:00
Salman Ahmed
fd7a6b3a7c Finish transforms on controls load complete 2021-05-04 06:37:20 +03:00
Dean Herbert
ca4b860920 Move BindValueChanged call to LoadComplete 2021-05-03 20:11:24 +09:00
Dean Herbert
b28e1569ca Remove no-longer-relevant matching comment 2021-05-03 20:09:50 +09:00
Salman Ahmed
840c22a3b1 Add back mis-removed fade transform 2021-05-03 12:16:40 +03:00
Dean Herbert
4f8240f19a
Merge branch 'master' into corner-rotation-controls 2021-05-03 18:02:23 +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
fdd0713988 Merge branch 'fix-selection-handler-visibility' into skin-bindables 2021-05-03 17:40:03 +09:00
Dean Herbert
3268a75f05 Remove intermediate container to fix tests 2021-05-03 17:35:56 +09:00
Dean Herbert
839ac968a9 Fix tooltips displaying for hidden SelectionHandler content 2021-05-03 17:28:24 +09:00
Dean Herbert
4cfa858dc4 Fix tooltips displaying for hidden SelectionHandler content 2021-05-03 15:37:15 +09:00
Dean Herbert
01984de9c7 Use existing GetStateFromSelection helper function 2021-05-03 15:13:32 +09:00
Dean Herbert
54abf8f6f6 Vertically centre leaderboard for now 2021-05-03 14:48:04 +09:00
Dean Herbert
b1a19b6dd6 Add xmldoc for PlayerIsolationContainer 2021-05-03 14:41:55 +09:00
Dean Herbert
2aa21e2aff Adjust documentation in CatchUpSyncManager 2021-05-03 14:37:11 +09:00
Dean Herbert
8c9cfb6301 Remove unsafe access to Composer.HitObjects 2021-05-03 14:28:35 +09:00
Dean Herbert
c065092e72 Fix weird access to userIds in MultiplayerSpectatorScreen 2021-05-03 14:25:52 +09:00
Dean Herbert
dc5ee31d94 Use switch for screen construction 2021-05-03 14:04:20 +09:00
Dean Herbert
66ae6e58d1 Reword comment regarding LoadRequested special case to be easier to understand context 2021-05-03 14:01:10 +09:00
Dean Herbert
6da4105da6 Remove Sync namespace (feels unnecessary) 2021-05-03 13:38:53 +09:00
Dean Herbert
e0c129ca85 Merge branch 'master' into multiplayer-spectator-screen 2021-05-03 13:08:14 +09:00
Salman Ahmed
b83aa0bd76 Avoid LINQ in update 2021-05-02 06:21:14 +03:00
Salman Ahmed
0aa17e7c95 Rewrite selection box computation logic with RectangleF's helper methods 2021-05-02 02:51:06 +03:00
Salman Ahmed
07fe99025f Use bounding box of blueprint for computing selection box area 2021-05-02 02:36:40 +03:00
Bartłomiej Dach
eef135f8dc
Merge branch 'master' into remove-unused-triangles 2021-04-30 21:51:23 +02:00
Salman Ahmed
b145f46a0a
Merge branch 'master' into skin-components-list 2021-04-30 21:10:55 +03:00
Dan Balasescu
e6eea73b8b
Merge branch 'master' into basic-compose-checks 2021-04-30 23:41:46 +09:00
Dean Herbert
e4f895b490 Fix editor buttons inheriting from TriangleButton when they have no need to 2021-04-30 14:48:37 +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
9c62c90cfc Refactor SelectionBlueprint and MoveSelectionEvent to work in screen-space coordinates
Until now, the implementation of the overrides in `SelectionBlueprint`
have been confusing to the point where I would just implement by
trial-and-error (or copying from an existing implementation). This was
due to a combination of using "object" space coordinates
(ie. the thing the `Blueprint` is operating on) and screen-space coordinates.

This change switches all event related coordinates to screen-space,
which is how we already handle rotation/scale operations. With the
introduction of other editor types where the related objects are
drawables, this also makes a lot more sense.
2021-04-29 16:10:42 +09:00
Dean Herbert
f3c7694eeb Rename methods to match generally how these find-methods are named elsewhere 2021-04-28 16:57:52 +09:00
Dean Herbert
48d6c9ac4b Move snap/divisor helper methods to inside ControlPointInfo 2021-04-28 16:47:30 +09:00
Dean Herbert
e0906daebf Change one remaining instance of incorrect terminology in xmldoc 2021-04-28 13:49:41 +09:00
Dean Herbert
4c9e94da2b Move context menu logic to base class 2021-04-28 13:43:16 +09:00
Dean Herbert
532ec40395 Remove unnecessary newline 2021-04-28 12:04:48 +09:00
Dean Herbert
43772f4303 Remove duplicated call to initially select blueprint 2021-04-28 12:03:41 +09:00
Dean Herbert
e4f2e0131c Rename AllowDeselection to better match use case 2021-04-28 12:02:55 +09:00
Dean Herbert
a9a5809e94 Fix incorrect xmldoc in MoveSelectionEvent 2021-04-28 11:46:52 +09:00
Dean Herbert
d0be8f9fb3 Remove one more out-of-date comment 2021-04-28 11:45:36 +09:00
Dean Herbert
bc455005a5 Fix incorrect coordinate space mention in xmldoc 2021-04-28 11:44:50 +09:00
Dean Herbert
61d4eb1777 Remove unnecessary and out-of-place xmldoc 2021-04-28 11:44:19 +09:00
Dean Herbert
aa1cb65eaa Rename region to be more inclusive 2021-04-28 11:42:22 +09:00
Dean Herbert
42255f8d33 Rename and xmldoc selection completed method 2021-04-27 19:01:29 +09:00
Dean Herbert
7ec5ea1eb5 Remove hitobject terminology from base classes 2021-04-27 19:01:29 +09:00
Dean Herbert
ff06a27a12 Revert changes to OnBlueprint methods and handle select-on-addition locally 2021-04-27 19:01:29 +09:00
Dean Herbert
f97b14a20a Fix binding direction of selected items 2021-04-27 19:01:29 +09:00
Dean Herbert
dd3d8e5d03 Make SelectionHandler abstract to ensure things get implemented 2021-04-27 19:01:29 +09:00
Dean Herbert
32416e4e31 Move model selection handling to base SelectionHandler class 2021-04-27 19:01:29 +09:00
Dean Herbert
eac139ca0e Allow BlueprintContainer to perform movement without an ISnapProvider 2021-04-27 19:01:29 +09:00
Dean Herbert
f2e56bd306 Refactor editor selection/blueprint components to be generic 2021-04-27 19:01:29 +09:00
Naxess
7b9ed924be Rename snapping methods
Further separates them from `IBeatSnapProvider`'s `SnapTime`, and groups them together more, to prevent confusion between the two interfaces.

Also changes the xmldoc of the reference time to that of `IBeatSnapProvider` for consistency.
2021-04-26 16:07:30 +02:00
smoogipoo
630a6dc46a Fix missing dependency 2021-04-26 22:23:44 +09:00
smoogipoo
ed93e26e52 Use single method for starting/restarting spectator screen 2021-04-26 21:56:15 +09:00
smoogipoo
7e11d520d5 Remove finished players from multi spectator screen 2021-04-26 21:25:46 +09:00
smoogipoo
94d0b06493 Expose mute adjustment instead 2021-04-26 19:01:30 +09:00
smoogipoo
d7618b63fa Fix test failure 2021-04-26 17:35:13 +09:00
smoogipoo
6626e70c95 Pass in master clock instead of slave clock 2021-04-26 17:30:27 +09:00
smoogipoo
5b4cb71cc7 Change terminology from "slave" to "player clock" 2021-04-26 17:19:44 +09:00
Dean Herbert
aa99c192d0 Fix type in inline comment 2021-04-26 16:21:12 +09:00
Dean Herbert
3b876a43c2
Merge branch 'master' into multiplayer-spectator-screen 2021-04-26 14:12:35 +09:00
Naxess
049e42fa85 Move snapping responsibility to IBeatmap
Seems `EditorBeatmap` already implements a different kind of `SnapTime` from `IBeatSnapProvider`, so method names here aren't great.

This is very similar to what https://github.com/ppy/osu/pull/12558 is doing, so may need to do some duplicate resolution later, especially surrounding `ClosestBeatSnapDivisor`.

Worth noting that this change makes 1/7, 1/5, etc unsupported for now, as we now rely on `BindableBeatDivisor.VALID_DIVISORS`.
2021-04-26 05:07:24 +02:00
Salman Ahmed
485da47d89 Revert "Inherit VisibilityContainer and make duration constant protected"
This reverts commit c58ef4230d. Uhh, how did I push this..
2021-04-26 01:41:42 +03:00
Salman Ahmed
b252485e1a Remove protected expose of HandlingMouse setter
Regardless of `OnDragEnd()`, `OnMouseUp()` will still be called resetting the value of that state back.
2021-04-25 20:13:23 +03:00
Salman Ahmed
7390a12e4b SelectionBoxDragHandleDisplay -> SelectionBoxDragHandleContainer 2021-04-25 20:03:15 +03:00
Salman Ahmed
c58ef4230d Inherit VisibilityContainer and make duration constant protected 2021-04-25 20:03:15 +03:00
Salman Ahmed
79e2b232d8
Improve English
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-04-25 19:26:53 +03:00
Salman Ahmed
a8c460f7df Replace separated top-centered rotation button with rotation drag handles 2021-04-25 10:17:36 +03:00
Salman Ahmed
77f7d4c963 Add composite managing display of selection box drag handles 2021-04-25 10:17:36 +03:00
Salman Ahmed
ab71782674 Use colour fade transform for selection box controls
To become harminous with the fade transforms of the rotation control
2021-04-25 10:14:31 +03:00
Salman Ahmed
62bcc5f76d Add property for tracking whether control is during operation 2021-04-25 10:14:31 +03: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
Denrage
59ae5ab913 Added transition in StarRatingDisplay 2021-04-24 13:25:29 +02:00
Salman Ahmed
206fc94b8c Add rotation drag handle component 2021-04-24 08:00:36 +03:00
Salman Ahmed
4bfa9cd6b6 Change inheritance of selection box buttons to base control instead 2021-04-24 08:00:29 +03:00
Salman Ahmed
decd8803bc Abstract base appearence and hover update from drag handles 2021-04-24 07:45:53 +03:00
Bartłomiej Dach
fdb5490e51 Attempt to explain source initialisation better 2021-04-23 21:56:08 +02:00
smoogipoo
63a9484255 Expose WaitingOnFrames as mutable bindable 2021-04-23 19:11:47 +09:00
smoogipoo
575ec7c528 Document + refactor max player limitation 2021-04-23 19:11:35 +09:00
smoogipoo
ae2fd2f2e1 Ensure source is set on reset 2021-04-23 18:46:59 +09:00
Denrage
713344ebad Reorganize methods 2021-04-23 10:31:49 +02:00
smoogipoo
90ecda91af Fix exception 2021-04-23 00:06:54 +09:00
smoogipoo
4f0857f946 Xmldocs and general refactorings 2021-04-22 23:52:22 +09:00
smoogipoo
ee25949751 Rename classes 2021-04-22 23:39:02 +09:00
smoogipoo
8a0ba3a055 Merge GameplayIsolationContainer into PlayerInstance, remove track 2021-04-22 23:38:51 +09:00
smoogipoo
4aceb75eb2 Disable spectate button on closed rooms
Doesn't have an effect normally - only for safety purposes in case we
allow entering the match subscreen after a match has finished in the
future.
2021-04-22 23:37:45 +09:00
smoogipoo
fd0b030cf4 Refactor gameplay screen creation 2021-04-22 23:37:33 +09:00
smoogipoo
f8f9cf9412 Merge branch 'fix-initial-playingusers' into multiplayer-spectator-screen 2021-04-22 23:25:25 +09:00
smoogipoo
64579d50ac Use only single PlayerInstance for hit sample playback 2021-04-22 22:59:47 +09:00
smoogipoo
6588859c32 Remove loggings 2021-04-22 22:29:18 +09:00
Dan Balasescu
93b53f54fa
Merge pull request #12531 from peppy/editor-add-nudge-shortcuts
Add simple key based time nudging support to editor
2021-04-22 21:14:51 +09:00
Dan Balasescu
50f37ef09c
Merge pull request #12519 from peppy/editor-hit-animation-toggle
Add editor hit animation toggle
2021-04-22 20:49:21 +09:00
smoogipoo
6df23f1301 Merge branch 'master' into multiplayer-spectator-screen 2021-04-22 20:29:24 +09:00
Dean Herbert
a5364b224f Add simple key based time nudging support to editor 2021-04-22 18:47:04 +09:00
Dean Herbert
1884c18a2c Ignore movement operations which have no offset 2021-04-22 18:12:03 +09:00
Dean Herbert
daafa41dc1
Merge branch 'master' into fix-initial-spectator-state-callback 2021-04-22 16:22:04 +09:00
smoogipoo
1ca2152e61 Privatise + rename to SlaveGameplayClockContainer 2021-04-21 23:22:36 +09:00
smoogipoo
2bea625613 Fix initial playback states not being correct 2021-04-21 23:22:11 +09:00
Denrage
56a69ed956 Codestyle fixes 2021-04-21 15:53:28 +02:00
Denrage
0dfd0bb59d Refactored background of BeatmapInfoWedge 2021-04-21 15:46:11 +02:00
Denrage
d6928e91fd Removed BeatmapInfo in StarRatingDisplay 2021-04-21 15:43:48 +02:00
Denrage
9fba87f67a Moved Info and Background into own container 2021-04-21 15:43:29 +02:00
Denrage
de04caeace Fixed race condition in StarRatingDisplay 2021-04-21 13:53:08 +02:00
Dean Herbert
9d8f0c854d Setup configuration item for editor hit animations 2021-04-21 18:05:40 +09:00
Dean Herbert
c6c91cd9a5 Refactor WaveformOpacityMenuItem to not receive whole config 2021-04-21 18:05:26 +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
31c5fb350f Merge branch 'master' into gcc-abstraction 2021-04-21 16:33:36 +09:00
smoogipoo
fb848f7544 Rename to MasterGameplayClock 2021-04-21 16:33:14 +09:00
Dean Herbert
26430e3cb5
Merge pull request #12492 from Naxesss/bg-audio-quality-checks
Add background and audio checks
2021-04-21 00:10:32 +09:00
Denrage
e9571b72cf Fixed InspectCode 2021-04-20 14:53:35 +02:00
Denrage
583754b22a Removed unnecessary whitespaces 2021-04-20 14:29:53 +02:00
Denrage
df29e61147 Fix CodeFactor error 2021-04-20 14:22:49 +02:00
smoogipoo
a9e4a0ed50 Fix potentially starting play when finished
The UserFinishedPlaying event may trigger before the event is subscribed
to by SpectatorScreen. For such cases, an extra check is done to make
sure the user is _actually_ playing.
2021-04-20 21:19:08 +09:00
Denrage
f799a6e733 Removed StarDifficulty binding passthrough 2021-04-20 14:18:41 +02:00
smoogipoo
156a518068 Merge branch 'master' into fix-initial-spectator-state-callback 2021-04-20 21:16:05 +09:00
Naxess
3e1b6b3b34 Simplify verifier run call args
Uses the resolved working beatmap instead of resolving it every time.

Also uses the EditorBeatmap itself as playable beatmap, as it is of type `IBeatmap` already, and `.PlayableBeatmap` forwards everything anyway.
2021-04-20 13:34:12 +02:00
Denrage
c5d35ab787 removed mods binding passthrough 2021-04-20 12:40:22 +02:00
Denrage
4e6cd8082e WIP refresh BPM-Label on mod change 2021-04-20 12:00:04 +02: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
Denrage
6e72ee5f76 Added bindable stardifficulty to StarRatingDisplay 2021-04-20 10:37:53 +02:00
Denrage
505a117862 splitted updateable part of wedge 2021-04-20 10:37:52 +02:00
smoogipoo
97fb90d9f4 Move clock processing to base.Seek() 2021-04-20 17:35:59 +09:00
Dean Herbert
60acd824cb Add two sample implementations 2021-04-20 17:30:40 +09:00
smoogipoo
80473a356e Merge branch 'fix-pre-seek-sample-lifetime' into gcc-abstraction 2021-04-20 17:27:01 +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
Naxess
496df411a7 Remove now unused import 2021-04-20 02:39:11 +02:00
Naxess
0e6b66f457
Merge branch 'master' into bg-audio-quality-checks 2021-04-20 02:36:13 +02:00
Naxess
8656176ab8 Add the playable beatmap as check argument
This is different from the working beatmap's `.Beatmap` property in that it is mutated by the ruleset/editor.

So hit objects, for example, are actually of type `Slider` and such instead of the legacy `ConvertSlider`.

This should be preferred over `workingBeatmap.Beatmap`.
2021-04-20 01:31:51 +02:00
Denrage
6bf6084ae9 fixed according to suggestions 2021-04-19 19:24:46 +02:00
Bartłomiej Dach
d5829fe638 Merge branch 'master' into playlist-unicode 2021-04-19 19:24:04 +02:00
Bartłomiej Dach
0825fc57a9 Move foreground colour helper into OsuColour 2021-04-19 18:24:48 +02:00
Bartłomiej Dach
97573fb11d Merge branch 'master' into combo-colours-display 2021-04-19 18:21:57 +02:00
Denrage
9f24cdb355 Added Author Link in BeatmapInfoWedge 2021-04-19 16:54:09 +02: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
Dean Herbert
a40dcd4b8d Add a touch more space in the timing column 2021-04-19 18:53:06 +09:00
Dean Herbert
097a347533 Adjust Add different background colour for timing area 2021-04-19 18:25:30 +09:00
Dean Herbert
5bce5d2057 Update design logic 2021-04-19 18:25:20 +09:00
smoogipoo
5397f4faba Merge branch 'master' into fix-initial-spectator-state-callback 2021-04-19 16:49:06 +09:00
smoogipoo
c50b526ba0 Remove local state dictionary from SpectatorScreen 2021-04-19 16:48:55 +09:00
Dean Herbert
1ebc5ac5cc Remove unused legacy class 2021-04-19 16:36:00 +09:00
Dean Herbert
8da561a2a6 Soften colours and adjust padding slightly 2021-04-19 16:35:36 +09:00
Dean Herbert
f8b20ca8aa Add new display for effect row attribute 2021-04-19 16:35:36 +09:00
Dean Herbert
ec249a0edb Add new display for sample row attribute 2021-04-19 16:23:28 +09:00
Dean Herbert
6465a72060 Add bubbled word class for use in attribute rows 2021-04-19 16:23:28 +09:00
Dean Herbert
3aad0a8b9c Add new display for difficulty row attribute 2021-04-19 16:23:06 +09:00
Dean Herbert
d3cebfb6fb Use explicit label 2021-04-19 16:23:06 +09:00
Dean Herbert
a10a8680d0 Add new display for timing row attributes 2021-04-19 16:23:06 +09:00
smoogipoo
ef3801b5dd Add helper method supporting RomanisableString 2021-04-19 15:29:26 +09:00
Christine Chen
abfa6aec87 Remove completionState parameter 2021-04-19 01:58:19 -04:00
Dean Herbert
f4baff9e04 Make TimingScreen use rounded screen and adjust spacing/padding 2021-04-19 14:35:35 +09:00
Dean Herbert
e143afb598 Split out rounded content screen from SetupScreen for use in other places 2021-04-19 14:28:32 +09: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
Dean Herbert
513e470b52 Adjust grid spacing to allow attributes to use more width 2021-04-19 13:24:53 +09:00
Dean Herbert
0c918410d0 Make "add" button more visible 2021-04-19 13:15:24 +09:00
Dean Herbert
658c23c925 Give more space to the parameter adjustment area 2021-04-19 13:15:17 +09: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
Bartłomiej Dach
6f2ebb20a7 Fix test failing due to null beatmap skin
Also annotate the field on `EditorBeatmap` as nullable for future
travelers.
2021-04-18 20:46:42 +02:00
Bartłomiej Dach
07a00cd681 Add colours section with combo colour display 2021-04-18 20:46:42 +02:00
Bartłomiej Dach
a8027d87b6 Fix unreadable colour hex code text due to low contrast
Logic is shared with the timeline blueprints which also have the same
problem of displaying text on top of a combo colour.

Slightly modified the formula. Seems to yield better results on a
subjective check.
2021-04-18 20:44:55 +02:00
PercyDan54
488001d570
Support SpriteText for LinkFlowContainer 2021-04-18 20:58:08 +08:00
Dean Herbert
cfc7664094 Use full path 2021-04-18 21:05:23 +09:00
Dean Herbert
e76565dbc5 Fix selection box not displaying after pasting a selection in the editor
Closes #12471.
2021-04-18 20:28:39 +09: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
Salman Ahmed
2847dd7e05 Merge branch 'master' into play-storyboard-outro 2021-04-18 06:40:22 +03:00
PercyDan54
646403b826
Fix CI errors 2021-04-18 10:54:42 +08:00
PercyDan54
1339c126a4
Remove unused using 2021-04-18 09:54:50 +08:00
PercyDan54
cfaaf2e83e
Add ToRomanisableString() 2021-04-18 09:52:25 +08: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
Naxess
ef65c8910f Fix resolved fields 2021-04-18 01:15:13 +02: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
PercyDan54
512cec3458
Use unicode for playlists 2021-04-18 00:10:01 +08:00
Naxess
400f8b3938 Add GetStream to IWorkingBeatmap
This is necessary to obtain the filesize of the audio and background files.
2021-04-17 17:47:13 +02:00
Naxess
448574e7e6 Use WorkingBeatmap instead of IBeatmap
This lets us access things like the background, track, etc. which are necessary for quality and filesize checks.

Also improves the structure of the `CheckBackgroundTest` class in the process.
2021-04-17 17:33:53 +02:00
smoogipoo
724fe3d378 Remove unnecessary method 2021-04-16 22:57:34 +09:00
smoogipoo
72ebcb157f Dispose track on dispose 2021-04-16 22:57:27 +09:00
smoogipoo
4c5d4752b1 Rename classes to reduce redundant naming 2021-04-16 22:47:52 +09:00
smoogipoo
7d5d7088cd Remove now unnecessary override 2021-04-16 20:51:07 +09: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
smoogipoo
274e33184b Fix SpectatorScreen potentially missing user playing callbacks 2021-04-16 18:22:22 +09:00
Dean Herbert
d9d50f0e88 Add border showing selected blueprints in timeline 2021-04-16 18:16:22 +09:00
Dan Balasescu
3c8e2b8b32
Merge branch 'master' into fix-potential-deselection-crash 2021-04-16 16:27:47 +09:00
Dan Balasescu
d3acbcced7
Merge pull request #12437 from peppy/fix-editor-placement-commit-false
Fix placement blueprints not being correctly removed after a rolled back placement
2021-04-16 16:25:05 +09:00
Dean Herbert
c59906e925 Fix an occasional crash when deleting a HitObject via internal means 2021-04-16 15:55:33 +09:00
Dean Herbert
119c9b4294 Fix placement blueprints not being correctly removed after a rolled back placement 2021-04-16 14:11:33 +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
Dean Herbert
42c066e6f2 Fix slider not displaying in timeline during zero-duration placement 2021-04-16 13:38:55 +09:00
smoogipoo
1c086d99de Add loading spinner 2021-04-16 13:28:32 +09:00
smoogipoo
5ac0eb02cd Always add player instances at first, populate later 2021-04-16 12:25:29 +09: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
Dean Herbert
c2340f1fe8 Move zoom settings back to run in a non-loaded state 2021-04-16 01:01:03 +09:00
Dean Herbert
15d48a924b Set the timeline's height to a sane non-zero default
This isn't required but makes the initial appearance animation nicer.
2021-04-16 00:58:32 +09: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
7cf15fe729
Merge pull request #12412 from peppy/timeline-adjustments
Update timeline control point display
2021-04-15 22:43:26 +09:00
Andrei Zavatski
71b06d7e61 Simplify ExtendableCircle even more 2021-04-15 15:53:21 +03:00
Dan Balasescu
7beaf0ce55
Merge branch 'master' into timeline-adjustments 2021-04-15 21:51:00 +09:00
Dean Herbert
ad671ee07a
Merge branch 'master' into timeline-adjustments 2021-04-15 20:42:38 +09:00
Dan Balasescu
e3bf5f1bbb
Merge branch 'master' into summary-timeline-kiai-display 2021-04-15 20:41:31 +09:00
Dan Balasescu
6f17c19a48
Merge branch 'master' into summary-timeline-design-refactors 2021-04-15 20:11:39 +09:00
Dan Balasescu
b70dae7cf1
Merge pull request #12420 from peppy/round-timeline-ticks
Add rounded corners to timeline ticks display
2021-04-15 20:11:20 +09:00
smoogipoo
b391a8f94e Properly bind WaitingOnFrames 2021-04-15 19:37:45 +09:00
smoogipoo
33cc5c5cb3 A few more xmldocs 2021-04-15 19:35:57 +09:00
smoogipoo
82fcabb8f0 More refactorings/renamespacings/xmldocs 2021-04-15 19:32: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
df4fce2c57 Rename classes 2021-04-15 19:16:00 +09:00
smoogipoo
1705d472b5 Reimplement multiplayer syncing using new master/slave clocks 2021-04-15 19:12:52 +09:00
smoogipoo
fe3ba2b80e Implement IAdjustableClock on GameplayClockContainer 2021-04-15 19:07:25 +09:00
Dean Herbert
0dc1577f68 Split out control point visualisation logic and add special kiai duration handling 2021-04-15 18:42:30 +09:00
Dean Herbert
153ee25510 Update base specifications to a more sane default 2021-04-15 18:42:07 +09:00
Dean Herbert
bf5af3310a Update break colour to not look like kiai time 2021-04-15 17:04:11 +09:00
Dean Herbert
18e8682f39 Remove unused using statements 2021-04-15 17:01:25 +09:00
smoogipoo
33ad7850cb Remove LastFrameTime 2021-04-15 16:45:59 +09:00
Dean Herbert
757475e6d4 Use correct representation colours 2021-04-15 16:39:20 +09:00
Dean Herbert
da6f9060fa Centre end circles to avoid visual gaps 2021-04-15 16:39:20 +09:00
Dean Herbert
73821beb1d Fix break display looking bad on very long beatmaps due to fixed corner radius 2021-04-15 16:39:20 +09:00
smoogipoo
6fc7488a67 Reimplement syncing logic as a new component 2021-04-15 16:33:59 +09:00
Dean Herbert
bc3b2af39d Add rounded corners to timeline ticks display 2021-04-15 15:29:22 +09:00
smoogipoo
7993c2b880 Merge branch 'gcc-abstraction' into multiplayer-spectator-screen 2021-04-15 14:23:12 +09:00
Salman Ahmed
6c5234f8da Move default IgnoreUserSettings value to construction 2021-04-15 08:04:03 +03:00
Salman Ahmed
92fd34cea9 Revert "Inverse ignore user settings bindable to "apply user settings" instead"
This reverts commit 175b8da2b2.
2021-04-15 08:02:12 +03:00
Salman Ahmed
175b8da2b2 Inverse ignore user settings bindable to "apply user settings" instead 2021-04-15 07:34:20 +03:00
Salman Ahmed
a5fa14ac4a Ignore user settings on background screen beatmap by default 2021-04-14 23:35:42 +03:00
smoogipoo
f56125bd68 Update clock from base class 2021-04-14 21:15:14 +09:00