125 战斗 子弹目标包含自己时,隐藏这个以自己为目标的单个子弹
| | |
| | | |
| | | public float speedRate = 1.5f; |
| | | |
| | | private float m_Alpha = 1f; |
| | | |
| | | public float Alpha |
| | | { |
| | | get |
| | | { |
| | | return m_Alpha; |
| | | } |
| | | set |
| | | { |
| | | if (value == m_Alpha) |
| | | return; |
| | | |
| | | m_Alpha = value; |
| | | OnAlphaChanged(); |
| | | } |
| | | } |
| | | |
| | | private void OnAlphaChanged() |
| | | { |
| | | if (spineComp != null) |
| | | { |
| | | var skeleton = spineComp.Skeleton; |
| | | skeleton.A = Alpha; |
| | | spineComp.LateUpdate(); |
| | | } |
| | | |
| | | for (int i = 0; i < rendererList.Count; i++) |
| | | { |
| | | var renderer = rendererList[i]; |
| | | if (renderer != null && renderer.material != null && renderer.material.HasProperty("_Color")) |
| | | { |
| | | Color color = renderer.material.color; |
| | | color.a = Alpha; |
| | | renderer.material.color = color; |
| | | } |
| | | } |
| | | } |
| | | |
| | | [Header("播放完毕立即回收")] |
| | | public bool isReleaseImmediately = false; //界面特效一般不需要自我销毁,跟随界面或者父对象销毁就行 |
| | |
| | | { |
| | | PlayUnityEffect(); |
| | | } |
| | | OnAlphaChanged(); |
| | | } |
| | | |
| | | protected void PlaySpineEffect() |
| | |
| | | spineComp.Initialize(true); |
| | | spineComp.timeScale = speedRate; |
| | | |
| | | spineComp.skeleton.A = Alpha; |
| | | |
| | | spineAnimationState = spineComp.state; |
| | | spineAnimationState.Complete -= OnSpineAnimationComplete; |
| | | spineAnimationState.Complete += OnSpineAnimationComplete; |
| | |
| | | { |
| | | BattleEffectPlayer effectPlayer = caster.battleField.battleEffectMgr.PlayEffect(caster, skillConfig.BulletEffectId, caster.heroRectTrans, caster.Camp); |
| | | |
| | | bool shotToSelf = target.ObjID == caster.ObjID; |
| | | |
| | | effectPlayer.Alpha = shotToSelf ? 0f : 1f; |
| | | |
| | | var tempOrder = order; |
| | | |
| | | var bulletCurve = BulletCurveFactory.CreateBulletCurve(caster, skillConfig, effectPlayer, target.heroRectTrans, |
| | |
| | | { |
| | | BattleEffectPlayer effectPlayer = caster.battleField.battleEffectMgr.PlayEffect(caster, skillConfig.BulletEffectId, caster.heroRectTrans, caster.Camp); |
| | | |
| | | bool shotToSelf = target.ObjID == caster.ObjID; |
| | | |
| | | effectPlayer.Alpha = shotToSelf ? 0f : 1f; |
| | | |
| | | var bulletCurve = BulletCurveFactory.CreateBulletCurve(caster, skillConfig, effectPlayer, target.heroRectTrans, tagUseSkillAttack.HurtList.ToList(), bulletIndex, (index, hitList) => |
| | | { |
| | | foreach (var hurt in hitList) |