Live2Dにアニメーションを設定します。
setAnimation(<tack>, <animation>[, <continuance>, <interrupt>])
setAnimation(<tack>, <animations>[, <order>, <continuance>, <interrupt>])
<animation(s)>
アニメーション名/アニメーション名リスト
order、continuance、interruptは省略可能。
ただし省略しなかった場合はそれより前の引数も省略せず指定する必要があります。
a) トラック番号
アニメーションを表示するトラックの番号を指定します。
[ ピクチャ5番のLive2Dのトラック1番にアニメーションを表示させる場合 ]
$gameScreen.live2d(5).setAnimation(1, 'walk');
b) アニメーション名/アニメーション名リスト
Live2Dに登録されているアニメーション名を指定します。
複数のアニメーションを指定する場合は[]で括って記述します。
[ ピクチャ5番のLive2Dに'walk'という名前のアニメーションを表示させる場合 ]
$gameScreen.live2d(5).setAnimation(0, 'walk');
[ ピクチャ5番のLive2Dに'walk'->'run'->'jump'の順でアニメーションを表示させる場合 ]
$gameScreen.live2d(5).setAnimation(0, ['walk', 'run', 'jump']);
c) 順序オプション
複数アニメーション指定時の表示順序を指定します。
random
指定したアニメーションのいずれかを1つ表示
shuffle
指定したアニメーションの順番を入れ替えて表示
省略した場合は'sequential'を指定したものとします。
[ 'walk'->'run'->'jump'の順でアニメーションを表示させる場合 ]
$gameScreen.live2d(5).setAnimation(0, ['walk', 'run', 'jump'], 'sequential');
[ 'walk'->'run'->'jump'のうちいずれか1つを表示させる場合 ]
$gameScreen.live2d(5).setAnimation(0, ['walk', 'run', 'jump'], 'random');
[ 'walk'、run'、'jump'の順番を入れ替えて表示させる場合 ]
$gameScreen.live2d(5).setAnimation(0, ['walk', 'run', 'jump'], 'shuffle');
d) 継続オプション
指定したアニメーションの表示が終わったあとの動作を指定します。
continue
最後のアニメーションを繰り返し表示
none
最後のアニメーションが終わった状態で停止
省略した場合は'continue'を指定したものとします。
[ 'walk'->'run'->'jump'と表示したあと'jump'を繰り返し表示させる場合 ]
$gameScreen.live2d(5).setAnimation(0, ['walk', 'run', 'jump'], 'sequential', 'continue');
[ 'walk'->'run'->'jump'と表示したあと'walk'からもう一度表示させる場合 ]
$gameScreen.live2d(5).setAnimation(0, ['walk', 'run', 'jump'], 'sequential', 'reset');
[ 'walk'->'run'->'jump'と表示したあと'jump'の終わりの状態で停止させる場合 ]
$gameScreen.live2d(5).setAnimation(0, ['walk', 'run', 'jump'], 'sequential', 'none');
順序オプションに'random'を指定し、継続オプションに'reset'を指定した場合、
アニメーションを表示するたびにランダムで選択しなおします。
順序オプションに'shuffle'を指定し、継続オプションに'reset'を指定した場合、
1サイクルごとに順番を入れ替えなおしてアニメーションを表示します。
e) 割り込みフラグ
現在表示しているアニメーションの終了を待つか、中断させて表示するかを指定します。
true
表示中のアニメーションを中断して指定したアニメーションを表示
false
表示中のアニメーションの終了を待ってから指定したアニメーションを表示
省略した場合は'false'を指定したものとします。
[ 表示中のアニメーションを中断して指定したアニメーションを表示させる場合 ]
$gameScreen.live2d(5).setAnimation(0, 'walk', 'continue', true);
[ 表示中のアニメーションの終了を待ってから指定したアニメーションを表示させる場合 ]
$gameScreen.live2d(5).setAnimation(0, 'walk', 'continue', false);
f) アニメーションオプション
アニメーション名を指定する際、アニメーションごとに以下のオプションを指定できます。
オプションは「アニメーション名/オプション名=値」の形で記述します。
1つのアニメーションに複数のオプションを指定する場合はカンマ区切りで記述します。
timeScale
タイムスケール(0以上。1.0で等倍速)
weight
ウェイト値(0~1.0。1.0で100%)
[ 'walk'を2回、'run'を3回、'jump'を1回の順で表示させる場合 ]
$gameScreen.live2d(5).setAnimation(1, ['walk/times=2', 'run/times=3', 'jump']);
[ 'walk'を2倍速、'run'を1.5倍速で表示させる場合 ]
$gameScreen.live2d(5).setAnimation(1, ['walk/timeScale=2', 'run/timeScale=1.5', 'jump']);
[ 'walk'のウェイト値を0.3、'run'のウェイト値を0.25で表示させる場合 ]
$gameScreen.live2d(5).setAnimation(1, ['walk/weight=0.3', 'run/weight=0.25', 'jump']);
[ 表示回数、タイムスケール、ウェイト値をまとめて指定する場合 ]
$gameScreen.live2d(5).setAnimation(1, 'walk/times=2,timeScale=2.5,weight=0.5');
順序オプションで'randam'を指定した場合、表示回数のぶんだけ選択率が高くなります。