[[命令リファレンス]]
----
//<H2>AnimationAdaptorクラス</h2>
AnimationAdaptorとは、キャラクタパターンを次々に変化させることによるアニメーションを簡単に実現するためのオブジェクトです。
ここでは、図1のようなキャラクタを用意して、オブジェクトを歩かせる処理を考えます。
&ref(chars.png);
まず簡単な例を示します。次のオブジェクトは、キャラクタパターン$pat_chars+0と$pat_chars+1を5フレームごとに交互に表示します。
**例1 [#t411dbee]
extends SpriteChar;
a=newAnimation();
a.loop($pat_chars+0,$pat_chars+1,5);
wait();
''※'' [[newAnimation]]メソッド, [[loop>AnimationAdaptor.loop]]メソッドの説明も参照してください。
''※'' アニメーションアダプタ動作中は、[[変数p>SpriteChar.p]]への代入をしても効果がありません。pへ代入したい場合は一旦pauseメソッドを呼んでからにしてください
次のオブジェクトは、カーソルキーを使って歩きながら移動するオブジェクトです。
**例2 [#w235470f]
extends SpriteChar;
a=newAnimation();
while(1) {
a.pause(); // 動いていないときはアニメーションを止める。
// 各カーソルキーが押されたとき、アニメーションを設定する。 左右移動の場合fによって向きも指定する。
if (getkey(39)>0) {a.loop($pat_chars+2,$pat_chars+3,3); f=0; x+=3;}
if (getkey(37)>0) {a.loop($pat_chars+2,$pat_chars+3,3); f=1; x-=3;}
if (getkey(40)>0) {a.loop($pat_chars+0,$pat_chars+1,3); y+=3;}
if (getkey(38)>0) {a.loop($pat_chars+4,$pat_chars+5,3); y-=3; }
update();
}
''※''
アニメーションさせるコマ数が3つ以上の場合、最初のパターンを1番目の引数、最後のパターンを2番目の引数に指定します(途中のパター
ンは指定しません)
*メソッド・変数一覧 [#g70e5021]
#find