Dean Herbert
a8af83e62a
Move label initialisation out of ctor
2022-11-23 16:49:39 +09:00
Dean Herbert
27473262af
Rename attributes in enum to match better with user expectations
2022-11-23 16:45:46 +09:00
Dean Herbert
b89689a34a
Rename class and reword settings text/tooltips to avoid clashing with other naming
2022-11-23 16:31:50 +09:00
C0D3 M4513R
93ab1c9432
Merge branch 'master' into beatmap-info
2022-11-21 09:01:24 +00:00
Dean Herbert
eae8530722
Fix SkinnableSprite
lookups broken in lazer-first skins
...
Regressed with removal of local `GetTexture` calls in e19ba65f91
2022-11-13 12:46:21 +09:00
Dean Herbert
e19ba65f91
Remove LookupName
from base ISkinComponentLookup
2022-11-09 17:46:43 +09:00
Dean Herbert
1aa0e40f2f
Add "Component" prefix to lookup naming
2022-11-09 17:46:43 +09:00
Dean Herbert
e75c3b3f94
Rename SkinnableTarget
to GlobalSkinLookup
2022-11-09 17:46:43 +09:00
Dean Herbert
c908969d9b
Rename ISkinComponent
to ISkinLookup
2022-11-09 17:46:43 +09:00
Dean Herbert
ab458320c4
Fix some lingering inspections
2022-11-09 17:46:24 +09:00
Dean Herbert
d4251271d8
Apply nullability to SkinnableDrawable
2022-11-09 13:59:13 +09:00
Dean Herbert
bf26dbffc2
Apply nullability to skinning support classes
2022-11-09 13:59:13 +09:00
C0D3 M4513R
ab650d8a1b
Use AutoSizeAxes
2022-11-07 15:22:20 +01:00
C0D3 M4513R
28ab092b6f
Simplify the whole Templating process
2022-11-07 07:55:42 +01:00
C0D3 M4513R
a435e365ea
Allow for the Value of BeatmapInfoDrawable to be formatted
2022-11-03 18:54:55 +01:00
C0D3 M4513R
502bfa950e
Fix potential resource leak
2022-11-03 08:05:26 +01:00
C0D3 M4513R
95e2521ca4
Use more Localisations
2022-11-02 13:56:55 +01:00
C0D3 M4513R
2e5db5e259
Remove nullable disable from TextElement
2022-11-02 13:24:05 +01:00
C0D3 M4513R
ed7e3a29e2
Add Localisation
...
Also add Labels for what is displayed, and prefix/suffix for Labels
Add a Prefix and Suffix for Values
2022-11-02 13:00:45 +01:00
C0D3 M4513R
975eed964e
Don't make Beatmap in OsuGameBase public
...
Signed-off-by: C0D3 M4513R <28912031+C0D3-M4513R@users.noreply.github.com>
2022-11-01 21:19:01 +01:00
C0D3 M4513R
c231a20cbb
Add a generic text Element
...
Signed-off-by: C0D3 M4513R <28912031+C0D3-M4513R@users.noreply.github.com>
2022-11-01 20:54:52 +01:00
C0D3 M4513R
905ebc3c1f
Initial implementation of a Beatmap Information Skinning Element
...
Signed-off-by: C0D3 M4513R <28912031+C0D3-M4513R@users.noreply.github.com>
2022-11-01 20:46:32 +01:00
Dean Herbert
42eafe318c
Remove various simple obsoletions
2022-10-28 13:20:58 +09:00
Dean Herbert
7dbd6e2469
Merge branch 'master' into taiko-kiai-flashing
2022-10-21 12:48:35 +09:00
Joseph Madamba
bf4a91f1f0
Fix skin toolbox component button not playing hover/click sounds
2022-10-20 13:16:03 -07:00
Salman Ahmed
eb386d4bd5
Enable slider ball tint in default legacy skin
2022-10-20 03:29:25 +03:00
Joppe27
9b123e7365
Adjust flash intensity and fade values to feel better
2022-10-19 00:51:44 +02:00
Joppe27
a76a039722
Rename KiaiFlashingDrawable and move to osu.Game
2022-10-18 23:40:43 +02:00
Dean Herbert
8bf4ca4b53
Add legacy skin fallback when beatmap skin is providing resources
2022-10-12 17:47:20 +09:00
Dean Herbert
fd20515a6d
Don't throw if LegacySkin
doesn't have a transformer encapsulating it
...
This allows for more flexibility in lookups.
2022-10-12 17:29:17 +09:00
Dean Herbert
1c93551590
Remove completely incorrect check before applying ruleset transformer
2022-10-12 17:07:13 +09:00
Dean Herbert
cb21126623
Merge pull request #20586 from ekrctb/time-based-selection
...
Use hit object time for timeline drag selection instead of relying on blueprint
2022-10-11 13:20:15 +09:00
D.Headley
5d2e3dcf4a
Remove leftover Enum
2022-10-09 22:52:54 +02:00
Dean Herbert
a543222a2b
Add ability to pad stage vertically
2022-10-07 15:45:35 +09:00
Dean Herbert
eea3d5adb8
Standardise column index naming and xmldoc
2022-10-07 15:24:36 +09:00
Dean Herbert
13e0a59f70
Add note about why LegacyManiaSkinConfigurationLookup
exist
2022-10-07 15:24:36 +09:00
Dean Herbert
3947011baf
Fix regression in legacy dual stage handling logic
2022-10-07 15:24:36 +09:00
ekrctb
6164e0896a
Don't reselect already selected items in SelectAll
2022-10-07 10:46:07 +09:00
ekrctb
0d448e6cc8
Fix items without blueprints are not deselected
2022-10-06 13:50:56 +09:00
Dean Herbert
5243ff3c22
Add argon combo colours
...
I'm 99% sure these are just test colours flyte was using, but they look good
so let's go with them. I've added two new colours to increase the default
combo colour rotation to 6. The initial ordering still matches, for whatever
that's worth.
2022-09-22 19:49:32 +09:00
Dean Herbert
74aefdc5bd
Move basic transformer behaviour to base abstract
class
2022-09-22 18:53:43 +09:00
Dean Herbert
ea7c5458fe
Fix sprite dropdown not showing resources from non-legacy skins during gameplay
2022-09-22 18:53:43 +09:00
Dan Balasescu
70bab81282
Merge pull request #20377 from peppy/argon-skin
...
Add new default "argon" skin
2022-09-22 14:50:43 +09:00
Dean Herbert
992441b9de
Disable alpha component parsing in beatmap / skin colour sections
2022-09-21 16:11:41 +09:00
Dean Herbert
4492a26b59
Merge branch 'master' into argon-skin
2022-09-21 13:00:16 +09:00
Salman Ahmed
b8f2e13503
Avoid catching all exceptions raising from skin instance creation
2022-09-20 22:27:27 +03:00
Dean Herbert
b55aa68177
Remove xmldoc on private fields
2022-09-19 23:16:46 +09:00
Dean Herbert
0f7b38f4c3
Add new default skin "argon"
2022-09-19 23:16:46 +09:00
Dean Herbert
6a06a5b1b5
Reword fallback instantiation handling comment to hopefully explain things better
2022-09-18 18:20:28 +09:00
Dean Herbert
d0b8409de5
Apply more renames
2022-09-18 18:19:00 +09:00
Dean Herbert
41e69fbca6
Remove "default" prefix from naming
2022-09-18 00:15:26 +09:00
Dean Herbert
1b475f9360
Ensure skin InstantiationInfo
is updated when saving
2022-09-18 00:12:43 +09:00
Dean Herbert
487378f732
Fallback to default skin if instantiation fails
2022-09-17 23:57:25 +09:00
Dean Herbert
3e28ab72ce
Standardise default skin names
2022-09-17 23:57:25 +09:00
Dean Herbert
51841988bf
Rename references to DefaultSkin
to have Triangles
suffix
2022-09-17 23:57:25 +09:00
Dan Balasescu
e95983cdb4
Merge branch 'master' into fix-skin-flow
2022-09-16 20:15:51 +09:00
Dean Herbert
c7f8f948b9
Rename CreateLegacySkinProvider
to CreateSkinTransformer
and apply to all skins
2022-09-15 20:18:10 +09:00
Dean Herbert
28b15e232d
Remove all EF models
2022-09-15 16:59:36 +09:00
Salman Ahmed
5fba21d658
Rename parameter to clarify purpose
2022-09-13 02:21:01 +03:00
Dean Herbert
f31deaef7c
Simplify skin bindable flow
...
Now, nothing touches the configuration apart from `OsuGame`, making
everything else flow better and avoid weird cyclic set bugs.
Closes https://github.com/ppy/osu/issues/20234 .
2022-09-12 19:51:50 +09:00
Dean Herbert
e29f5cb456
Fix new-style legacy skins with animated judgements not adding correct transforms
...
Closes #16173 .
2022-09-12 18:54:06 +09:00
cdwcgt
d1e27e8a69
add arrow short cut for skin editor
...
basically from `ComposeBlueprintContainer` because they have the same logic
2022-09-08 23:14:34 +08:00
Dean Herbert
a215d009fe
Update Remove
/RemoveRange
/RemoveAll
calls in line with framework changes
2022-08-29 15:57:40 +09:00
Dean Herbert
ac99c1ad69
Migrate the majority of existing file lookups to use new extension methods
2022-08-10 16:01:16 +09:00
Dean Herbert
237f72efbc
Add missing null check on AudioManager
2022-08-08 13:31:57 +09:00
Dan Balasescu
c4b9b2a14b
Merge branch 'master' into irenderer-glwrapper
2022-08-05 20:35:06 +09:00
Dan Balasescu
6632367c6d
Ensure skin samples are looked up in correct order
2022-08-04 14:48:12 +09:00
Dan Balasescu
b4e55f7309
Apply IRenderer changes
2022-08-02 19:50:57 +09:00
Dean Herbert
5b98a73edc
Apply nullability to SkinComponentToolbox
and split out reflection method to get all skinnable components
2022-08-01 14:04:08 +09:00
Dean Herbert
93b783d9ea
Fix previous skins not loading due to namespace changes
2022-07-31 03:25:38 +09:00
Dean Herbert
3005ff1b9f
Merge branch 'master' into pie-chart-progress
2022-07-28 22:19:27 +09:00
Dean Herbert
4b140e1f5a
Adjust metrics
2022-07-28 18:50:46 +09:00
Dean Herbert
ea027eda46
Move initial show to base implementation and add transition for legacy version
2022-07-28 18:29:49 +09:00
Dean Herbert
bfa026879c
Remove pointless null check
2022-07-28 18:28:03 +09:00
Nitrous
0d36907cad
apply code quality fixes
2022-07-28 15:30:45 +08:00
Nitrous
db62d4be3a
apply suggestions
...
- refactor `SongProgress`
- make`UpdateProgress` more readable
- enable NRT on new classes
- refactor `TestSceneSongProgress` to use `GameplayClockContainer`
2022-07-28 15:15:41 +08:00
Nitrous
9088caa377
move LegacyComboCounter
to osu.Game.Skinning
2022-07-28 08:36:26 +08:00
Nitrous
a222278710
remove unused using
2022-07-27 16:01:35 +08:00
Nitrous
37e642b0bd
make SongProgress
abstract
...
- move unrelated logic to `DefaultSongProgress`
- make `LegacySongProgress` inherit `SongProgress`
2022-07-27 15:19:21 +08:00
Nitrous
a12676c25d
scale down graph from bleeding through border
2022-07-27 14:35:18 +08:00
Dean Herbert
d8e605d8aa
Fix broken tests due to badly reimplemented copy-pasted code
2022-07-27 13:58:01 +09:00
Dean Herbert
62ca3aada6
Transfer TODO comment across to copy-pasted implmentation
2022-07-27 13:53:27 +09:00
Dean Herbert
b803ec543f
Remove unused combo
DI retrieval
2022-07-27 13:50:03 +09:00
Nitrous
842ab3c5c1
remove unused using
2022-07-27 09:41:58 +08:00
Nitrous
3abf44da91
Merge branch 'master' into pie-chart-progress
2022-07-27 08:53:23 +08:00
Nitrous
a2320aeb27
replace SongProgress
with LegacySongProgress
2022-07-27 08:52:27 +08:00
Nitrous
6b0f3674c3
implement LegacySongProgress
2022-07-27 08:51:55 +08:00
Dean Herbert
8370ca9765
Add ImportAsUpdate
method to IModelImporter
to avoid otehr changes
2022-07-26 15:49:04 +09:00
Dan Balasescu
f87efae115
Merge pull request #19293 from peppy/skin-editor-save-hotkey
...
Add the ability to save in the skin editor using system save hotkey
2022-07-22 14:43:34 +09:00
Dean Herbert
f713253d1b
Fix formatting inconsistencies in empty ctor
s
2022-07-22 14:00:29 +09:00
Dean Herbert
92f59ce9a0
Add the ability to save in the skin editor using system save hotkey
2022-07-22 13:10:18 +09:00
LukynkaCZE
ed94d7fce8
Fix requested changes
2022-07-22 02:46:17 +02:00
LukynkaCZE
5987acfbca
Fixed code formatting
2022-07-19 22:59:25 +02:00
LukynkaCZE
51a0b5afdc
Skin Editor
2022-07-19 22:18:19 +02:00
Salman Ahmed
69d967172a
Remove unencessary null coalesce
2022-07-16 06:39:05 +03:00
Dean Herbert
426c53fe65
Fix potential null being sent to extension method which doesn't support it
2022-07-02 12:50:28 +09:00
Dean Herbert
31a447fda0
Update parameter discards
2022-06-24 21:26:19 +09:00
Dean Herbert
dbae4c6f5a
PostImport
-> PresentImport
2022-06-20 18:36:29 +09:00
Dean Herbert
92f1a2958c
Rename Import(TModel)
to ImportModel
to differentiate from other import methods
2022-06-20 15:18:07 +09:00
Dean Herbert
a6c8a832aa
Remove Import(ArchiveReader)
and redirect existing usages to Import(ImportTask)
2022-06-20 15:14:57 +09:00
Dean Herbert
329f1a0822
Add test coverage of original fail case and improve test reliability and code quality
2022-06-20 14:08:05 +09:00
Gabe Livengood
a5bc769243
clear skineditor selected components on hide
2022-06-19 14:34:52 -04:00
Gabe Livengood
36df1da57f
Revert "stop component transform when skineditor is hidden"
...
This reverts commit 48ffd6aeb5
.
2022-06-19 14:26:02 -04:00
Gabe Livengood
48ffd6aeb5
stop component transform when skineditor is hidden
2022-06-17 11:28:58 -04:00
Dan Balasescu
f8830c6850
Automated #nullable processing
2022-06-17 16:37:17 +09:00
Dean Herbert
e66ccfd980
Add back missing notification flow
2022-06-16 19:48:18 +09:00
Dean Herbert
72c5b9009d
Remove local realm
fields in manager classes
2022-06-16 18:56:53 +09:00
Dean Herbert
f3984d98e6
Remove RealmArchiveModelManager
from hierarchy
2022-06-16 18:53:13 +09:00
Dean Herbert
4d9e3d1982
Rename Score/Skin ModelManager
classes to Importer
for now
2022-06-16 18:11:50 +09:00
Dean Herbert
f23ddfe6cc
Move remaining realm classes out of Stores
namespace
2022-06-15 21:56:00 +09:00
Dean Herbert
88d5e074a8
Rename lowPriority
to batchImport
2022-06-15 00:46:00 +09:00
Dean Herbert
f11fe54385
Remove custom hash function flow
2022-06-15 00:42:30 +09:00
Dean Herbert
7affef75b0
Remove unused Import
method in SkinManager
2022-06-15 00:26:34 +09:00
Dean Herbert
9f599a5ab4
Remove unused lowPriority
flag from one Import
method
2022-06-14 19:52:30 +09:00
Dean Herbert
ca0765a932
Tidy up various delegation implementations
2022-06-14 19:46:59 +09:00
Dan Balasescu
561a932d17
Merge pull request #18587 from peppy/skin-editor-fix-sizing
...
Fix skin editor not accounting for aspect ratios in base-game sizing logic
2022-06-07 13:19:50 +09:00
Dan Balasescu
86b685f7e4
Merge pull request #18589 from peppy/skin-bool-parsin
...
Change `skin.ini` boolean parsing to match osu!stable
2022-06-07 10:11:07 +09:00
Dean Herbert
46eba86ad1
Remove unintended left-over invalidation code
2022-06-07 09:29:30 +09:00
Dean Herbert
3862681d94
Change skin.ini
boolean parsing to match osu!stable
...
Closes https://github.com/ppy/osu/issues/18579 .
2022-06-06 19:43:09 +09:00
Dean Herbert
a8764b67e1
Add padding and avoid using invalidation (triggers too often when toolbar is being toggled)
2022-06-06 18:28:56 +09:00
Dean Herbert
28c9c61f71
Fix potential null reference in skin editor if target screen is null (during exit)
...
```csharp
[runtime] 2022-06-06 09:24:31 [verbose]: Host execution state changed to
Stopping
[runtime] 2022-06-06 09:24:31 [error]: An unhandled error has occurred.
[runtime] 2022-06-06 09:24:31 [error]: System.NullReferenceException:
Object reference not set to an instance of an object.
[runtime] 2022-06-06 09:24:31 [error]: at
osu.Game.Skinning.Editor.SkinEditorOverlay.setTarget(OsuScreen target)
in
/Users/dean/Projects/osu/osu.Game/Skinning/Editor/SkinEditorOverlay.cs:line
173
[runtime] 2022-06-06 09:24:31 [error]: at
osu.Framework.Threading.ScheduledDelegate.RunTaskInternal()
[runtime] 2022-06-06 09:24:31 [error]: at
osu.Framework.Threading.Scheduler.Update()
[runtime] 2022-06-06 09:24:31 [error]: at
osu.Framework.Graphics.Drawable.UpdateSubTree()
[runtime] 2022-06-06 09:24:31 [error]: at
osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
[runtime] 2022-06-06 09:24:31 [error]: at
osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
[runtime] 2022-06-06 09:24:31 [error]: at
osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
[runtime] 2022-06-06 09:24:31 [error]: at
osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
```
2022-06-06 18:27:54 +09:00
Dean Herbert
003a3de270
Adjust transitions to look better
2022-06-06 18:06:46 +09:00
Dean Herbert
cd0e0fe70f
Fix skin editor not accounting for aspect ratios in base-game sizing logic
2022-06-06 18:02:42 +09:00
Salman Ahmed
045e044637
Expose LegacySkinTransformer
's underlying skin for pattern-matching
2022-06-04 01:14:42 +03:00
Bartłomiej Dach
9ae019eb39
Move ISamplePlaybackDisabler
to more general namespace
2022-05-08 10:38:58 +02:00
Dean Herbert
ee99b94940
Fix return condition from EnsureMutableSkin
not accounting for "failed" imports
2022-04-29 13:46:18 +09:00
Dean Herbert
aabe586578
Add return value to EnsureMutableSkin
to understand whether a new skin was made
2022-04-28 14:09:30 +09:00
Dean Herbert
ed894d6428
Merge pull request #17941 from frenzibyte/remove-legacy-skin-fallback
...
Handle all legacy skin component types explicitly and remove texture fallback
2022-04-25 21:55:05 +09:00
Dean Herbert
d2780c2c50
Add a touch more detail to the unsupported skin component exception
2022-04-25 19:06:47 +09:00
Salman Ahmed
0ecda46d93
Deselect mods incompatible with "Autoplay" when entering gameplay via scene library
2022-04-23 23:16:33 +03:00
Salman Ahmed
4bf11df57c
Change SpriteComponent
accessibility to internal
2022-04-23 19:11:54 +03:00
Salman Ahmed
61078910a6
Handle all skin component types explicitly
2022-04-23 03:34:05 +03:00
Salman Ahmed
69e2e30971
Remove legacy skin component fallback lookup
...
Has always been a source of hiding actual issues like in https://github.com/ppy/osu/issues/17745 (`sliderfollowcircle` looked up from fallback because there's no transformer), and https://github.com/ppy/osu/issues/17934 (because there's a texture `ok` and that matches the component name `HitResult.Ok`).
2022-04-23 01:06:36 +03:00
Salman Ahmed
56358ef19e
Fix legacy skin hit animation lookup falling back to LookupName
2022-04-23 00:35:45 +03:00
Andrei Zavatski
414408140e
Improve AnchorOriginVisualiser
2022-04-21 10:16:52 +03:00
Dean Herbert
2202863e1a
Split out IPerformFromScreenRunner
to allow for easier testing
2022-04-18 17:49:28 +09:00
Dean Herbert
82939b0556
Fix skins getting duplicated when importing after export
...
Closes #17614 .
2022-04-12 00:29:19 +09:00
Bartłomiej Dach
8175741a6c
Merge branch 'master' into fix-storyboard-fallback-animation-frame-count-weirdness
2022-04-07 21:49:32 +02:00
Bartłomiej Dach
3016ce7817
Merge branch 'master' into bindable-safety-skin-editor
2022-04-07 20:59:44 +02:00
Dean Herbert
11b4c5ca87
Fix potential null ref if UpdateTargetScreen
is called too early
2022-04-07 23:42:42 +09:00
Salman Ahmed
fb9fe4213d
Fix skin texture lookups not handling paths with extensions
2022-04-07 15:07:30 +03:00
Dean Herbert
a4d3afd06d
Fix multiple issues with bindable safety in SkinEditor
components
2022-04-07 19:12:12 +09:00
Dean Herbert
93bdca5211
Split out GetTextures
helper function for LegacySkin
s
2022-04-07 17:28:48 +09:00
Dean Herbert
205edb65a2
Fix filename lookups on LegacySkin
s going awry when extension is specified
...
Due to the logic present to handle `@2x` fallback, the extension was
potentially being added at the wrong point in the filename. This change
ensures that the lookup filenames are always correct.
Closes https://github.com/ppy/osu/issues/17690 .
2022-04-07 14:16:19 +09:00
Dan Balasescu
7623f3b90b
Merge branch 'master' into skin-editor-import-at-cursor
2022-04-05 17:39:11 +09:00
Dan Balasescu
2b59f76b2d
Merge pull request #17596 from peppy/skin-editor-sprites
...
Allow importing sprites into a skin via drag-and-drop
2022-04-05 17:38:58 +09:00
Dan Balasescu
2ec15a1ebe
Fix lookup through transformers
2022-04-05 16:47:15 +09:00
Bartłomiej Dach
f73062a0d6
Revert "Remove nullable on RealmBackedResourceStore
realm parameter"
...
This reverts commit 09e15f5496
.
2022-04-04 22:22:55 +02:00
Dean Herbert
5f358a04e9
Return a valid "lighting" response from DefaultSkin
...
This is temporary to allow the new sprite lookup flow to potentially be
merged before hit lighting skinnability is addressed.
2022-04-04 20:40:20 +09:00
Dean Herbert
8185020f12
Improve the visual of the missing sprite sprite
2022-04-04 20:35:48 +09:00
Dean Herbert
de30a42558
Add region
for import methods and move Dispose
to end of time
2022-04-04 20:30:14 +09:00
Dean Herbert
dac5dfde8f
Remove unnecessary LazyThreadSafetyMode
specification
2022-04-04 20:28:43 +09:00
Dean Herbert
300feadf6a
Update SkinnableSprite
to match more broad usage
2022-04-04 20:27:46 +09:00
Dean Herbert
09e15f5496
Remove nullable on RealmBackedResourceStore
realm parameter
2022-04-04 20:27:03 +09:00
Dan Balasescu
6776c37bbc
Merge pull request #17592 from peppy/skin-mutation-better-naming
...
Fix automatically created "(modified)" skins getting conflicting names
2022-04-01 21:25:10 +09:00
Dean Herbert
43d03f2825
Put ToArray
call in correct place in brackets
2022-04-01 19:30:16 +09:00
Dean Herbert
01681ee874
Add missing ToArray
call
...
Not sure where this went, was there in my original commit.
2022-04-01 16:19:02 +09:00
Dean Herbert
f0821ce1fc
Import new skin editor sprites to the cursor location
2022-04-01 16:16:49 +09:00
Dean Herbert
6afed5e865
Fix new SettingsItem
attribute not playing well with non-Drawable
s
2022-04-01 16:01:33 +09:00
Dean Herbert
bfd3406f5f
Ensure that file is imported and caches are invalidated before placing new sprites
2022-04-01 16:01:33 +09:00
Dean Herbert
314ad63c6e
Simplify available file lookup and include file extension
2022-04-01 16:01:33 +09:00
Dean Herbert
2b7105ac4f
Add a default sprite representation to allow better placeholder display in skin editor toolbox
2022-04-01 16:01:33 +09:00
Dean Herbert
52eeaffce3
Limit lookup resources to images
2022-04-01 16:01:33 +09:00
Dean Herbert
d1be229d74
Combine SkinSprite
into SkinnableSprite
2022-04-01 16:01:33 +09:00
Dean Herbert
762de3cc97
Replace invalidation logic with local realm notification subscription
2022-04-01 16:01:33 +09:00
Dean Herbert
9c3dad9fbf
Add proof of concept flow to ensure RealmBackedResourceStore
is invalidated on realm file changes
...
I'm not at all happy with this, but it does work so let's go with it for
now.
2022-04-01 16:01:33 +09:00
Dean Herbert
66f5eae530
Hook up a dropdown to show all available sprites for the current skin
2022-04-01 15:01:43 +09:00
Dean Herbert
fca9faac9b
Add SkinnableSprite
for arbitrary sprite additions
2022-04-01 14:36:36 +09:00
Dean Herbert
3a16483214
Add prioritised user lookups for default skin
...
This allows user resources to be consumed before falling back to the
game bundled assets.
2022-04-01 14:36:36 +09:00
Dean Herbert
01829cf2d8
Move SkinnableInfo
error handling to lower level
...
Handling was recently added to handle the usage in
`Skin.GetDrawableCompoent`, but it turns out this is also required for
`DrawableExtensions.ApplySkinnableInfo` which can throw in a similar
fashion.
Found while working on sprite support for the editor, where this becomes
an actual issue (ie. switching to a branch where the new sprite support
is not present can cause unexpected crashes).
2022-04-01 14:30:04 +09:00
Dean Herbert
69d4f86122
Fix automatically created "(modified)" skins getting conflicting names
...
Applies the already tested and proven method that is used in the editor
to the mutable skin creation flow.
2022-04-01 14:11:55 +09:00
Bartłomiej Dach
9621a7f9cb
Merge branch 'master' into fix-autoplay-mod-user-id
2022-03-30 21:41:45 +02:00
Dean Herbert
ea9495eb74
Update all existing calls to extension method with correct fallback handling
2022-03-29 16:51:30 +09:00
Dean Herbert
b5834dabdb
Fix skin editor not exiting correctly when using the menu
...
Closes https://github.com/ppy/osu/issues/17489 .
2022-03-28 20:43:26 +09:00
Dan Balasescu
6c172bac3c
Merge pull request #17448 from peppy/fix-skin-component-crash-on-instantiation-failure
...
Avoid crashing if a skin component cannot be instantiated correctly
2022-03-25 19:41:52 +09:00
Dean Herbert
a0a3bba46e
Avoid crashing if a skin component cannot be instantiated correctly
2022-03-25 18:31:26 +09:00
Dan Balasescu
23c4f9910e
Apply notnull constraint
2022-03-25 15:54:01 +09:00
Dan Balasescu
2d8d177807
Merge branch 'master' into skin-nullable
2022-03-25 15:36:21 +09:00
Dean Herbert
e243a7c55d
Reword storage
param xmldoc to use stronger and better defined langauge
2022-03-24 12:45:11 +09:00
Dean Herbert
0cd29a73b9
Fix typo in xmldocs
2022-03-24 12:39:47 +09:00
Dean Herbert
a4d17a915f
Fix incorrect HUD component fallback
...
Legacy skins should now always show the legacy hud components. The
conditional here is no longer valid as fallback lookups happen at a
*skin*-fallback level rather than internal *source*-fallback.
Put another way, `LegacyDefaultSkin` (with user customisations) should
still display the classic HUD components even if a font is not provided,
as that font will be available via the skin lookup hierarchy.
The TODO removed in this commit has been already resolved so this code
is no longer required.
2022-03-24 12:36:20 +09:00
Dean Herbert
7296bad294
Convert LegacyBeatmapSkin
to use nullable
2022-03-24 00:24:06 +09:00
Dean Herbert
194bf4fb05
Convert LegacySkin
to use nullable
2022-03-24 00:23:55 +09:00
Dean Herbert
3e020073c5
Convert Skin
to use nullable
2022-03-24 00:23:55 +09:00
Dean Herbert
05c7e09d79
Make Textures
and Samples
read-only
2022-03-24 00:02:38 +09:00
Dean Herbert
6542f974f2
Merge branch 'master' into skin-fuck
2022-03-23 15:30:22 +09:00
Dean Herbert
078288a616
Make "skin.ini" the default skin filename and remove redundant parameters
2022-03-23 15:05:01 +09:00
Dean Herbert
7a1909bf97
Change parameter order of LegacySkin
to put IStorageResourceProvider
first
...
The optional resource store should not be before the (basically)
required resource provider.
2022-03-23 15:02:04 +09:00
Dean Herbert
d0ea1739b4
Remove skin configuration stream logic as it is no longer required
2022-03-23 14:57:42 +09:00
Dean Herbert
9d3c6ade62
Remove unnecessary skin reading hack in DefaultLegacySkin
2022-03-23 14:57:42 +09:00
Dean Herbert
6c405f1dee
Remove storage
override from LegacyBeatmapSkin
2022-03-23 14:57:42 +09:00
Dean Herbert
e56d13d8be
Fix realm backed store not being initialised for some tests
2022-03-23 14:57:42 +09:00
Dean Herbert
00aea9bef0
Only use legacy resources lookup for protected (aka default) skin
2022-03-23 14:57:42 +09:00
Dean Herbert
3c38b14228
Documentation improvements
2022-03-23 14:57:42 +09:00
Dean Herbert
32e2cfb8ee
Leave realm resource store construction to base class
2022-03-23 14:57:42 +09:00
Dean Herbert
e1236e07ad
Fix extensions not being specified in time for realm file caching
2022-03-23 14:57:42 +09:00
Dean Herbert
a7f63fb034
Make providing a custom ResourceStore
to LegacyBeatmapSkin
optional (for tests only)
2022-03-23 14:57:42 +09:00
Dean Herbert
35d2f973a3
Prefer provided resource store over realm backed to keep tests working
2022-03-23 14:57:42 +09:00
Dean Herbert
b4d89b4e31
Replace duplicate LegacySkinResourceStore
class with RealmBackedResourceStore
2022-03-23 14:57:42 +09:00
Dean Herbert
5c4a74378d
Remove Textures
and Samples
initialisation to Skin
2022-03-23 14:57:42 +09:00