Salman Ahmed
0c34e7bebb
Store layout version in SkinLayoutVersion
instead and refactor migration code
2024-07-01 08:30:37 +03:00
Salman Ahmed
fc2202e0cc
Fix migration logic overwriting existing components in ruleset targets
2024-06-25 05:54:56 +03:00
Salman Ahmed
78e0126f16
Migrate combo counter layouts in custom skins to correct target-ruleset pairs
2024-06-25 04:38:58 +03:00
Bartłomiej Dach
5fcea01c13
Merge branch 'master' into ruleset-specific-combo-counter
2024-06-04 15:44:11 +02:00
Jamie Taylor
ad842b60f5
Add support for Argon hitsounds
2024-03-08 21:43:18 +09:00
Dean Herbert
f2753ef7a2
Decrease size of pp display relative to accuracy
2024-03-08 09:41:38 +08:00
Salman Ahmed
0cbcfcecdc
Integrate "Argon" performance points counter with HUD layout
2024-03-05 03:58:43 +03:00
Salman Ahmed
eedb436389
Move combo counter to ruleset-specific HUD components target
2023-12-30 03:47:52 +03:00
Dean Herbert
73eda6c09c
Move non-matching default value to argon skin default speficiation instead
2023-11-16 14:18:49 +09:00
Dean Herbert
2264e1e249
Change default value and range of BoxElement
's corner radius to match other usages
2023-11-15 10:45:01 +09:00
Dean Herbert
a745642f76
Fix customised argon skins no longer loading due to incorrect resource store spec
2023-11-14 22:01:56 +09:00
Dean Herbert
469b9e2546
Increase size and adjust positioning of max combo display in argon skin
2023-11-12 17:28:15 +09:00
Bartłomiej Dach
b7972e3c84
Merge branch 'skin-size-editing' into gameplay-hud-redesign/counters
2023-11-11 20:16:14 +09:00
Dean Herbert
67312a2db9
Remove ArgonScoreWedge
and use ArgonWedgePiece
directly
2023-11-10 16:53:16 +09:00
Dean Herbert
60df2722ab
Rename RoundedLine
to BoxElement
and make more generically useful
2023-11-10 16:20:05 +09:00
Dean Herbert
99d9db5b76
Use a better default size for line
2023-11-10 15:53:05 +09:00
Dean Herbert
f31c1c9c79
Rename and move skinnable line component to a more commomn place
2023-11-10 15:53:05 +09:00
Salman Ahmed
07b7e13633
Place health display in front of the score wedge
2023-11-08 02:07:24 +03:00
Salman Ahmed
4de5454538
Bring back left-side line next to health display
...
Makes the score counter not look weird when it reaches 8 digits
2023-11-08 02:07:15 +03:00
Salman Ahmed
e6d3085353
Update accuracy counter design
2023-11-08 02:06:14 +03:00
Salman Ahmed
cbea2db4be
Support absolute-sized health bar and use it for default layout
2023-11-08 02:06:14 +03:00
Salman Ahmed
7c1c62ba8a
Remove argon combo wedge and update combo counter position
2023-11-07 01:59:36 +03:00
Salman Ahmed
4c7db4c262
Make score counter right-aligned
2023-11-07 01:59:36 +03:00
Salman Ahmed
754e05213c
Update argon score wedge design
2023-11-07 01:59:36 +03:00
Salman Ahmed
01e59d134a
Adjust health bar settings on default components initialiser to match new layout
2023-11-07 01:59:36 +03:00
Salman Ahmed
6c3169a0ed
Remove PP wedge and logic for gameplay layout
2023-11-05 01:56:54 +03:00
Salman Ahmed
1c844a155e
Remove health line detail
2023-11-05 01:55:54 +03:00
Salman Ahmed
07e7d533bf
Bake external scale factors into glyph scale
2023-10-26 10:01:27 +03:00
Salman Ahmed
e119e045e4
Update "Argon" skin components layout and use the new components
2023-10-26 09:13:09 +03:00
Salman Ahmed
8ed660d863
Remove incorrect logic
2023-10-23 01:58:25 +03:00
Salman Ahmed
12bb4b697c
Support retrieving textures in argon skin from game resources
2023-10-23 01:24:32 +03:00
Dean Herbert
3f2a00d90d
Add argon health display to default skin layout
2023-10-06 19:34:27 +09:00
Dean Herbert
6c95b88589
Add debug output for skin configuration lookups
...
We've struggle with debugging these over the years so I think this was
worth a couple of hours of work.
Example of osu! lookups:
```log
[runtime] 2023-09-06 08:38:30 [verbose]: BeatmapSkinProvidingContainer.GetConfig(lookup: SpinnerFrequencyModulate)
[runtime] 2023-09-06 08:38:30 [verbose]: |-SkinProvidingContainer+DisableableSkinSource{ skin: SkinTransformer{ Skin: LegacyBeatmapSkin{ Name: Vickeblanka - Lucky Ending (TV Size) (tears_) [Normal] } } }.GetConfig(lookup: SpinnerFrequencyModulate)
[runtime] 2023-09-06 08:38:30 [verbose]: |-RulesetSkinProvidingContainer.GetConfig(lookup: SpinnerFrequencyModulate)
[runtime] 2023-09-06 08:38:30 [verbose]: |-|-SkinProvidingContainer+DisableableSkinSource{ skin: SkinTransformer{ Skin: LegacySkin{ Name: Test Skin [test-skin] } } }.GetConfig(lookup: SpinnerFrequencyModulate)
[runtime] 2023-09-06 08:38:30 [verbose]: |-|-|-SkinTransformer{ Skin: LegacySkin{ Name: Test Skin [test-skin] } }.GetConfig(lookup: SpinnerFrequencyModulate)
[runtime] 2023-09-06 08:38:30 [verbose]: |-|-|-|-LegacySkin{ Name: Test Skin [test-skin] }.GetConfig(lookup: SpinnerFrequencyModulate) 🟢
[runtime] 2023-09-06 08:38:30 [verbose]: |-|-SkinProvidingContainer+DisableableSkinSource{ skin: SkinTransformer{ Skin: DefaultLegacySkin{ Name: osu! "classic" (2013) } } }.GetConfig(lookup: SpinnerFrequencyModulate)
[runtime] 2023-09-06 08:38:30 [verbose]: |-|-|-SkinTransformer{ Skin: DefaultLegacySkin{ Name: osu! "classic" (2013) } }.GetConfig(lookup: SpinnerFrequencyModulate)
[runtime] 2023-09-06 08:38:30 [verbose]: |-|-|-|-DefaultLegacySkin{ Name: osu! "classic" (2013) }.GetConfig(lookup: SpinnerFrequencyModulate) 🟢
[runtime] 2023-09-06 08:38:30 [verbose]: |-|-SkinProvidingContainer+DisableableSkinSource{ skin: osu.Game.Skinning.ResourceStoreBackedSkin }.GetConfig(lookup: SpinnerFrequencyModulate)
[runtime] 2023-09-06 08:38:30 [verbose]: |-|-|-osu.Game.Skinning.ResourceStoreBackedSkin.GetConfig(lookup: SpinnerFrequencyModulate) 🔴
[runtime] 2023-09-06 08:38:30 [verbose]: |-|-SkinProvidingContainer+DisableableSkinSource{ skin: TrianglesSkin{ Name: osu! "triangles" (2017) } }.GetConfig(lookup: SpinnerFrequencyModulate)
[runtime] 2023-09-06 08:38:30 [verbose]: |-|-|-TrianglesSkin{ Name: osu! "triangles" (2017) }.GetConfig(lookup: SpinnerFrequencyModulate) 🔴
[runtime] 2023-09-06 08:38:30 [verbose]:
[runtime] 2023-09-06 08:38:30 [verbose]: BeatmapSkinProvidingContainer.GetConfig(lookup: ScorePrefix)
[runtime] 2023-09-06 08:38:30 [verbose]: |-SkinProvidingContainer+DisableableSkinSource{ skin: SkinTransformer{ Skin: LegacyBeatmapSkin{ Name: Vickeblanka - Lucky Ending (TV Size) (tears_) [Normal] } } }.GetConfig(lookup: ScorePrefix)
[runtime] 2023-09-06 08:38:30 [verbose]: |-RulesetSkinProvidingContainer.GetConfig(lookup: ScorePrefix)
[runtime] 2023-09-06 08:38:30 [verbose]: |-|-SkinProvidingContainer+DisableableSkinSource{ skin: SkinTransformer{ Skin: LegacySkin{ Name: Test Skin [test-skin] } } }.GetConfig(lookup: ScorePrefix)
[runtime] 2023-09-06 08:38:30 [verbose]: |-|-|-SkinTransformer{ Skin: LegacySkin{ Name: Test Skin [test-skin] } }.GetConfig(lookup: ScorePrefix)
[runtime] 2023-09-06 08:38:30 [verbose]: |-|-|-|-LegacySkin{ Name: Test Skin [test-skin] }.GetConfig(lookup: ScorePrefix) 🟢
[runtime] 2023-09-06 08:38:30 [verbose]: |-|-SkinProvidingContainer+DisableableSkinSource{ skin: SkinTransformer{ Skin: DefaultLegacySkin{ Name: osu! "classic" (2013) } } }.GetConfig(lookup: ScorePrefix)
[runtime] 2023-09-06 08:38:30 [verbose]: |-|-|-SkinTransformer{ Skin: DefaultLegacySkin{ Name: osu! "classic" (2013) } }.GetConfig(lookup: ScorePrefix)
[runtime] 2023-09-06 08:38:30 [verbose]: |-|-|-|-DefaultLegacySkin{ Name: osu! "classic" (2013) }.GetConfig(lookup: ScorePrefix) 🟢
[runtime] 2023-09-06 08:38:30 [verbose]: |-|-SkinProvidingContainer+DisableableSkinSource{ skin: osu.Game.Skinning.ResourceStoreBackedSkin }.GetConfig(lookup: ScorePrefix)
[runtime] 2023-09-06 08:38:30 [verbose]: |-|-|-osu.Game.Skinning.ResourceStoreBackedSkin.GetConfig(lookup: ScorePrefix) 🔴
[runtime] 2023-09-06 08:38:30 [verbose]: |-|-SkinProvidingContainer+DisableableSkinSource{ skin: TrianglesSkin{ Name: osu! "triangles" (2017) } }.GetConfig(lookup: ScorePrefix)
[runtime] 2023-09-06 08:38:30 [verbose]: |-|-|-TrianglesSkin{ Name: osu! "triangles" (2017) }.GetConfig(lookup: ScorePrefix) 🔴
```
Example of osu!mania lookups:
```log
[runtime] 2023-09-06 08:28:34 [verbose]: |-RulesetSkinProvidingContainer.GetConfig(lookup: [ManiaSkinConfigurationLookup lookup:ColumnWidth col:0])
[runtime] 2023-09-06 08:28:34 [verbose]: |-|-SkinProvidingContainer+DisableableSkinSource{ skin: SkinTransformer{ Skin: LegacySkin{ Name: Test Skin [test-skin] } } }.GetConfig(lookup: [ManiaSkinConfigurationLookup lookup:ColumnWidth col:0])
[runtime] 2023-09-06 08:28:34 [verbose]: |-|-|-SkinTransformer{ Skin: LegacySkin{ Name: Test Skin [test-skin] } }.GetConfig(lookup: [LegacyManiaSkinConfigurationLookup lookup:ColumnWidth col:0 totalcols:4])
[runtime] 2023-09-06 08:28:34 [verbose]: |-|-|-|-LegacySkin{ Name: Test Skin [test-skin] }.GetConfig(lookup: [LegacyManiaSkinConfigurationLookup lookup:ColumnWidth col:0 totalcols:4]) 🔴
[runtime] 2023-09-06 08:28:34 [verbose]: |-|-SkinProvidingContainer+DisableableSkinSource{ skin: SkinTransformer{ Skin: DefaultLegacySkin{ Name: osu! "classic" (2013) } } }.GetConfig(lookup: [ManiaSkinConfigurationLookup lookup:ColumnWidth col:0])
[runtime] 2023-09-06 08:28:34 [verbose]: |-|-|-SkinTransformer{ Skin: DefaultLegacySkin{ Name: osu! "classic" (2013) } }.GetConfig(lookup: [LegacyManiaSkinConfigurationLookup lookup:ColumnWidth col:0 totalcols:4])
[runtime] 2023-09-06 08:28:34 [verbose]: |-|-|-|-DefaultLegacySkin{ Name: osu! "classic" (2013) }.GetConfig(lookup: [LegacyManiaSkinConfigurationLookup lookup:ColumnWidth col:0 totalcols:4]) 🟢
[runtime] 2023-09-06 08:28:34 [verbose]:
[runtime] 2023-09-06 08:28:34 [verbose]: BeatmapSkinProvidingContainer.GetConfig(lookup: [ManiaSkinConfigurationLookup lookup:ColumnSpacing col:0])
[runtime] 2023-09-06 08:28:34 [verbose]: |-SkinProvidingContainer+DisableableSkinSource{ skin: SkinTransformer{ Skin: LegacyBeatmapSkin{ Name: antiPLUR - Runengon (Raveille) [Easy] } } }.GetConfig(lookup: [ManiaSkinConfigurationLookup lookup:ColumnSpacing col:0])
[runtime] 2023-09-06 08:28:34 [verbose]: |-RulesetSkinProvidingContainer.GetConfig(lookup: [ManiaSkinConfigurationLookup lookup:ColumnSpacing col:0])
[runtime] 2023-09-06 08:28:34 [verbose]: |-|-SkinProvidingContainer+DisableableSkinSource{ skin: SkinTransformer{ Skin: LegacySkin{ Name: Test Skin [test-skin] } } }.GetConfig(lookup: [ManiaSkinConfigurationLookup lookup:ColumnSpacing col:0])
[runtime] 2023-09-06 08:28:34 [verbose]: |-|-|-SkinTransformer{ Skin: LegacySkin{ Name: Test Skin [test-skin] } }.GetConfig(lookup: [LegacyManiaSkinConfigurationLookup lookup:ColumnSpacing col:0 totalcols:4])
[runtime] 2023-09-06 08:28:34 [verbose]: |-|-|-|-LegacySkin{ Name: Test Skin [test-skin] }.GetConfig(lookup: [LegacyManiaSkinConfigurationLookup lookup:ColumnSpacing col:0 totalcols:4]) 🔴
[runtime] 2023-09-06 08:28:34 [verbose]: |-|-SkinProvidingContainer+DisableableSkinSource{ skin: SkinTransformer{ Skin: DefaultLegacySkin{ Name: osu! "classic" (2013) } } }.GetConfig(lookup: [ManiaSkinConfigurationLookup lookup:ColumnSpacing col:0])
[runtime] 2023-09-06 08:28:34 [verbose]: |-|-|-SkinTransformer{ Skin: DefaultLegacySkin{ Name: osu! "classic" (2013) } }.GetConfig(lookup: [LegacyManiaSkinConfigurationLookup lookup:ColumnSpacing col:0 totalcols:4])
[runtime] 2023-09-06 08:28:34 [verbose]: |-|-|-|-DefaultLegacySkin{ Name: osu! "classic" (2013) }.GetConfig(lookup: [LegacyManiaSkinConfigurationLookup lookup:ColumnSpacing col:0 totalcols:4]) 🟢
[runtime] 2023-09-06 08:28:34 [verbose]:
```
2023-09-06 18:03:40 +09:00
Dean Herbert
49fc9655d2
Apply NRT to osu.Game.Betamaps.Formats
namespace
2023-08-16 19:37:24 +09:00
Dean Herbert
3a2dd0e7dd
Move argon key counter to right to match stable expectations
2023-06-26 16:22:38 +09:00
Dean Herbert
52fdeeb491
Improve positioning and positioning code clarity for argon / triangles implementations
2023-06-26 16:20:51 +09:00
tsrk
e26aeea589
feat: make KeyCounterDisplay
skinnable
2023-06-14 21:15:12 +02:00
Dean Herbert
ffb99364b9
Ensure skin default component layouts only apply to global layout for now
2023-02-17 18:24:05 +09:00
Dean Herbert
76f7accd13
Standardise all local SkinComponentsContainerLookup
variables to containerLookup
2023-02-16 15:33:56 +09:00
Dean Herbert
a92e42bb84
Rename SkinnableTargetContainer
to SkinComponentsContainer
...
Also use full `SkinComponentsContainerLookup` instead of the sub-type.
This will potentially be useful once we bring in per-ruleset targets.
2023-02-15 18:37:41 +09:00
Dean Herbert
8bbd00822c
Simplify and rename SkinnableTargetComponentsContainer
2023-02-15 17:30:21 +09:00
tsrk
91cde5ffbf
feat(hud/gameplay): implement Argon variant of SongProgress
2023-01-09 21:59:48 +01:00
Dean Herbert
2f0c772dcb
Add argon pro skin
2022-12-20 21:18:51 +09: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
bf26dbffc2
Apply nullability to skinning support classes
2022-11-09 13:59:13 +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