Commit Graph

1389 Commits

Author SHA1 Message Date
cd0e0fe70f Fix skin editor not accounting for aspect ratios in base-game sizing logic 2022-06-06 18:02:42 +09:00
045e044637 Expose LegacySkinTransformer's underlying skin for pattern-matching 2022-06-04 01:14:42 +03:00
9ae019eb39 Move ISamplePlaybackDisabler to more general namespace 2022-05-08 10:38:58 +02:00
ee99b94940 Fix return condition from EnsureMutableSkin not accounting for "failed" imports 2022-04-29 13:46:18 +09:00
aabe586578 Add return value to EnsureMutableSkin to understand whether a new skin was made 2022-04-28 14:09:30 +09:00
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
d2780c2c50 Add a touch more detail to the unsupported skin component exception 2022-04-25 19:06:47 +09:00
0ecda46d93 Deselect mods incompatible with "Autoplay" when entering gameplay via scene library 2022-04-23 23:16:33 +03:00
4bf11df57c Change SpriteComponent accessibility to internal 2022-04-23 19:11:54 +03:00
61078910a6 Handle all skin component types explicitly 2022-04-23 03:34:05 +03:00
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
56358ef19e Fix legacy skin hit animation lookup falling back to LookupName 2022-04-23 00:35:45 +03:00
414408140e Improve AnchorOriginVisualiser 2022-04-21 10:16:52 +03:00
2202863e1a Split out IPerformFromScreenRunner to allow for easier testing 2022-04-18 17:49:28 +09:00
82939b0556 Fix skins getting duplicated when importing after export
Closes #17614.
2022-04-12 00:29:19 +09:00
8175741a6c Merge branch 'master' into fix-storyboard-fallback-animation-frame-count-weirdness 2022-04-07 21:49:32 +02:00
3016ce7817 Merge branch 'master' into bindable-safety-skin-editor 2022-04-07 20:59:44 +02:00
11b4c5ca87 Fix potential null ref if UpdateTargetScreen is called too early 2022-04-07 23:42:42 +09:00
fb9fe4213d Fix skin texture lookups not handling paths with extensions 2022-04-07 15:07:30 +03:00
a4d3afd06d Fix multiple issues with bindable safety in SkinEditor components 2022-04-07 19:12:12 +09:00
93bdca5211 Split out GetTextures helper function for LegacySkins 2022-04-07 17:28:48 +09:00
205edb65a2 Fix filename lookups on LegacySkins 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
7623f3b90b Merge branch 'master' into skin-editor-import-at-cursor 2022-04-05 17:39:11 +09:00
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
2ec15a1ebe Fix lookup through transformers 2022-04-05 16:47:15 +09:00
f73062a0d6 Revert "Remove nullable on RealmBackedResourceStore realm parameter"
This reverts commit 09e15f5496.
2022-04-04 22:22:55 +02:00
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
8185020f12 Improve the visual of the missing sprite sprite 2022-04-04 20:35:48 +09:00
de30a42558 Add region for import methods and move Dispose to end of time 2022-04-04 20:30:14 +09:00
dac5dfde8f Remove unnecessary LazyThreadSafetyMode specification 2022-04-04 20:28:43 +09:00
300feadf6a Update SkinnableSprite to match more broad usage 2022-04-04 20:27:46 +09:00
09e15f5496 Remove nullable on RealmBackedResourceStore realm parameter 2022-04-04 20:27:03 +09:00
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
43d03f2825 Put ToArray call in correct place in brackets 2022-04-01 19:30:16 +09:00
01681ee874 Add missing ToArray call
Not sure where this went, was there in my original commit.
2022-04-01 16:19:02 +09:00
f0821ce1fc Import new skin editor sprites to the cursor location 2022-04-01 16:16:49 +09:00
6afed5e865 Fix new SettingsItem attribute not playing well with non-Drawables 2022-04-01 16:01:33 +09:00
bfd3406f5f Ensure that file is imported and caches are invalidated before placing new sprites 2022-04-01 16:01:33 +09:00
314ad63c6e Simplify available file lookup and include file extension 2022-04-01 16:01:33 +09:00
2b7105ac4f Add a default sprite representation to allow better placeholder display in skin editor toolbox 2022-04-01 16:01:33 +09:00
52eeaffce3 Limit lookup resources to images 2022-04-01 16:01:33 +09:00
d1be229d74 Combine SkinSprite into SkinnableSprite 2022-04-01 16:01:33 +09:00
762de3cc97 Replace invalidation logic with local realm notification subscription 2022-04-01 16:01:33 +09:00
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
66f5eae530 Hook up a dropdown to show all available sprites for the current skin 2022-04-01 15:01:43 +09:00
fca9faac9b Add SkinnableSprite for arbitrary sprite additions 2022-04-01 14:36:36 +09:00
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
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
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
9621a7f9cb Merge branch 'master' into fix-autoplay-mod-user-id 2022-03-30 21:41:45 +02:00