首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用字典(统一)加载资源

使用字典(统一)加载资源
EN

Stack Overflow用户
提问于 2022-06-18 16:41:19
回答 1查看 70关注 0票数 0

我让换一个2D字符的皮肤成为可能,我遇到了一个问题

精灵装载看起来像这样

代码语言:javascript
复制
    private void LoadResources()
{
    _faces = Resources.LoadAll<Sprite>(@"Rogue/Rogue_face");
    _hoods = Resources.LoadAll<Sprite>(@"Rogue/Rogue_hood");

    _elbowsLeft = Resources.LoadAll<Sprite>(@"Rogue/Rogue_elbow_l");
    _elbowsRight = Resources.LoadAll<Sprite>(@"Rogue/Rogue_elbow_r");
    _shouldersLeft = Resources.LoadAll<Sprite>(@"Rogue/Rogue_shoulder_l");
    _shouldersRight = Resources.LoadAll<Sprite>(@"Rogue/Rogue_shoulder_r");
    _wristsLeft = Resources.LoadAll<Sprite>(@"Rogue/Rogue_wrist_l");
    _wristsRight = Resources.LoadAll<Sprite>(@"Rogue/Rogue_wrist_r");

    _torsos = Resources.LoadAll<Sprite>(@"Rogue/Rogue_torso");
    _pelvises = Resources.LoadAll<Sprite>(@"Rogue/Rogue_pelvis");

    _legsLeft = Resources.LoadAll<Sprite>(@"Rogue/Rogue_leg_l");
    _legsRight = Resources.LoadAll<Sprite>(@"Rogue/Rogue_leg_r");
    _bootsLeft = Resources.LoadAll<Sprite>(@"Rogue/Rogue_boot_l");
    _bootsRight = Resources.LoadAll<Sprite>(@"Rogue/Rogue_boot_r");
}

它看起来很麻烦,很难理解。

我想得到这样的东西,我如何实现它呢?

代码语言:javascript
复制
_spritesPaths = new Dictionary<Sprite[], string>()
    {
        {_faces, "Rogue_face"},
        {_hoods, "Rogue_hood"},

        {_elbowsLeft, "Rogue_elbow_l"},
        {_elbowsRight, "Rogue_elbow_r"},
        {_shouldersLeft, "Rogue_shoulder_l"},
        {_shouldersRight, "Rogue_shoulder_r"},
        {_wristsLeft, "Rogue_wrist_l"},
        {_wristsRight, "Rogue_wrist_r"},

        {_torsos, "Rogue_torso"},
        {_pelvises, "Rogue_pelvis"},

        {_legsLeft, "Rogue_leg_l"},
        {_legsRight, "Rogue_leg_r"},
        {_bootsLeft, "Rogue_boot_l"},
        {_bootsRight, "Rogue_boot_r"}
    };

private void LoadResources()
{
    foreach (var pair in _spritesPaths)
        pair.Key = Resources.LoadAll<Sprite>($@"Rogue/{pair.Value}"); //this does not work
}

提前感谢!

EN

回答 1

Stack Overflow用户

发布于 2022-06-18 21:38:21

你试过字符串加法了吗?

代码语言:javascript
复制
pair.Key = Resources.LoadAll<Sprite>("Rogue/" + pair.Value);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72671007

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档