Bartłomiej Dach
0bc6a026eb
Merge branch 'master' into skin-components-bind-outwards-accuracy
2021-05-08 21:08:53 +02:00
Bartłomiej Dach
c3bf6a0287
Remove weird vestigial Current
reimplementation
...
Has no functional purpose anymore since the changes in the HUD element
data binding flow.
2021-05-08 21:01:37 +02: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
a2e4fb5b6b
Update ScoreCounter
components to bind outwards
2021-05-07 16:16:48 +09:00
Dean Herbert
aff32b0d19
Merge branch 'master' into skin-components-list
2021-05-06 14:17:33 +09:00
Dean Herbert
15603de6e9
Change scale multiplier to be closer to expectations
2021-05-03 15:25:18 +09:00
Dean Herbert
7d8be8cd83
Add comment about why we are running checkForComponents
on a timer
2021-05-03 15:20:00 +09:00
Dean Herbert
a298a93070
Remove redundant storage of blueprint's related item
2021-05-03 15:18:18 +09:00
Dean Herbert
51f4077b27
Reorder methods in SkinSelectionHandler
to follow standards
2021-05-03 15:15:00 +09:00
Dean Herbert
a2faa0b74c
Remove dead code
2021-05-03 15:13:53 +09:00
Dean Herbert
01984de9c7
Use existing GetStateFromSelection
helper function
2021-05-03 15:13:32 +09:00
Dean Herbert
f3b305bbe6
Rename and improve xmldoc of SkinEditorOverlay
2021-05-03 14:58:25 +09:00
Dean Herbert
e663629bc6
Match button appearance to that of the beatmap editor
2021-04-30 15:22:51 +09:00
Dean Herbert
a1e64f4e3c
Use the existing toolbox design
2021-04-30 14:41:06 +09:00
Dean Herbert
bde72faa7c
Limit components list height to better align with actual viewport
2021-04-30 13:10:42 +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
ae9d1dc40b
Add component list to main editor interface and enable basic placement
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
cdef07b2ee
Fix blueprints not hiding when deleting elements
2021-04-30 13:09:57 +09:00
Dean Herbert
8d056ff38f
Remove redundant parenthesis
2021-04-29 18:23:22 +09:00
Dean Herbert
fb64f6faf2
Add ability to exit using game "back" binding
2021-04-29 17:40:58 +09:00
Dean Herbert
a7982787d4
Add basic header text
2021-04-29 17:40:48 +09:00
Dean Herbert
b936043956
Add the skin editor to the game
2021-04-29 17:20:22 +09:00
Dean Herbert
b460181f15
Add note about rotation not working as expected
2021-04-29 16:16:52 +09:00
Dean Herbert
1516e2ffef
Update blueprint implementation in line with #12625 .
2021-04-29 16:12:31 +09:00
Dean Herbert
3c84b0d8c6
Fix selection screen point being wrong since recent refactors
2021-04-29 16:12:15 +09:00
Dean Herbert
de73ac7cec
Allow skin editor to be invoked from any context
...
This is kind of how I see things working going forward, where the editor
can be applied to anything in the game which supports it (ie. a results
screen, gameplay screen, etc.) and it will immediately allow changing
the interface.
This adds a test scene which shows this working with gameplay.
2021-04-29 16:12:15 +09:00
Dean Herbert
4f9e1e4945
Check for new components every one second to handle late loaders
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
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
smoogipoo
281c2041b2
Add failing test
2021-04-20 16:51:00 +09:00
Salman Ahmed
1b6e08b3eb
Fix incorrect default font overlap for score and combo
2021-03-26 10:35:46 +03:00
Salman Ahmed
6aa0c9d8fd
Merge branch 'master' into legacy-sprite-text-fonts
2021-03-25 14:52:01 +03:00
Dan Balasescu
41cf261286
Merge pull request #12177 from peppy/fix-comment-parsing-regression
...
Don't strip comments from metadata during parsing
2021-03-25 15:02:10 +09:00
Dean Herbert
0324bfa857
Change checks back to Contains
2021-03-25 14:14:38 +09:00
Dean Herbert
e22650293d
Remove unnecessary second call to StripComments in skin parsing logic
2021-03-25 13:35:42 +09:00
Salman Ahmed
fc5719e445
Fix SkinManager not handling extensions casing comparsion properly
2021-03-24 21:31:53 +03:00
Dean Herbert
073dba5330
Remove local workarounds to attempt to avoid crashes on skin change
2021-03-22 14:05:37 +09:00
Bartłomiej Dach
a16c0641b2
Revert EF Core to version 2.2
...
This reverts commit f3faad74d5
, reversing
changes made to 712e7bc7bf
.
Several issues arose after migrating to 5.0, including, but possibly not
limited to, performance regressions in song select, as well as failures
when attempting to save beatmaps after metadata changes in the editor.
2021-03-21 11:05:15 +01:00
Dean Herbert
ca943a897a
Fix back to front initialisation order
2021-03-20 10:51:58 +09:00
Dean Herbert
68aaf90702
Fix disposal rather than performing some weird hack
2021-03-19 20:30:52 +09:00
Dean Herbert
f59327cc3e
Merge branch 'master' into fix-unsafe-skinnable-sample-play
2021-03-19 20:29:44 +09:00
Dean Herbert
b2d8db3a92
Rename incorrect variable
2021-03-19 20:25:21 +09:00
Dean Herbert
c0c8b3e46c
Fix regression meaning SkinnableSound
initialisation may never happen
2021-03-19 19:22:50 +09:00
Dean Herbert
9491e6394a
Include the bundled skins when selecting a random skin
2021-03-19 15:46:43 +09:00
Dean Herbert
bf4317d3f0
Ensure looping is disabled on old samples when switching skins
2021-03-19 15:34:21 +09:00
Dean Herbert
0e821e857e
Remove unnecessary duplicated skin changed handling
...
For some reason we were handling this both in `DrawableSkinnableSound`
and `PoolableSkinnableSample` in very similar ways. Only one seems
required.
2021-03-19 15:23:32 +09:00
Bartłomiej Dach
b419d2c2e2
Fix invalid xmldoc indent
2021-03-18 19:52:38 +01:00
Bartłomiej Dach
aec859b4d1
Merge branch 'master' into fix-unsafe-skinnable-sample-play
2021-03-18 19:51:46 +01:00
Dean Herbert
5b0d75ee56
Only trim trailing spaces to avoid breakage in storyboard parsing
2021-03-18 16:30:30 +09:00
Dean Herbert
2bdffd1004
Move skin requery logic into extension methods
2021-03-15 13:11:58 +09:00
Roman Kapustin
0a1e325fc7
Extract requerying of navigational properties from DbContext
2021-03-14 19:34:53 +03:00
Salman Ahmed
43c1e1d217
Update existing usages
...
Resolve post-conflict issues
2021-03-13 06:09:07 +03:00
Salman Ahmed
2a2ee3fa5e
Update legacy sprite text constructor
2021-03-13 06:05:36 +03:00
Salman Ahmed
64d1cb5193
Remove text skin components in favour of plain LegacySpriteText
s
2021-03-13 06:05:36 +03:00
Salman Ahmed
91741564e8
Add legacy font enum and extensions
2021-03-13 06:05:36 +03:00
Salman Ahmed
115c186cb7
Move hit circle font from osu! ruleset
2021-03-13 06:05:36 +03:00
Roman Kapustin
47b80d2474
Workaround InvalidOperation exceptions
2021-03-11 20:51:54 +03:00
Dean Herbert
b1cd01ceb8
Apply ConfigureAwait changes to game side
2021-03-08 14:36:35 +09:00
Dean Herbert
c4ba045df1
Add note about finalizers required for audio store clean-up
2021-03-02 16:07:51 +09:00
Dean Herbert
1fd76ea3fb
Apply changes to UI components overriding functions with changing signatures
2021-02-22 19:01:42 +09:00
smoogipoo
f48e017ac9
Move nested class to bottom of file
2021-02-22 18:34:05 +09:00
smoogipoo
0bda9e4b79
Implement some new methods
2021-02-22 18:31:33 +09:00
smoogipoo
ee6a94273d
Merge branch 'master' into fix-unsafe-skinnable-sample-play
2021-02-22 18:31:27 +09:00
Dean Herbert
fde026d443
Remove redundant interface specification
2021-02-22 14:54:48 +09:00
Dean Herbert
63dd55c92c
Add missing methods from updated audio component interface implementation
2021-02-22 14:18:52 +09:00
Dean Herbert
487a39eea9
Update interface implementations with framework changes
2021-02-18 18:52:34 +09:00
Dean Herbert
880fe82073
Add sample wrapper in LegacySkin to keep a reference and avoid GC death
2021-02-18 18:32:51 +09:00
Dean Herbert
4aff54412a
Move dispose method to end of file
2021-02-18 18:32:39 +09:00
Dean Herbert
00574a5288
Use ISample everywhere in Skin GetSample lookup path
2021-02-18 18:32:28 +09:00
Dean Herbert
143e145670
Update implementation of AdjustableAudioComponents
2021-02-18 15:44:23 +09:00
smoogipoo
9b5995f2f1
Update with removal of looping parameter
2021-02-12 19:05:17 +09:00
smoogipoo
0c3aef8645
Fix potential race in looping sample
...
As mentioned via GitHub comments. Very unlikely for this to happen unless: the sample takes a short amount of time to load, is very short itself, and the update thread stalls until the sample fully completes.
2021-02-12 17:42:35 +09:00
smoogipoo
d3f0c0730d
Merge branch 'master' into non-concurrent-sample-playback
2021-02-12 17:22:15 +09:00
Mysfit
3307e8357f
DrawableStoryboardSample event method override for SamplePlaybackDisabledChanged
2021-01-26 00:36:32 -05:00
Bartłomiej Dach
b692abd3c2
Simplify condition from two to one operand
2021-01-22 20:35:34 +01:00
Mysfit
e0f8f6a23f
introduce overrideable bool instead of copying event logic entirely
2021-01-22 12:09:40 -05:00
Mysfit
5b1bdfbdc5
Use callback method override
2021-01-21 20:06:24 -05:00
Mysfit
b53ad50cd4
Remove redundant variable
2021-01-21 18:00:37 -05:00
Mysfit
07ec0c0e0b
Updated DrawableStoryboardSample to use GetBoundCopy()
2021-01-21 17:46:47 -05: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
8ffbcc9860
Fix test failures and general discrepancies
2021-01-20 14:05:35 +09:00
smoogipoo
bdb9d4f7d0
Restart sound on play
2021-01-20 13:59:30 +09:00
smoogipoo
58269f9314
Update with framework changes
2021-01-20 13:35:43 +09:00
smoogipoo
de9d075f94
Initial sample + samplechannel rework
2021-01-19 17:11:40 +09:00
Dean Herbert
ced7a36788
Update namespaces
2021-01-18 21:24:10 +09:00
Dean Herbert
707d5346c9
Merge branch 'master' into fix-spinner-spinning-weirdness
2021-01-18 18:26:44 +09:00
Dean Herbert
94fee8c31d
Avoid doing a config lookup if initial conditional fails
2021-01-18 16:13:58 +09:00
Dean Herbert
1364de1166
Merge branch 'master' into beatmap-colour-setting
2021-01-18 16:07:46 +09:00
Bartłomiej Dach
3c1a86d11d
Trim braces for consistency
2021-01-15 22:04:45 +01:00
Dean Herbert
8a6857f151
Add support for playing a SkinnableSample without restarting it
2021-01-15 17:16:12 +09:00
Dean Herbert
ebbc32adfa
Change conditional used to decide legacy judgement animation to match stable
...
In stable, the type of legacy judgement to show is based on the presence
of particle textures in the skin. We were using the skin version
instead, which turns out to be incorrect and not what some user skins
expect.
Closes #11078 .
2021-01-15 14:51:27 +09:00
Mysfit
0c01a3a685
Found a better solution than TValue type checking for additional beatmap colour settings. Added unit tests for Catch Beatmap Skin settings.
2021-01-14 23:30:24 -05:00
Mysfit
99e43c77c2
Simplified colour config checks in SkinProvidingContainer.cs
2021-01-14 16:53:55 -05:00
Jesse Myers
562634dfd2
Improve naming around the config lookup with fallback private method.
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-01-13 16:49:14 -05:00
Mysfit
8b95817f7a
Moved SkinProvidingContainer bindable fetching to common method. Replaced redundant test boolean declarations with inline values.
2021-01-13 16:05:46 -05:00
Mysfit
1248d39d7e
Reverted change to AllowConfigurationLookup and added a separate AllowColourLookup bool with config case based on lookup type in SkinProvidingContainer GetConfig call.
2021-01-13 13:07:07 -05:00
Mysfit
7bfb5954a8
Fix whitespace formatting.
2021-01-13 00:25:54 -05:00
Mysfit
5f10bcce02
Added beatmap colour settings checkbox and associated tests.
2021-01-13 00:09:22 -05:00
Dean Herbert
13ef097a53
Annotate potentially null parameters in protected ctor of LegacySkin
2020-12-22 12:08:40 +09:00
Dean Herbert
10c2745682
Add region specifications around implicit interface implementations
2020-12-22 12:01:09 +09:00
Dean Herbert
a5bcf1dc20
Expose resources to skin via interface (and share common pieces with beatmap)
2020-12-21 15:18:52 +09:00
Dean Herbert
c002184768
Clamp osu!mania's HitPosition offset to match osu-stable implementation
...
Closes #11184 .
2020-12-16 18:08:19 +09:00
smoogipoo
ca11eeefdf
Merge branch 'master' into mania-legacyskin-scoreposition
2020-12-14 11:25:34 +09:00
Firmatorenio
3741c2339a
simplify implementation and adjust the default values
2020-12-13 22:43:36 +06:00
Firmatorenio
2108844319
apply ScorePosition to the judgement container
2020-12-13 22:01:08 +06:00
Firmatorenio
b3d8347315
add support for ScorePosition into LegacyManiaSkin
2020-12-10 20:11:08 +06:00
Bartłomiej Dach
f6d15b9757
Invert back-to-front logic
2020-12-06 18:59:38 +01:00
Bartłomiej Dach
fcd9483ffa
Merge branch 'master' into fix-multiple-playback-on-skin-change
2020-12-06 18:21:24 +01:00
Dean Herbert
a0f92628ac
Merge branch 'master' into fix-sample-expire
2020-12-04 13:49:08 +09:00
ekrctb
6c46046c24
Fix DHO expires while hit sound is playing
2020-12-03 12:32:49 +09:00
Bartłomiej Dach
2c57deea2b
Trim double full-stop in xmldoc
2020-11-30 19:43:20 +01:00
smoogipoo
c29ad8edf8
Better API for dealing with the contained drawable samples
2020-11-30 19:26:25 +09:00
smoogipoo
f5e8d1d14d
Lose old reference immediately on updateSample()
2020-11-30 19:19:24 +09:00
smoogipoo
afb8eb636d
Apply simple PR reviews
2020-11-30 18:40:22 +09:00
smoogipoo
4bbeb9ebd4
Merge branch 'master' into hit-sample-pooling
2020-11-30 18:31:58 +09:00
Bartłomiej Dach
1c31a4a6b6
Expose animation start time as mutable in interface
2020-11-22 13:11:22 +01:00
Dean Herbert
a3b1d14f17
Apply similar fix to PoolableSkinnableSound
2020-11-22 14:44:39 +09:00
Bartłomiej Dach
240c1b0aef
Add support for changing animation start time after load
2020-11-21 20:06:30 +01:00
Dean Herbert
8080fe942c
Fix samples being played more than once on skin change
2020-11-20 20:38:26 +09:00
Dean Herbert
a00e0d7279
Move CanBeNull specification to the interface
2020-11-20 16:30:48 +09:00
Dean Herbert
7fe0923fcf
Show main judgement content above hitobjects
2020-11-20 16:25:48 +09:00
smoogipoo
7c83a27002
Add more xmldocs
2020-11-19 22:48:21 +09:00
smoogipoo
8a656f7cee
Fix missing SkinChanged event + safety
2020-11-19 22:42:44 +09:00
smoogipoo
d388c44428
Cleanup, refactoring, and restart sample on skin change
2020-11-19 22:30:21 +09:00
smoogipoo
0287269b2f
Fix volume discrepancies
2020-11-19 21:21:30 +09:00
smoogipoo
70cb197957
Cleanups
2020-11-19 20:38:36 +09:00
smoogipoo
812d5d59b1
Fix looping not being propagated
2020-11-19 20:29:09 +09:00
smoogipoo
003fed857c
Separate files
2020-11-19 19:52:34 +09:00
smoogipoo
730b14b5bb
Add initial hit sample pooling
2020-11-19 19:51:09 +09:00
Dean Herbert
9d04ce75cc
Make particles additive and consume in judgement explosions
2020-11-19 15:47:02 +09:00
Dean Herbert
85c5c68dfa
Provide particle drawable as a function (for future use)
2020-11-19 13:20:21 +09:00
Bartłomiej Dach
24d7fa03d8
Merge branch 'master' into legacy-jugement-match-stable-transforms
2020-11-18 20:33:58 +01:00
Bartłomiej Dach
5156de3a10
Merge branch 'master' into fix-judgement-transform-logic
2020-11-18 19:20:11 +01:00
Dean Herbert
c47e70da9b
Update animations for new/old miss style and add fades
2020-11-18 19:03:34 +09:00
Dean Herbert
9d0a6de26e
Fix SkinnableSprite initialising a drawable even when the texture is not available
2020-11-18 19:03:34 +09:00
Dean Herbert
5bd4ace37f
Split out new and old style legacy judgement pieces
2020-11-18 19:03:34 +09:00
Dean Herbert
8be31f4805
Adjust legacy skin judgement transforms to match stable
2020-11-18 19:03:05 +09:00
Dean Herbert
bb1aacb360
Fix SkinnableSprite initialising a drawable even when the texture is not available
2020-11-18 18:07:00 +09:00
Bartłomiej Dach
57eaee27ae
Rename param to match type better
2020-11-17 20:12:04 +01:00
Dean Herbert
dd4b69feab
Add legacy judgement implementation which doesn't transform on animations
2020-11-17 15:46:57 +09:00
Dean Herbert
9a7fdb2b7e
Move skin deletion logic to OsuGameBase to promote thread safety
...
`CurrentSkinInfo` is used in multiple places expecting thread safety,
while ItemRemoved events are explicitly mentioning they are not thread
safe. As SkinManager itself doesn't have the ability to schedule to the
update thread, I've just moved the logic to `OsuGameBase`. We may want
to move the current skin bindable out of the manager class in the
future to match things like `BeatmapManager`.
Closes https://github.com/ppy/osu/issues/10837 .
2020-11-16 16:43:19 +09:00
Dean Herbert
8d38d9cc93
Add hotkey to select random skin
2020-11-11 13:05:03 +09:00
Dean Herbert
6b548ef5e4
Split out SkinInfo ID constants and fix random logic
2020-11-11 11:54:40 +09:00
Dean Herbert
a5e13e4d2c
Merge branch 'master' into shuffle-skin
2020-11-11 11:34:48 +09:00