我正在开发一款Android游戏,在eclipse中使用libGDX。每当一名球员得到10分时,我想加快我的场景(跑步机)。跑步机的初始速度等于0,每10个点接收5个。当角色掉出屏幕时,玩家将失去游戏。谁知道怎么做?
答案 0 :(得分:1)
我想你用treadmill
来实现Animation
动画。首先看一下this tutorial。您会在float stateTime
中注明new Animation(0.025f, walkFrames);
和第一个参数。 stateTime
描述了您当前的时间。 Animation
的第一个参数描述了帧的持续时间。如果stateTime
大于frameDuration
,则会绘制Texture
的下一个Sprite
/ Animation
。
您无法更改此float frameDuration
,只能在构造函数中进行设置。但您可以设置stateTime
。 Normaly你使用stateTime += delta
,所以你有确切的时间。要加快/减慢速度,您可以将其乘以float speed
:
stateTime += delta * speed;
speed < 0
,一帧会花费更长时间,因此Animation
会慢一些。speed == 0
,Animation
的速度正常。speed > 0
,Animation
更快。如果你死了,只需将speed
重置为0,这样treadmill
就不会动画,因为状态时间永远不会改变:stateTime + (delta * 0) = stateTime