yyl
2026-01-30 ed26f235a0f41c5676a9ce3c898d6bef18623fbe
Main/Component/UI/Effect/EffectPlayer.cs
@@ -35,7 +35,7 @@
    public EffectConfig effectConfig;
    public float speedRate = 1f;
    public float speedRate = 1f;    //初始化的时候用 修改使用SetSpeed
    [Header("是否循环播放spine特效")]
    public bool isPlaySpineLoop = false;
@@ -249,7 +249,17 @@
    //     return;
    // }
   //越大越快
   public void SetSpeed(float speed)
    {
        speedRate = speed;
        if (spineAnimationState == null)
        {
            Debug.LogError("spineAnimationState is null 可以先调用play");
            return;
        }
      spineAnimationState.TimeScale = speed;
   }
    protected void PlaySpineEffect(bool closePMA = false)
    {
@@ -268,7 +278,6 @@
            spineComp.MeshGenerator.settings.pmaVertexColors = !closePMA;   
            spineComp.raycastTarget = false;
            spineComp.Initialize(true);
            spineComp.timeScale = speedRate;
            // 检查动画是否有相加模式
            // bool hasAdditiveBlend = CheckForAdditiveBlend(spineComp.Skeleton);
            // if (hasAdditiveBlend)
@@ -282,6 +291,7 @@
            spineComp.material = ResManager.Instance.LoadAsset<Material>("Materials", "SkeletonGraphicDefault-Straight");
            spineAnimationState = spineComp.AnimationState;
            spineAnimationState.TimeScale = speedRate;
            spineAnimationState.Data.DefaultMix = 0f;
            spineAnimationState.Complete -= OnSpineAnimationComplete;
            spineAnimationState.Complete += OnSpineAnimationComplete;