Commit Graph

142 Commits

Author SHA1 Message Date
c3a2f2c2a4 Expose default SkinManager providers for use in RulesetSkinProvidingContainer 2021-06-10 13:07:32 +03:00
0cf7c56e7e Add fallback lookup support for DefaultSkin 2021-06-09 18:51:42 +09:00
e0f568aa8f Merge branch 'legacy-skin-default-fallback' into fix-skin-sample-lookup 2021-06-08 15:19:52 +09:00
27e3de3ea3 Add TODO about beatmap skin fallback support 2021-06-08 12:12:14 +09:00
e7e9197f03 Fix FindProvider not correctly checking legacy default in SkinManager 2021-06-08 00:42:50 +09:00
d26c9a66c2 Merge branch 'legacy-skin-default-fallback' into fix-skin-sample-lookup 2021-06-07 12:01:19 +09:00
b87a5956dd Add fallback logic to SkinManager 2021-06-06 12:17:55 +09:00
39f99bf785 Move FindProvider to ISkinSource 2021-06-06 12:17:32 +09:00
00b3eea840 Merge branch 'legacy-skin-default-fallback' into fix-skin-sample-lookup 2021-05-31 21:39:04 +09:00
3ff9f9c89d Make FindProvider non-default 2021-05-31 21:29:47 +09:00
65709ec7d7 Move leagcy resource store construction local to DefaultLegacySkin 2021-05-31 19:14:49 +09:00
b16d10bd95 Provide game-wide resources via IStorageResourceProvider 2021-05-31 18:57:47 +09:00
70a844ac10 Remove allowFallback parameters completely 2021-05-27 14:50:42 +09:00
4fd89faaa4 Fix default skin not having resources or providing samples 2021-05-27 14:09:01 +09:00
0959e7156a Remove outdated TODO 2021-05-13 17:22:05 +09:00
cdcd31b546 Replace ISkinSerialisable with IsEditable property 2021-05-13 17:03:17 +09:00
19223ba013 Remove left-over debug logging 2021-05-13 16:42:13 +09:00
8b9ac86d4b Merge branch 'master' into skin-serialisation 2021-05-13 12:35:06 +09:00
1b579dd838 Extract invariant instantiation info extension method 2021-05-12 23:23:51 +02:00
77e422409c Add SkinInfo.InstantiationInfo to allow creating different skin types 2021-05-11 23:37:06 +09:00
a7e83aacfb Ensure default skins are copied before modifying 2021-05-11 18:39:15 +09:00
a67cead0b3 Add SkinInfo.InstantiationInfo to allow creating different skin types 2021-05-11 18:39:15 +09:00
b248b2e5e3 Hook up full save/load flow 2021-05-11 18:39:14 +09:00
0324bfa857 Change checks back to Contains 2021-03-25 14:14:38 +09:00
fc5719e445 Fix SkinManager not handling extensions casing comparsion properly 2021-03-24 21:31:53 +03:00
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
f59327cc3e Merge branch 'master' into fix-unsafe-skinnable-sample-play 2021-03-19 20:29:44 +09:00
9491e6394a Include the bundled skins when selecting a random skin 2021-03-19 15:46:43 +09:00
aec859b4d1 Merge branch 'master' into fix-unsafe-skinnable-sample-play 2021-03-18 19:51:46 +01:00
2bdffd1004 Move skin requery logic into extension methods 2021-03-15 13:11:58 +09:00
0a1e325fc7 Extract requerying of navigational properties from DbContext 2021-03-14 19:34:53 +03:00
47b80d2474 Workaround InvalidOperation exceptions 2021-03-11 20:51:54 +03:00
b1cd01ceb8 Apply ConfigureAwait changes to game side 2021-03-08 14:36:35 +09:00
00574a5288 Use ISample everywhere in Skin GetSample lookup path 2021-02-18 18:32:28 +09:00
de9d075f94 Initial sample + samplechannel rework 2021-01-19 17:11:40 +09:00
10c2745682 Add region specifications around implicit interface implementations 2020-12-22 12:01:09 +09:00
a5bcf1dc20 Expose resources to skin via interface (and share common pieces with beatmap) 2020-12-21 15:18:52 +09:00
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
8d38d9cc93 Add hotkey to select random skin 2020-11-11 13:05:03 +09:00
a5e13e4d2c Merge branch 'master' into shuffle-skin 2020-11-11 11:34:48 +09:00
e89c5c3b3c Add dynamic compile exceptions to fix skin test scenes 2020-10-16 17:08:46 +09:00
50eca202f4 User IEnumerable for HandledExtensions 2020-10-02 16:17:10 +09:00
1884e0167b Eagerly populate skin metadata to allow usage in hashing computation 2020-09-14 23:31:03 +09:00
91d37e0459 Fix typo in comment 2020-09-14 20:17:00 +09:00
ef77658311 Add coverage of case where skin.ini doesn't specify name/author 2020-09-11 16:29:14 +09:00
15b533f2a4 Hash skins based on name, not skin.ini contents
It is feasible that a user may be changing the contents of skin.ini
without changing the skin name / author. Such changes should not create
a new skin if already imported.
2020-09-11 16:20:54 +09:00
9f7750e615 Add texture wrapping support to skins 2020-07-17 16:54:30 +09:00
052ad79fc6 Convert dangerous events to IBindables 2020-05-19 16:44:22 +09:00
dcfa98414f Use ??=. 2019-11-12 19:56:51 +08:00
bebc3309ce Refactor skin configuration to be infinitely extensible 2019-09-03 17:57:34 +09:00