mirror of
https://github.com/ppy/osu.git
synced 2026-05-19 01:49:53 +08:00
Fix SkinnableSprite lookups broken in lazer-first skins
Regressed with removal of local `GetTexture` calls in https://github.com/ppy/osu/commit/e19ba65f9186afab21aec536a636d7d152636dde
This commit is contained in:
@@ -82,21 +82,14 @@ namespace osu.Game.Skinning
|
||||
|
||||
public override Drawable? GetDrawableComponent(ISkinComponentLookup lookup)
|
||||
{
|
||||
// Temporary until default skin has a valid hit lighting.
|
||||
if ((lookup as SkinnableSprite.SpriteComponentLookup)?.LookupName == @"lighting") return Drawable.Empty();
|
||||
|
||||
if (base.GetDrawableComponent(lookup) is Drawable c)
|
||||
return c;
|
||||
|
||||
switch (lookup)
|
||||
{
|
||||
case SkinnableSprite.SpriteComponentLookup spriteLookup:
|
||||
switch (spriteLookup.LookupName)
|
||||
{
|
||||
// Temporary until default skin has a valid hit lighting.
|
||||
case @"lighting":
|
||||
return Drawable.Empty();
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case GlobalSkinComponentLookup globalLookup:
|
||||
switch (globalLookup.Lookup)
|
||||
{
|
||||
|
||||
@@ -396,9 +396,6 @@ namespace osu.Game.Skinning
|
||||
}
|
||||
|
||||
return null;
|
||||
|
||||
case SkinnableSprite.SpriteComponentLookup sprite:
|
||||
return this.GetAnimation(sprite.LookupName, false, false);
|
||||
}
|
||||
|
||||
return null;
|
||||
|
||||
@@ -158,6 +158,10 @@ namespace osu.Game.Skinning
|
||||
{
|
||||
switch (lookup)
|
||||
{
|
||||
// This fallback is important for user skins which use SkinnableSprites.
|
||||
case SkinnableSprite.SpriteComponentLookup sprite:
|
||||
return this.GetAnimation(sprite.LookupName, false, false);
|
||||
|
||||
case GlobalSkinComponentLookup target:
|
||||
if (!DrawableComponentInfo.TryGetValue(target.Lookup, out var skinnableInfo))
|
||||
return null;
|
||||
|
||||
@@ -60,21 +60,14 @@ namespace osu.Game.Skinning
|
||||
|
||||
public override Drawable? GetDrawableComponent(ISkinComponentLookup lookup)
|
||||
{
|
||||
// Temporary until default skin has a valid hit lighting.
|
||||
if ((lookup as SkinnableSprite.SpriteComponentLookup)?.LookupName == @"lighting") return Drawable.Empty();
|
||||
|
||||
if (base.GetDrawableComponent(lookup) is Drawable c)
|
||||
return c;
|
||||
|
||||
switch (lookup)
|
||||
{
|
||||
case SkinnableSprite.SpriteComponentLookup spriteLookup:
|
||||
switch (spriteLookup.LookupName)
|
||||
{
|
||||
// Temporary until default skin has a valid hit lighting.
|
||||
case @"lighting":
|
||||
return Drawable.Empty();
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case GlobalSkinComponentLookup target:
|
||||
switch (target.Lookup)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user