换装资源在同一个文件中

public class L33 : MonoBehaviour
{
    public SpriteResolver spriteResolver;

    private Dictionary<string,SpriteResolver> equipDic = new Dictionary<string,SpriteResolver>();
    // Start is called before the first frame update
    void Start()
    {
        //为换装资源分组
        //在Sprite Editor中的Category创建新Category

        //SpriteLibrary - 确定分组信息
        //SpriteResolver - 确定部位类别和使用的图片
        //SpriteLibraryAsset - 记录类别分组信息

        //代码换装(Category,Label)
        spriteResolver.SetCategoryAndLabel(spriteResolver.GetCategory(), "");

       SpriteResolver[] srs = GetComponentsInChildren<SpriteResolver>();
        for(int i = 0; i < srs.Length; i++)
        {
            equipDic.Add(srs[i].GetCategory(), srs[i]);
        }

    }
    public void ChangeEquip(string category,string equipName)
    {
        if(equipDic.ContainsKey(category))
        {
            equipDic[category].SetCategoryAndLabel(category,equipName);
        }
    }
}
posted @ 2025-04-02 16:22  cannedmint  阅读(25)  评论(0)    收藏  举报