Commit Graph

231 Commits

Author SHA1 Message Date
4a7d7c6ed9 Use MaxBy in all locations that can and update inspection level to match dotnet-build 2022-12-19 16:47:10 +09:00
192536643c Fix some more inspections 2022-12-16 20:21:19 +09:00
7bc8908ca9 Partial everything 2022-11-27 00:00:27 +09:00
fd88c92d5a Merge pull request #21144 from peppy/fix-storyboard-end-start-time
Fix incorrect handling of storyboard events with `end_time` before `start_time`
2022-11-10 22:53:45 +09:00
0b34340447 Fix sprites not displaying in storyboard if filename extension is missing in script 2022-11-08 14:34:28 +09:00
6085120dc5 Fix incorrect handling of storyboard events with end_time before start_time 2022-11-07 12:25:36 +09:00
28185178d6 Add support for weird storyboards which have backwards events
Closes https://github.com/ppy/osu/issues/20632.
Not adding test coverage because this is just weird.
2022-10-10 16:51:55 +09:00
835cae3087 Remove null conditional 2022-09-23 17:06:55 +03:00
4e9053b099 Fix crash when storyboard attempts to play at main menu 2022-09-23 20:10:57 +09:00
bbf906ee06 Remove unnecessary virtual spec 2022-09-12 14:20:48 +09:00
24138b65a7 Fix storyboard animations not starting their animation playback from the correct point in time 2022-09-12 14:05:16 +09:00
824e68dab3 Fix VectorScale set to 0 still showing some sprites in storyboard
This implementation was matching the [framework side implementation of
scale](16d1c2d335/osu.Framework/Graphics/Drawable.cs (L973-L976))
but I don't think it's required here.

I'm still not sure if the framework implementation is correct, but
removing it locally does seem to fix broken storyboard cases.

Closes https://github.com/ppy/osu/issues/20155.
2022-09-07 15:39:19 +09:00
a3de5f808e Fix typo in LoopStartTime addition 2022-09-06 17:46:03 +09:00
677708c5e4 Rewrite logic using a list 2022-09-06 16:58:51 +09:00
d667f46830 Refactor alpha check to not overwrite sourced overrides with values from later commands 2022-09-06 16:41:32 +09:00
bea42d2862 Handle earliest-alpha-start-time logic in StoryboardSprite itself 2022-09-06 16:16:58 +09:00
a5e57b083c Remove EarliestDisplayTime's input to CommandStartTime 2022-09-06 16:16:58 +09:00
c8764cb333 Move all usage of GameplayClock to IGameplayClock 2022-08-15 18:30:53 +09:00
ac99c1ad69 Migrate the majority of existing file lookups to use new extension methods 2022-08-10 16:01:16 +09:00
b4e55f7309 Apply IRenderer changes 2022-08-02 19:50:57 +09:00
31a447fda0 Update parameter discards 2022-06-24 21:26:19 +09:00
f71f6302fd Remove unnecessary null casts 2022-06-24 14:50:11 +09:00
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
f23ddfe6cc Move remaining realm classes out of Stores namespace 2022-06-15 21:56:00 +09:00
71c0216c55 Add null check guards to unsubscriptions in Dispose() 2022-04-07 21:37:42 +02:00
040afff670 Change DrawableStoryboardAnimation to derive from TextureAnimation 2022-04-07 17:35:59 +09:00
cbc4e5319d Fix DrawableStoryboardAnimation to handle skin fallback frame count similar to stable
Reasoning is explained in the inline comment (basically, stable doesn't
care what the user specifies as the frame count when falling back to
skin resources).

This change also removes on to two layers of drawables, which should be
a win in heavy storyboards.
2022-04-07 17:35:56 +09:00
a7e262627f Fix DrawableStoryboardAnimation not specifying sizing correctly
Usually this would be handled by `TextureAnimation`, but because we are
inheriting from `DrawableAnimation` here for reasons, we needed to
implement this ourselves. Follows the implementation in
`TextureAnimation`.
2022-04-07 15:18:55 +09:00
c1697c7621 Update DrawableStoryboardSprite to use helper method 2022-03-14 06:30:54 +03:00
740a72e16d Share origin adjustment logic between storyboard sprite and animation 2022-03-14 05:44:34 +03:00
9cf05080da Simplify conditionals to one XOR operations with comments 2022-03-14 04:40:35 +03:00
0b8c89bfa8 Fix drawable storyboard sprites not flipping origin on negative scale 2022-03-14 03:50:12 +03:00
c9d54834be Fix SkinnableSprites in storyboards not autosizing to their textures 2022-03-14 03:46:13 +03:00
c38126ba9d Make mods argument optional for storyboard construction 2022-03-04 12:05:02 +09:00
3630ab2db2 Remove unnecessary nullability of storyboard mods list 2022-03-03 00:09:12 +03:00
cbb8dc2891 Fix storyboard samples rate not adjusted from actual gameplay mods 2022-03-02 20:56:18 +03:00
e49da2948d Fix storyboard background replacement logic not working for beatmaps with multiple backgrounds
In the case where the background image of individual difficulties is
different, querying the beatmap *set*'s metadata as we were will cause
issues.

I haven't added test coverage for this but can if required. Can be
manually tested using https://osu.ppy.sh/beatmapsets/1595773#osu/3377474
(specifically the highest difficulty).

Closes https://github.com/ppy/osu/discussions/16873.
2022-02-18 16:24:19 +09:00
6eb2c28e41 Rename RealmContextFactory to RealmAccess 2022-01-24 20:38:07 +09:00
b2d09b7b10 Fix further warnings 2022-01-12 23:42:12 +09:00
eb70a1eeb7 Replace compatibility properties with direct references 2022-01-12 18:13:14 +09:00
167c399e8a Fix invalid DI resolution of RealmFileStore 2022-01-12 17:00:16 +09:00
00e3af3366 Update model manager and many related classes to get things compiling again 2022-01-12 17:00:00 +09:00
e6fdd0e969 Miscellaneous fixes that don't fit elsewhere 2022-01-12 16:39:36 +09:00
79dd9674fc Use longer form to read better
Using `l.StartTime` reads like a coding issue, even though if you go
down the call chain looks to be correct.
2021-12-14 17:41:09 +09:00
357a661379 Fix storyboard sprites sometimes starting too early 2021-12-14 13:13:12 +09:00
59e763467f Move StoragePath implementation to an extension method 2021-11-19 16:08:38 +09:00
7c2e79f911 Update all simple cases of switching to IWorkingBeatmap 2021-11-17 20:56:57 +09:00
b80c02b757 Fix crash on gameplay startup if beatmap has no background 2021-11-04 17:24:40 +09:00
d1e6d1cb98 Update some other missed incorrect null/empty usages 2021-11-04 14:50:43 +09:00
6944151486 Apply batch fixing of built-in types using var 2021-10-27 13:04:41 +09:00