如何创建计时器?

时间:2015-02-27 21:32:52

标签: java libgdx

我想做一个飞扬的鸟类游戏,我想知道如何制作一个计时器,当玩家按下屏幕时开始,鸟(或我的情况下的鱿鱼)将开始上升,当计时器结束时它会再次开始下降。

这是代码

batch.begin();
        //ignore this part
        batch.draw(Assets.sprite_back,BackX ,0);
        batch.draw(Assets.sprite_back2,BackX2 ,0);
        //this is the squid
        batch.draw(Assets.sprite_squiddy,10 ,squiddyY);
batch.end();

}

public void generalUpdate(){
    //ignore
    BackX -= 1;
    BackX2 -= 1;
    //look at this
    squiddyY -=4;
    //continue ignoring
    if(BackX<=-480){
        BackX = 480;
    }
    if(BackX2<=-480){
        BackX2 = 480;
    }
    //this is the part we need
    if(Gdx.input.justTouched()){
        squiddyY += 100;

    }
}

所以实际上如果按下它会自动启动,我希望他顺利地去那里

我希望自己能够解释得很好。

是的,如果有更好的方法,请告诉我

3 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

这可能不是您想要的答案,但也许您需要

如果你正在制作Flappy Bird,我会劝阻使用计时器。它可以通过使用重力更容易地完成,即通过添加速度和加速度。

velocityY = 0;
accelerationY = -100;
public void generalUpdate(){
//ignore
BackX -= 1;
BackX2 -= 1;
//continue ignoring
if(BackX<=-480){
    BackX = 480;
}
if(BackX2<=-480){
    BackX2 = 480;
}
//this is the part we need

velocityY += accelerationY;
squiddyY  += velocityY;
if(Gdx.input.justTouched()){
    velocityY += 100;

}

这会给你准确的&#34;跌倒&#34;并且&#34;跳跃&#34;你需要的效果。

答案 2 :(得分:0)

这是一种创建计时器的方法

private long time = 0;

在您的更新()部门

if(TimeUtils.nanoTime() - time >= TIME)
{
spawn();
time = TimeUtils.nanoTime();
}

在你的spawn中() 创建你的产卵机制

希望这有助于并享受:)