hch
7 小时以前 c6ea64fb4e4755c4290bf5228d8cd463bc81c21f
Main/Component/UI/Effect/BattleEffectPlayer.cs
@@ -30,6 +30,8 @@
        }
    }
    private Bone followedBone;
    public bool isBindBone = false;
    public bool isRedCamp = true;
@@ -227,6 +229,31 @@
        }
    }
    public void FollowBoneXY()
    {
        if (followedBone == null || !isBindBone)
        {
            return;
        }
        Vector2 vector2 = Vector2.zero;
        if (effectConfig.effectPos != null && effectConfig.effectPos.Length >= 2)
        {
            vector2 = new Vector2((isRedCamp ? 1f : -1f) * effectConfig.effectPos[0], effectConfig.effectPos[1]);
        }
        if (spineComp != null)
        {
            spineComp.transform.localPosition = new Vector3(followedBone.WorldX + vector2.x, followedBone.WorldY + vector2.y, 0);
        }
        if (effectTarget != null)
        {
            effectTarget.transform.localPosition = new Vector3(followedBone.WorldX + vector2.x, followedBone.WorldY + vector2.y, 0);
        }
    }
    public virtual void Play(bool showLog = true)
    {
        if (!isInit)
@@ -350,7 +377,6 @@
        spineComp.enabled = true;
        spineComp.timeScale = speedRate;
        spineAnimationState.TimeScale = speedRate;
        Spine.Animation animation = spineAnimationState.Data.SkeletonData.Animations.First();
        spineAnimationState.SetAnimation(0, animation, effectConfig.isLoop != 0);
@@ -534,11 +560,6 @@
            spineComp.timeScale = 0f;
        }
        if (spineAnimationState != null)
        {
            spineAnimationState.TimeScale = 0f;
        }
        // Animator动画
        foreach (var animator in animatorList)
        {
@@ -559,11 +580,6 @@
        if (spineComp != null)
        {
            spineComp.timeScale = speedRate;
        }
        if (spineAnimationState != null)
        {
            spineAnimationState.TimeScale = speedRate;
        }
        // Animator动画
@@ -638,6 +654,7 @@
        }
        isBindBone = true;
        followedBone = bone;
        BoneFollower boneFollower = gameObject.AddMissingComponent<BoneFollower>();
        boneFollower.boneName = v;