| | |
| | | |
| | | private long heal = 0; |
| | | |
| | | public const float scaleDuration = 1.5f; |
| | | |
| | | public const float delayCloseDuration = 1.5f; |
| | | |
| | | public static readonly Vector3 scalePunch = new Vector3(0.4f, 0.4f, 0.4f); |
| | | |
| | | private Sequence punchTween = null; |
| | | |
| | | public void SetDamage(BattleDmgInfo dmgInfo) |
| | | { |
| | | var battleField = BattleManager.Instance.GetBattleField(dmgInfo.battleFieldGuid); |
| | |
| | | |
| | | if (dmgInfo == null) |
| | | return; |
| | | |
| | | if (dmgInfo.isFirstHit) |
| | | { |
| | | damage = 0; |
| | | heal = 0; |
| | | } |
| | | |
| | | if (dmgInfo.IsType(DamageType.Recovery)) |
| | | { |
| | |
| | | } |
| | | else |
| | | { |
| | | textDamage.text =BattleUtility.DisplayDamageNum(0, BattleConst.BattleTotalDamageType); |
| | | imgTotalDesc.sprite = UILoader.LoadSprite("Fight", "Fight1_img_85"); |
| | | damageBackground.sprite = UILoader.LoadSprite("Fight", "Fight1_img_88"); |
| | | gameObject.SetActive(false); |
| | | return; |
| | | } |
| | | // else |
| | | // { |
| | | // textDamage.text =BattleUtility.DisplayDamageNum(0, BattleConst.BattleTotalDamageType); |
| | | // imgTotalDesc.sprite = UILoader.LoadSprite("Fight", "Fight1_img_85"); |
| | | // damageBackground.sprite = UILoader.LoadSprite("Fight", "Fight1_img_88"); |
| | | // } |
| | | |
| | | if (punchTween != null && punchTween.IsActive()) |
| | | { |
| | | battleField.battleTweenMgr.OnKillTween(punchTween); |
| | | textDamage.transform.localScale = Vector3.one; |
| | | punchTween = null; |
| | | } |
| | | |
| | | var tween = textDamage.transform.DOPunchScale(Vector3.one * 0.2f, 0.8f / battleField.speedRatio, 1).OnComplete(() => |
| | | punchTween = DOTween.Sequence(); |
| | | var tween1 = textDamage.transform.DOPunchScale(scalePunch, scaleDuration / battleField.speedRatio, 1); |
| | | punchTween.Append(tween1); |
| | | // 播放结束后 延迟1.5秒再消失 |
| | | var tween2 = DOVirtual.DelayedCall(delayCloseDuration / battleField.speedRatio, () => { }); |
| | | punchTween.Append(tween2); |
| | | punchTween.OnComplete(() => |
| | | { |
| | | textDamage.transform.localScale = Vector3.one; |
| | | if (dmgInfo.isLastHit) |
| | | { |
| | | gameObject.SetActive(false); |
| | | damage = 0; |
| | | heal = 0; |
| | | } |
| | | }); |
| | | |
| | | battleField.battleTweenMgr.OnPlayTween(tween); |
| | | battleField.battleTweenMgr.OnPlayTween(punchTween); |
| | | |
| | | } |
| | | } |