yyl
2025-12-03 93cab33f292e99c81e738b2b6c58c7fa21a7f371
Main/Component/UI/Effect/BattleEffectPlayer.cs
@@ -353,15 +353,27 @@
    protected void PlaySpineEffect()
    {
        //  这里是纯spine的逻辑
        if (spineComp == null)
        {
            Debug.LogError("BattleEffectPlayer spineComp is null, effect id is " + effectId);
            return;
        }
        SkeletonDataAsset skeletonDataAsset = ResManager.Instance.LoadAsset<SkeletonDataAsset>("UIEffect/" + effectConfig.packageName, effectConfig.fxName);
        // ===== 简化:直接从缓存获取,缓存内部会自动加载 =====
        string directory = "UIEffect/" + effectConfig.packageName;
        SkeletonDataAsset skeletonDataAsset = BattleResManager.Instance.GetSpineResource(
            directory,
            effectConfig.fxName,
            battleField?.guid
        );
        if (skeletonDataAsset == null)
        {
            Debug.LogError($"BattleEffectPlayer: Failed to load effect spine {effectConfig.fxName}");
            return;
        }
        // ================================
        spineComp.skeletonDataAsset = skeletonDataAsset;
        spineComp.Initialize(true);
        spineComp.timeScale = speedRate;