private void SetEase() { if (data.ease != Ease.INTERNAL_Custom) { thisTween.SetEase(data.ease); } else { thisTween.SetEase(data.customCurve); } thisTween.SetUpdate(data.IgnoreTimeScale); }
private void DoTweenMoneyEffect(int index) { //Logger.LogWarp.LogError("DoTweenMoneyEffect " + index + " " + m_TargetPosition + " " + moveTime); MoneyEffectData data = m_MoneyEffectChildList[index]; data.Trans.localScale = scale; //Vector2 p2 = Vector2.zero; Vector2 p2 = data.Trans.position; //if (tweenPos != null) //{ // if (tweenPos.IsPlaying()) // { // tweenPos.Complete(); // } // tweenPos.Kill(); //} tweenPos = DOTween.To(() => p2, x => p2 = x, m_TargetPosition, moveTime); tweenPos.SetEase(Ease.InSine); //data.effect.SetActive(true); //Debug.Log("m_TargetPosition=" + m_TargetPosition); tweenPos.OnUpdate(() => { //Logger.LogWarp.LogError(data.Trans.name + " " + p2); data.Trans.position = p2; }); tweenPos.OnComplete(() => { //Logger.LogWarp.LogError("tweenPos.OnComplete " + m_CurPlayCount + " " + m_MaxCount); data.Trans.localScale = Vector3.zero; m_CurPlayCount++; //EventManager.Trigger(EventEnum.MoneyEffectPlayUpdate, m_MoneyType); //ShakePhone.ShakeLight(); if ((m_CurPlayCount + 1) >= m_MaxCount) { m_CurPlayCount = 0; switch (m_MoneyType) { case MoneyType.Diamond: m_DiamondEffectObj.SetActive(true); break; case MoneyType.Money: m_MoneyEffectObj.SetActive(true); break; case MoneyType.Physic: physicEffectObj.SetActive(true); break; } RunCoroutine.Run(PlayCompleteEffect()); } }); }
public void FlyInDirection(Vector3 directFly) { m_directFly = directFly; m_raycastHit = Physics2D.CircleCast(transform.position, m_radius, m_directFly, 100f, m_layerMaskVaCham); Vector3 destination = m_raycastHit.point + m_raycastHit.normal * m_radius; //điểm cuối cách 1 khoảng bằng radius, để bóng ko đi xuyên qua tường hoặc khối m_tweener = transform.DOMove(destination, m_raycastHit.distance / m_flySpeed); m_tweener.SetEase(Ease.Linear); m_tweener.OnComplete(() => OnDoMoveComplete()); m_ballState = BallState.Flying; }
protected void SetTween(TweenerCore <Vector3, Path, PathOptions> tween) { if (direction == AnimationDirection.From) { tween.From(); } tween.SetEase(ease); tween.SetRelative(isRelative); tween.Pause(); tweener = tween; }
public void RevokeBall() { if (m_ballState == BallState.Flying) { m_ballState = BallState.Revoking; m_tweener.Kill(); Vector3 pos = m_gun.transform.position; pos.x = transform.position.x; float distance = Vector3.Distance(transform.position, pos); m_tweener = transform.DOMove(pos, distance / m_flySpeed); //bay thẳng xuống cái đã m_tweener.SetEase(Ease.Linear); m_tweener.OnComplete(() => { FinishFly(); }); } }
public void Shoot() { if (_hurtcontroller.isdie) { return; } Vector3[] pos = new Vector3[] { new Vector2(Mathf.Abs(transform.position.x - player.transform.position.x) / 2 + (transform.position.x > player.transform.position.x? player.transform.position.x:transform.position.x), (transform.position + transform.up * 8).y), new Vector2(player.transform.position.x, transform.position.y - 2) }; float timer = Mathf.Sqrt(Mathf.Pow((Mathf.Abs(pos[1].y) - Mathf.Abs(transform.position.y + 3.5f)), 2) + Mathf.Pow((Mathf.Abs(pos[1].x) - Mathf.Abs(transform.position.x)), 2)) / 3.5f; GameObject temp2 = GameObjectPool.GetInstance().GetGameObject("尸蛹攻击", transform.position + new Vector3(0, 3.5f), Quaternion.Euler(0, 0, 90)); GameObjectPool.GetInstance().ReleaseGameObject("尸蛹攻击", temp2, timer); TweenerCore <Vector3, DG.Tweening.Plugins.Core.PathCore.Path, DG.Tweening.Plugins.Options.PathOptions> core = temp2.transform.DOPath(pos, timer, PathType.CatmullRom, PathMode.TopDown2D); core.plugOptions.orientType = DG.Tweening.Plugins.Options.OrientType.ToPath; core.plugOptions.lookAhead = 0.1f; core.SetEase(curve); }
/// <summary> /// Only Deactive UI wont clear Data. /// </summary> public virtual void Hide() { GameObject tempObj = null; if (m_ContentTrans != null) { tempObj = m_ContentTrans.gameObject; } else { tempObj = this.gameObject; } if (alphaBackground == UIAlphaBackground.DoAlpha) { if (bgImg != null) { if (tweenHideColor != null) { tweenHideColor.Kill(); } float p2 = 1; tweenHideColor = DOTween.To(() => p2, x => p2 = x, 0, 0.25f); tweenHideColor.SetEase(Ease.Linear); tweenHideColor.OnUpdate(() => { Color c = bgImg.color; c.a = p2; bgImg.color = c; }); } } if (this.mode == UIMode.DoTween && tempObj != null) { // DOTween.To (); if (tweenHideScale != null) { tweenHideScale.Kill(); } if (tweenHideScale1 != null) { tweenHideScale1.Kill(); } Vector3 p2 = Vector3.one; tweenHideScale = DOTween.To(() => p2, x => p2 = x, new Vector3(1.15f, 1.15f, 1), 0.08f); tweenHideScale.SetEase(Ease.InSine); tweenHideScale.OnUpdate(() => { //Debug.Log(p2); tempObj.transform.localScale = p2; }); tweenHideScale.OnComplete(() => { tweenHideScale1 = DOTween.To(() => p2, x => p2 = x, new Vector3(0, 0, 1), 0.17f); tweenHideScale1.SetEase(Ease.InOutSine); tweenHideScale1.OnUpdate(() => { tempObj.transform.localScale = p2; //Debug.Log(p2); }); tweenHideScale1.OnComplete(() => { this.gameObject.SetActive(false); isActived = false; //set this page's data null when hide. this.m_data = null; InvokeCloseAndRemoveAllListeners(); }); }); return; } //if (uiCurrency != null) //{ // uiCurrency.Hide(); //} this.gameObject.SetActive(false); isActived = false; //set this page's data null when hide. this.m_data = null; InvokeCloseAndRemoveAllListeners(); }
///Active this UI public virtual void Active() { this.transform.SetAsLastSibling(); this.gameObject.SetActive(true); isActived = true; GameObject tempObj = null; if (m_ContentTrans != null) { tempObj = m_ContentTrans.gameObject; } else { tempObj = this.gameObject; } if (alphaBackground == UIAlphaBackground.DoAlpha) { if (bgImg != null) { if (tweenShowColor != null) { tweenShowColor.Kill(); } float p2 = 0; tweenShowColor = DOTween.To(() => p2, x => p2 = x, 1, 0.28f); tweenShowColor.SetEase(Ease.Linear); tweenShowColor.OnUpdate(() => { Color c = bgImg.color; c.a = p2; bgImg.color = c; }); } } if (this.mode == UIMode.DoTween && tempObj != null) { if (tweenShowScale != null) { tweenShowScale.Kill(); } if (tweenShowScale1 != null) { tweenShowScale1.Kill(); } // DOTween.To (); Vector3 p2 = Vector3.zero; tweenShowScale = DOTween.To(() => p2, x => p2 = x, new Vector3(1.15f, 1.15f, 1), 0.12f); tweenShowScale.SetEase(Ease.InOutSine); tweenShowScale.OnUpdate(() => { //Debug.Log(p2); tempObj.transform.localScale = p2; }); tweenShowScale.OnComplete(() => { tweenShowScale1 = DOTween.To(() => p2, x => p2 = x, Vector3.one, 0.16f); tweenShowScale1.SetEase(Ease.InOutSine); tweenShowScale1.OnUpdate(() => { //Debug.Log(p2); tempObj.transform.localScale = p2; }); }); } //if (uiCurrency != null) //{ // uiCurrency.Active(); //} }
private void ShowDialogueTween(string dialog) { _dialogue.text = ""; //Clean the text so the animation shows correctly. _dialogueTween = _dialogue.DOText(dialog, _showTextTime); _dialogueTween.SetEase(_showTextEase); }
public override void build(SequenceControl seq, Track track, int index, UnityEngine.Object obj) { int frameRate = seq.take.frameRate; //allow tracks with just one key if (track.keys.Count == 1) { interp = Interpolation.None; } var trans = obj as Transform; var transParent = trans.parent; Rigidbody body = trans.GetComponent <Rigidbody>(); Rigidbody2D body2D = !body?trans.GetComponent <Rigidbody2D>() : null; var tTrack = track as TranslationTrack; bool pixelSnap = tTrack.pixelSnap; float ppu = tTrack.pixelPerUnit; if (!canTween) { //TODO: world position Vector3 pos = pixelSnap ? new Vector3(Mathf.Round(position.x * ppu) / ppu, Mathf.Round(position.y * ppu) / ppu, Mathf.Round(position.z * ppu) / ppu) : position; TweenerCore <Vector3, Vector3, TWeenPlugNoneOptions> tweener; if (body2D) { tweener = DOTween.To(new TweenPlugValueSet <Vector3>(), () => trans.localPosition, (x) => body2D.position = transParent.TransformPoint(x), pos, getTime(frameRate)); //1.0f / frameRate } else if (body) { tweener = DOTween.To(new TweenPlugValueSet <Vector3>(), () => trans.localPosition, (x) => body.position = transParent.TransformPoint(x), pos, getTime(frameRate)); //1.0f / frameRate } else { tweener = DOTween.To(new TweenPlugValueSet <Vector3>(), () => trans.localPosition, (x) => trans.localPosition = x, pos, getTime(frameRate)); //1.0f / frameRate } seq.Insert(this, tweener); } else { if (path.Length <= 1) { return; } if (getNumberOfFrames(seq.take.frameRate) <= 0) { return; } TweenerCore <Vector3, Path, PathOptions> ret = null; bool isRelative = false; PathType pathType = path.Length == 2 ? PathType.Linear : PathType.CatmullRom; var pathTween = new Path(pathType, path, pathResolution); var timeTween = getTime(frameRate); if (body2D) { if (pixelSnap) { ret = DOTween.To(PathPlugin.Get(), () => path[0], x => body2D.MovePosition(transParent.TransformPoint(new Vector2(Mathf.Round(x.x * ppu) / ppu, Mathf.Round(x.y * ppu) / ppu))), pathTween, timeTween).SetTarget(body2D); } else { ret = DOTween.To(PathPlugin.Get(), () => path[0], x => body2D.MovePosition(transParent.TransformPoint(x)), pathTween, timeTween).SetTarget(body2D); } } else if (body) { if (pixelSnap) { ret = DOTween.To(PathPlugin.Get(), () => path[0], x => body.MovePosition(transParent.TransformPoint(new Vector3(Mathf.Round(x.x * ppu) / ppu, Mathf.Round(x.y * ppu) / ppu, Mathf.Round(x.z * ppu) / ppu))), pathTween, timeTween).SetTarget(body); } else { ret = DOTween.To(PathPlugin.Get(), () => path[0], x => body.MovePosition(transParent.TransformPoint(x)), pathTween, timeTween).SetTarget(body); } } else { if (pixelSnap) { ret = DOTween.To(PathPlugin.Get(), () => path[0], x => trans.localPosition = new Vector3(Mathf.Round(x.x * ppu) / ppu, Mathf.Round(x.y * ppu) / ppu, Mathf.Round(x.z * ppu) / ppu), pathTween, timeTween).SetTarget(trans); } else { ret = DOTween.To(PathPlugin.Get(), () => path[0], x => trans.localPosition = x, pathTween, timeTween).SetTarget(trans); } } ret.SetRelative(isRelative).SetOptions(isClosed); if (hasCustomEase()) { ret.SetEase(easeCurve); } else { ret.SetEase(easeType, amplitude, period); } seq.Insert(this, ret); } }