0

上記のように繰り返されるフレームを作成する方法があります。

character = new createjs.SpriteSheet({
        images: [img],
        frames: {width: frameW, height: frameH, regX: frameW/2, regY: frameH/2},
        animations: { run: [0,9, "run"],
                      hit: [10,10,11,11,12,12,13,13,14,14,15,15, "idle"],
                      jmp: [18,22, "idle_jmp"],
                      idle_jmp: [22],
                      idle: [2]
             }
    });

ヒット時に各フレームを 2 回繰り返して、ヒット時の FPS をシミュレートします。

4

2 に答える 2

2

olsn が提供するコードベースの周波数ソリューションに加えて、SpriteSheet データでも「周波数」を指定できます。

サンプルの「ヒット」アニメーションの形式が正しくありません。簡単な形式を使用できます。


hit: [startFrame, endFrame, "nextAnimation", frequency],
// For example:
hit: [10,15,"idle",2]

または、各フレームでより複雑な定義を使用して、他のプロパティを名前で指定することもできます。


hit: {
    frames: [10,11,12,13,14,15],
    next: "idle",
    frequency:2
}

SpriteSheet のドキュメントで主な概要を確認してください: http://www.createjs.com/Docs/EaselJS/classes/SpriteSheet.html

于 2013-04-09T15:40:20.400 に答える
1

あなたが使用することができます:

character.getAnimation('run').frequency = 2 or whatever frequency you like

個々のアニメーションごとに実行時に設定できます。

于 2013-04-09T06:02:08.753 に答える