「DOTween」の警告を解消する

警告が出た

DOTweenを使用してロジックを組んでいた所、以下の警告が出て気になりました。

DOTWEEN ► This Tween has been killed and is now invalid

原因

すでにTweenの再生が終了しているものに対して、DOTween APIを使用すると発生するようです。

if (tween != null && tween.IsPlaying()) // ここで警告が出ている
{
    tween.Complete();
}

上記のような場合、tweenがもう再生済みでKillされているにも関わらず

「IsPlaying()」がコールされた事で警告が発生します。

対策

if (tween != null && tween.IsActive() && tween.IsPlaying())
{
    tween.Complete();
}

というように「IsActive()」を追加する事で警告なしでTweenがすでに無効化されているかを確認できます。

公式ドキュメントにも、以下のように記載されているので、意図した挙動となっています。

Returns FALSE if the tween has been killed.