private void Punch() { pointsTextTransform.DOComplete(); PointsText.DOComplete(); pointsTextTransform.DOPunchScale(Vector3.one * PunchAmount, PunchDuration, PunchVibration, PunchElasticity); PointsText.DOColor(PointAddColor, ColorEaseDuration).SetEase(ColorEase) .OnComplete(() => PointsText.DOColor(originalColor, ColorEaseDuration).SetEase(ColorEase)); }
protected override void PlayAnimation() { base.PlayAnimation(); Transform targetTransform = transform; Image targetImage = BackgroundImage; TextMeshProUGUI targetText = TextMesh; switch (OnClickTarget) { case AnimationTarget.Self: targetTransform = transform; targetImage = BackgroundImage; break; case AnimationTarget.Icon: targetTransform = IconImage.transform; targetImage = IconImage; break; case AnimationTarget.Text: targetTransform = TextMesh.transform; break; } switch (OnCLickAnimationType) { case OnClickAnimationType.Move: targetTransform.DOComplete(); if (TimeScaleIndependent) { targetTransform.DOLocalMove(((Vector2)targetTransform.localPosition == TargetPos) ? StartPos : TargetPos, 1f).SetUpdate(true).OnComplete(CreatePopUp); } else { targetTransform.DOLocalMove(((Vector2)targetTransform.localPosition == TargetPos) ? StartPos : TargetPos, 1f).OnComplete(CreatePopUp); } break; case OnClickAnimationType.PunchScale: transform.DOComplete(); if (TimeScaleIndependent) { transform.DOPunchScale(Vector3.one * (-0.1f * scaleMultiplier), 0.2f, 2, 0).SetEase(OnClikcEase).SetUpdate(true).OnComplete(CreatePopUp); } else { transform.DOPunchScale(Vector3.one * (-0.1f * scaleMultiplier), 0.2f, 2, 0).SetEase(OnClikcEase).OnComplete(CreatePopUp); } break; case OnClickAnimationType.PunchRotate: transform.DOComplete(); if (TimeScaleIndependent) { transform.DOPunchRotation(Vector3.one * 0.3f, 0.3f, 3, 0).SetEase(OnClikcEase).SetUpdate(true).OnComplete(CreatePopUp); } else { transform.DOPunchRotation(Vector3.one * 0.3f, 0.3f, 3, 0).SetEase(OnClikcEase).OnComplete(CreatePopUp); } break; case OnClickAnimationType.ColorChange: targetImage.DOComplete(); targetText.DOComplete(); if (TimeScaleIndependent) { targetImage.DOColor((targetImage.color == TargetColor) ? SourceColor : TargetColor, 0.5f).SetUpdate(true).OnComplete(CreatePopUp); targetText.DOColor((targetText.color == TargetColor) ? SourceColor : TargetColor, 0.5f).SetUpdate(true).OnComplete(CreatePopUp); } else { targetImage.DOColor((targetImage.color == TargetColor) ? SourceColor : TargetColor, 0.5f).OnComplete(CreatePopUp); targetText.DOColor((targetText.color == TargetColor) ? SourceColor : TargetColor, 0.5f).OnComplete(CreatePopUp); } break; case OnClickAnimationType.ColorChangeAndMove: targetTransform.DOComplete(); targetImage.DOComplete(); targetText.DOComplete(); if (TimeScaleIndependent) { targetTransform.DOLocalMove(((Vector2)targetTransform.localPosition == TargetPos) ? StartPos : TargetPos, 1f).SetUpdate(true).OnComplete(CreatePopUp); targetImage.DOColor((targetImage.color == TargetColor) ? SourceColor : TargetColor, 0.5f).SetUpdate(true).OnComplete(CreatePopUp); targetText.DOColor((targetText.color == TargetColor) ? SourceColor : TargetColor, 0.5f).SetUpdate(true).OnComplete(CreatePopUp); } else { targetTransform.DOLocalMove(((Vector2)targetTransform.localPosition == TargetPos) ? StartPos : TargetPos, 1f).OnComplete(CreatePopUp); targetImage.DOColor((targetImage.color == TargetColor) ? SourceColor : TargetColor, 0.5f).OnComplete(CreatePopUp); targetText.DOColor((targetText.color == TargetColor) ? SourceColor : TargetColor, 0.5f).OnComplete(CreatePopUp); } break; case OnClickAnimationType.None: CreatePopUp(); break; } //Debug.Log("Click Animation Played " + OnClickTarget + " " + OnCLickAnimationType); }