【发布时间】:2019-11-19 23:42:01
【问题描述】:
我不想播放动画,我想通过点击左右按钮来改变精灵的帧。
var sprite = game.add.sprite(200, 100, 'mySprite');
sprite.frame = 3;
现在,如果按下右键,我希望这个精灵进入下一帧
sprite.frame += 1;
如果按下左键,精灵会转到上一帧。
sprite.frame -= 1;
如果按下左键且当前帧为 0,则精灵不会更改其帧,它会在第 0 帧处停止。我希望当我单击左键时精灵从 0 转到最后一帧。
例如,在 Actionscript 3 中,我可以这样做:
sprite.gotoAndStop(sprite.totalFrames);
Phaser/JS 中是否有“totalFrames”?
【问题讨论】:
-
使用这样的东西会不会更容易? => phaser.io/examples/v2/animation/two-frame-test
-
@Julián 我在平台游戏中使用类似的东西,正如我所说,当单击按钮时,我希望精灵转到下一帧/上一帧(更改一帧不播放动画),如果精灵当前帧为 0 并按下左键,它应该转到最后一帧。我看不出这个例子有什么帮助。
-
@Abadziluk 试试 sprite.animations.frameTotal
-
@juvian 就是这样,我已经创建了一个自定义变量,但是谢谢,我以后会这样做。
标签: javascript phaser-framework