public override void OnResumeObstacle() { if (isPlayingTween) { return; } if (pathTweener != null) { if (!pathTweener.IsPlaying()) { pathTweener.Play(); } } base.OnResumeObstacle(); }
IEnumerator CoPlay(TweenerCore <Vector3, Path, DG.Tweening.Plugins.Options.PathOptions> pathTweener, Tweener rotTweener) { yield return(new WaitForSeconds(0.5f)); if (isBeginToPlay) { isPlayingTween = true; if (pathTweener != null) { pathTweener.Play(); } if (rotTweener != null) { rotTweener.Play(); } } }
private void StartAnimateRoom(Color endValue) { coloringTween.Pause(); coloringTween = DOTween.To(GetCurrentColor, ColorAllTiles, endValue, 2f); coloringTween.Play(); }
private IEnumerator StartSynopsis(bool skipPrologue) { var delayedTime = 0f; var startIndex = 0; if (!skipPrologue && prolgueEnd) { startIndex = _part1EndIndex + 2; } for (var index = startIndex; index < scripts.Length; index++) { if (skipAll) { End(); yield break; } var script = scripts[index]; if (index == _part1EndIndex && !skipPrologue) { yield return(StartCoroutine(Find <Blind>().FadeIn(2f, ""))); Close(); Game.Game.instance.Prologue.StartPrologue(); yield return(null); } skipSynopsis = false; script.image.transform.parent.gameObject.SetActive(true); script.image.overrideSprite = script.sprite; switch (script.textAnimationTypes) { case SynopsisScene.TextAnimationType.TypeAndFade: break; case SynopsisScene.TextAnimationType.Type: break; case SynopsisScene.TextAnimationType.ImmediatelyAndFade: case SynopsisScene.TextAnimationType.Immediately: script.text.text = script.scripts; script.shadowText.text = script.scripts; break; default: throw new ArgumentOutOfRangeException(); } Color color; TweenerCore <Color, Color, ColorOptions> tweener; TweenerCore <float, float, FloatOptions> skeletonTweener = null; switch (script.imageAnmationType) { case SynopsisScene.ImageAnimationType.FadeIn: color = script.image.color; color.a = 0; script.image.color = color; tweener = script.image.DOFade(1, script.imageAnimationTime); if (script.hasSkeletonAnimation) { script.skeletonAnimation.skeleton.A = 1; skeletonTweener = DOTween.To(() => script.skeletonAnimation.skeleton.A, alpha => script.skeletonAnimation.skeleton.A = alpha, 0, script.imageAnimationTime); } tweener.Play(); skeletonTweener?.Play(); yield return(new WaitUntil(() => !tweener.IsPlaying() || skipSynopsis)); if (skipSynopsis) { tweener.Complete(); } break; case SynopsisScene.ImageAnimationType.FadeOut: color = script.image.color; color.a = 1; script.image.color = color; tweener = script.image.DOFade(0, script.imageAnimationTime); if (script.hasSkeletonAnimation) { script.skeletonAnimation.skeleton.A = 0; skeletonTweener = DOTween.To(() => script.skeletonAnimation.skeleton.A, alpha => script.skeletonAnimation.skeleton.A = alpha, 1, script.imageAnimationTime); } tweener.Play(); skeletonTweener?.Play(); yield return(new WaitUntil(() => !tweener.IsPlaying() || skipSynopsis)); if (skipSynopsis) { tweener.Complete(); } break; case SynopsisScene.ImageAnimationType.Immediately: script.image.sprite = script.sprite; break; default: throw new ArgumentOutOfRangeException(); } if (script.imageAnimationEndTerm > 0) { delayedTime = 0f; yield return(new WaitUntil(() => { if (delayedTime >= script.imageAnimationEndTerm || skipSynopsis) { return true; } delayedTime += Time.deltaTime; return false; })); } if (skipSynopsis) { continue; } if (script.scriptsLocalizationKey == string.Empty) { script.image.transform.parent.gameObject.SetActive(false); continue; } var fade = false; switch (script.textAnimationTypes) { case SynopsisScene.TextAnimationType.TypeAndFade: fade = true; yield return(StartCoroutine(TypingText(script))); break; case SynopsisScene.TextAnimationType.Type: yield return(StartCoroutine(TypingText(script))); break; case SynopsisScene.TextAnimationType.ImmediatelyAndFade: fade = true; break; case SynopsisScene.TextAnimationType.Immediately: break; default: throw new ArgumentOutOfRangeException(); } delayedTime = 0f; if (script.scriptsEndTerm > 0) { yield return(new WaitUntil(() => { if (delayedTime >= script.scriptsEndTerm || skipSynopsis) { return true; } delayedTime += Time.deltaTime; return false; })); } if (fade) { var tweener1 = script.text.DOFade(0, textFadeOutTime); var tweener2 = script.shadowText.DOFade(0, textFadeOutTime); tweener1.Play(); tweener2.Play(); yield return(new WaitUntil(() => (!tweener1.IsPlaying() && !tweener2.IsPlaying()) || skipSynopsis)); } else { script.text.text = string.Empty; } if (skipSynopsis) { continue; } script.image.transform.parent.gameObject.SetActive(false); } End(); yield return(null); }