1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-15 12:42:54 +08:00
Commit Graph

696 Commits

Author SHA1 Message Date
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
Dean Herbert
8706b51b77
Merge pull request #10717 from smoogipoo/dho-apply 2020-11-11 10:54:24 +09:00
Morilli
7b0e387dfc apply different offset based on whether the marker is newStyle or not 2020-11-09 08:20:19 +01:00
Morilli
490fbd1dd8 Fix ki* textures having an incorrect vertical position 2020-11-09 05:54:48 +01:00
smoogipoo
248d342a2f Initial Apply()/FreeAfterUse() DHO implementation 2020-11-06 23:02:37 +09:00
smoogipoo
2bef9312d9 Make SkinReloadableDrawable poolable 2020-11-06 22:15:06 +09:00
Dean Herbert
414daab1dc Fix paused samples potentially getting stuck in a playing state in rapid toggling
Closes #10693. Should be obvious why.
2020-11-05 16:14:23 +09:00
Dean Herbert
bc69ed3870 Simplify sample lookup 2020-10-30 22:33:27 +09:00
Dean Herbert
b906736b85 Remove redundant initialisation 2020-10-30 12:28:40 +09:00
Dean Herbert
d319b27b3d Run sample lookup logic through getFallbackNames 2020-10-30 11:59:41 +09:00
Dean Herbert
0b28cca7e6 Don't force Gameplay prefix on all skin sample lookups 2020-10-30 11:59:40 +09:00
Dean Herbert
39cf27637e Update to use virtual methods instead of reconstructing TextBuilder 2020-10-19 14:59:03 +09:00
Dean Herbert
cdb649476b Allow legacy text to display fixed width correctly 2020-10-19 14:33:53 +09:00
Bartłomiej Dach
a5b0307cfb Apply same fix to legacy accuracy counter 2020-10-17 15:39:26 +02:00
Bartłomiej Dach
0acc86f757 Split line for readability 2020-10-17 15:39:25 +02:00
unknown
bba9a0b2fe set sprite text anchor and origin to top right 2020-10-17 00:25:16 +08:00
Dan Balasescu
dff2ba6e5d
Merge pull request #10531 from peppy/fix-accuracy-scale
Adjust accuracy display to match stable
2020-10-16 23:52:30 +09:00
smoogipoo
dfbc0965e4 Merge branch 'master' into peppy/skinnable-health-display 2020-10-16 23:17:17 +09:00
Dean Herbert
e87f515a4f
Merge pull request #10522 from Morilli/legacyskin-fixes
Add support for ScorePrefix and ScoreOverlap values in legacy skins
2020-10-16 20:54:03 +09:00
Berkan Diler
fe3a23750c Use char overloads for string methods 2020-10-16 11:52:29 +02:00
Dean Herbert
2ba8bc45fd Also add slight adjustment to score display 2020-10-16 18:37:24 +09:00
Dean Herbert
cbaad4eb56 Adjust accuracy display to match stable 2020-10-16 18:34:14 +09:00
Dean Herbert
a774de2270 Also add support in LegacyComboCounter 2020-10-16 17:52:22 +09:00
Dean Herbert
24b0a1b84b Switch to direct casts (we can be sure LegacySpriteText is present at this point) 2020-10-16 17:40:07 +09:00
Dean Herbert
3ce6d1fea1 Remove unnecessary AccuracyText enum
All elements use "score" regardless.
2020-10-16 17:36:54 +09:00
Dean Herbert
e9c4b67cf4 Inline variable 2020-10-16 17:35:35 +09:00
Dean Herbert
05f1017c28 Fix lookup check not being updated to use prefix 2020-10-16 17:35:21 +09:00
Dean Herbert
a1892aa0a7 Only additive flash explosions over the epic cutoff 2020-10-16 17:25:55 +09:00
Dean Herbert
9572260e6d Add bulge and explode support 2020-10-16 17:09:00 +09:00
Dean Herbert
8104bd0f74 Add fill colour changes 2020-10-16 17:08:46 +09:00
Dean Herbert
5803c72b4c Add support for old marker style danger textures 2020-10-16 17:08:46 +09:00
Dean Herbert
f0b15813e2 Add support for both legacy styles 2020-10-16 17:08:46 +09:00
Dean Herbert
6d3a106a86 Simplify texture lookups 2020-10-16 17:08:46 +09:00
Dean Herbert
f28bcabae7 Avoid transforms per hp change 2020-10-16 17:08:46 +09:00
Dean Herbert
5be9e30cd0 Add legacy implementation 2020-10-16 17:08:46 +09:00
Dean Herbert
e89c5c3b3c Add dynamic compile exceptions to fix skin test scenes 2020-10-16 17:08:46 +09:00
Dean Herbert
c0a1f2158c Add basic component structure for skinnable health displays 2020-10-16 17:08:46 +09:00
Morilli
df1db8611c move skin-specific config retrieval to GetDrawableComponent 2020-10-16 08:36:20 +02:00
Morilli
085d8d0ecb Add support for ScorePrefix and ScoreOverlap values in legacy skins 2020-10-16 06:16:20 +02:00
Dean Herbert
88ffcb9234 Update EndsWith usages 2020-10-16 12:58:34 +09:00
Dean Herbert
cc41845f56 Add missing string function ordinal specifications 2020-10-16 12:49:31 +09:00
Dean Herbert
ca74cf824c Add padding 2020-10-15 18:24:28 +09:00
Dean Herbert
b31a3fbabb Add test 2020-10-15 18:11:30 +09:00
Dean Herbert
4f6dd15869 Add legacy font lookup support for comma/percent 2020-10-15 17:56:37 +09:00
Dean Herbert
254eba9008 Add and consume skinnable accuracy counter 2020-10-15 17:53:16 +09:00
Dean Herbert
90ff8ff050 Merge branch 'skinnable-combo-counter' into skinnable-score-display 2020-10-15 17:52:06 +09:00
Dean Herbert
37e9f331ad Simplify score font lookup 2020-10-15 17:49:55 +09:00
Dean Herbert
950c47287c Fix positioning of score display in HUD overlay 2020-10-15 17:14:42 +09:00
Dean Herbert
e1da64398e Add and consume skinnable score counter 2020-10-15 17:14:42 +09:00
Dean Herbert
9bb8a43bce Combine LegacyComboCounter and ComboCounter classes 2020-10-14 19:16:34 +09:00
Dean Herbert
fbbea48c8c Add score text skinnability 2020-10-14 19:16:34 +09:00
Dean Herbert
2fce064e32 Add basic legacy combo counter and updating positioning logic 2020-10-14 19:16:34 +09:00
Dean Herbert
6a6718ebab Allow bypassing origin/anchor setting of skinnable components
It makes little sense to set these when using RelativeSizeAxes.Both
2020-10-14 19:16:34 +09:00
Dean Herbert
60603d2918 Add skin components and interfaces 2020-10-14 19:16:34 +09:00
Dean Herbert
2ed43c14f8
Merge branch 'master' into editor-file-drop-support 2020-10-05 17:48:06 +09:00
Dean Herbert
758088672c Don't stop non-looping samples immediately when pausing 2020-10-05 15:07:46 +09:00
Dean Herbert
50eca202f4 User IEnumerable for HandledExtensions 2020-10-02 16:17:10 +09:00
Dan Balasescu
df07ca445f
Merge branch 'master' into legacy-SpinnerNoBlink 2020-10-01 20:34:23 +09:00
Dan Balasescu
3a81602d0c
Merge pull request #10286 from peppy/fix-hitobject-sample-stuck-on-future-seek
Fix HitObject samples getting stuck in a playing state on seeking far into the future
2020-10-01 18:08:17 +09:00
Dean Herbert
482c23901b Check RequestedPlaying state before allowing scheduled resume of looped sample 2020-10-01 16:54:58 +09:00
smoogipoo
7890319802 Merge branch 'master' into adjust-hit-result-types 2020-10-01 16:19:07 +09:00
Dean Herbert
4b70fe8585 Merge branch 'fix-storyboard-sample-pausing' into fix-hitobject-sample-stuck-on-future-seek 2020-09-30 22:46:09 +09:00
Dean Herbert
367b35bb10 Merge branch 'master' into fix-storyboard-sample-pausing 2020-09-30 22:42:26 +09:00
Dean Herbert
414c40d298 Reverse inheritance order of SkinnableSound's pause logic 2020-09-30 15:45:14 +09:00
smoogipoo
f439c1afbc Make osu/taiko/catch use Ok+Great 2020-09-29 17:16:55 +09:00
Dean Herbert
5d1c377379 Fix HitObject samples getting stuck in a playing state on seeking far into the future 2020-09-29 15:07:55 +09:00
Dean Herbert
136843c8e4 Make DrawableStoryboardSample a SkinnableSound
Allows sharing pause logic with gameplay samples.
2020-09-29 14:25:39 +09:00
Dean Herbert
74e74e1c31 Fix pause loop sound not working because paused 2020-09-29 14:20:41 +09:00
Dean Herbert
d6f3beffb6 Use existing bindable flow instead 2020-09-29 12:50:17 +09:00
Max Hübner
54852991f3 Move SpinnerNoBlink to OsuSkinConfiguration 2020-09-28 12:24:30 +02:00
Max Hübner
e7d0456454 Add SpinnerNoBlink to LegacySettings 2020-09-26 16:25:17 +02:00
Dean Herbert
c38cd50723 Fix editor not using beatmap combo colours initially on load 2020-09-23 13:16:50 +09:00
Dean Herbert
0e01ac2d90
Merge branch 'master' into fix-new-samples-starting-while-gameplay-paused 2020-09-22 16:16:54 +09:00
Dean Herbert
1e09d8fd1a
Merge branch 'master' into catch-combo-counter 2020-09-21 17:53:00 +09:00
Salman Ahmed
735b6b0d6f Remove a pointless portion of the inline comment 2020-09-19 05:54:40 +03:00
Salman Ahmed
6aa84424e4 Merge remote-tracking branch 'upstream/master' into fix-new-samples-starting-while-gameplay-paused 2020-09-19 05:53:04 +03:00
Salman Ahmed
35c7677d0a Fix gameplay samples potentially start playing while player is paused 2020-09-16 01:59:07 +03:00
Dan Balasescu
0761aab42f
Merge branch 'master' into catch-combo-counter 2020-09-15 17:20:31 +09:00
Dean Herbert
1884e0167b Eagerly populate skin metadata to allow usage in hashing computation 2020-09-14 23:31:03 +09:00
Dean Herbert
91d37e0459 Fix typo in comment 2020-09-14 20:17:00 +09:00
Bartłomiej Dach
3db0e7cd75 Generalise LegacyRollingCounter 2020-09-12 22:40:32 +02:00
Dean Herbert
ef77658311 Add coverage of case where skin.ini doesn't specify name/author 2020-09-11 16:29:14 +09:00
Dean Herbert
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
Salman Ahmed
a0a4501008 Merge remote-tracking branch 'upstream/master' into catch-combo-counter 2020-09-01 20:17:25 +03:00
Craftplacer
9835d98942 Merge remote-tracking branch 'upstream/master' into combo-colors 2020-09-01 17:39:35 +02:00
Craftplacer
9b3a48ee5e
Revert "Add marker interface for beatmap skins" 2020-08-31 18:29:46 +02:00
Craftplacer
3cc169c933 Remove set from properties in SkinConfiguration classes
I don't get why this wasn't resolved in the first place when this file was originally written.

*sigh*
2020-08-31 17:48:36 +02:00
Craftplacer
a290f7eeec Revert left-over type change in SkinConfiguration 2020-08-31 17:34:18 +02:00
Craftplacer
eafa97af17 Revert changes done to SkinConfiguration and IHasCustomColours 2020-08-31 17:23:42 +02:00
Craftplacer
7e57af3ca4 Return true if both ComboColours are null 2020-08-30 16:07:46 +02:00
Craftplacer
08321d8dec Safe checking against ComboColours instead of CustomColours 2020-08-30 11:37:43 +02:00
Craftplacer
00b68b050c Merge remote-tracking branch 'upstream/master' into combo-colors 2020-08-30 10:16:38 +02:00
Dean Herbert
814655770d
Merge branch 'master' into beatmapskin-interface 2020-08-30 12:22:55 +09:00
Dean Herbert
cd0a73883d
Merge pull request #9945 from smoogipoo/skin-colour-fix-2
Exactly reproduce osu!stable skin colour alphas
2020-08-29 20:06:26 +09:00