Fix incorrect skin lookup shortcutting causing sprites to no longer work

This commit is contained in:
Dean Herbert 2024-08-17 02:30:59 +09:00
parent 3b94d1f8eb
commit d1d195cf18
No known key found for this signature in database
3 changed files with 12 additions and 12 deletions

View File

@ -94,13 +94,13 @@ namespace osu.Game.Skinning
// Temporary until default skin has a valid hit lighting.
if ((lookup as SkinnableSprite.SpriteComponentLookup)?.LookupName == @"lighting") return Drawable.Empty();
if (base.GetDrawableComponent(lookup) is UserConfiguredLayoutContainer c)
return c;
switch (lookup)
{
case SkinComponentsContainerLookup containerLookup:
if (base.GetDrawableComponent(lookup) is UserConfiguredLayoutContainer c)
return c;
switch (containerLookup.Target)
{
case SkinComponentsContainerLookup.TargetArea.SongSelect:
@ -257,7 +257,7 @@ namespace osu.Game.Skinning
return null;
}
return null;
return base.GetDrawableComponent(lookup);
}
public override IBindable<TValue>? GetConfig<TLookup, TValue>(TLookup lookup)

View File

@ -356,12 +356,12 @@ namespace osu.Game.Skinning
public override Drawable? GetDrawableComponent(ISkinComponentLookup lookup)
{
if (base.GetDrawableComponent(lookup) is UserConfiguredLayoutContainer c)
return c;
switch (lookup)
{
case SkinComponentsContainerLookup containerLookup:
if (base.GetDrawableComponent(lookup) is UserConfiguredLayoutContainer c)
return c;
switch (containerLookup.Target)
{
case SkinComponentsContainerLookup.TargetArea.MainHUDComponents:
@ -445,7 +445,7 @@ namespace osu.Game.Skinning
return null;
}
return null;
return base.GetDrawableComponent(lookup);
}
private Texture? getParticleTexture(HitResult result)

View File

@ -64,12 +64,12 @@ namespace osu.Game.Skinning
// Temporary until default skin has a valid hit lighting.
if ((lookup as SkinnableSprite.SpriteComponentLookup)?.LookupName == @"lighting") return Drawable.Empty();
if (base.GetDrawableComponent(lookup) is UserConfiguredLayoutContainer c)
return c;
switch (lookup)
{
case SkinComponentsContainerLookup containerLookup:
if (base.GetDrawableComponent(lookup) is UserConfiguredLayoutContainer c)
return c;
// Only handle global level defaults for now.
if (containerLookup.Ruleset != null)
return null;
@ -178,7 +178,7 @@ namespace osu.Game.Skinning
return null;
}
return null;
return base.GetDrawableComponent(lookup);
}
public override IBindable<TValue>? GetConfig<TLookup, TValue>(TLookup lookup)