概要
using Cysharp.Threading.Tasks; using DG.Tweening; using UnityEngine; public class Example : MonoBehaviour { private Tween m_tween; private async UniTaskVoid Update() { if ( Input.GetMouseButtonDown( 0 ) ) { Debug.Log( "開始" ); m_tween?.Kill(); // ★ m_tween = transform.DOMoveX( 1, 1 ); await m_tween; m_tween.Kill(); m_tween = null; Debug.Log( "終了" ); } } }
上記のようなコードを実装して左クリックを連打すると
IndexOutOfRangeException: Index was outside the bounds of the array. DG.Tweening.Core.TweenManager.RemoveActiveTween (DG.Tweening.Tween t) (at D:/DG/_Develop/__UNITY3_CLASSES/_Holoville/__DOTween/_DOTween.Assembly/DOTween/Core/TweenManager.cs:1164) DG.Tweening.Core.TweenManager.Despawn (DG.Tweening.Tween t, System.Boolean modifyActiveLists) (at D:/DG/_Develop/__UNITY3_CLASSES/_Holoville/__DOTween/_DOTween.Assembly/DOTween/Core/TweenManager.cs:236) DG.Tweening.TweenExtensions.Kill (DG.Tweening.Tween t, System.Boolean complete) (at D:/DG/_Develop/__UNITY3_CLASSES/_Holoville/__DOTween/_DOTween.Assembly/DOTween/TweenExtensions.cs:145) Example.Update () (at Assets/Example.cs:14)
上記の例外が発生する