我想做一个飞扬的小鸟游戏,我想知道如何制作一个计时器,当玩家按下屏幕时启动,鸟(或者在我的例子中是鱿鱼)将开始上升,当计时器结束时它将再次开始下降。
这是代码
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;
}
}
所以实际上现在如果你按下它就会自动上升,我希望他能顺利到达那里
我希望我的解释足够好。
哦,是的,如果有更好的方法,请告诉我
最佳答案
这可能不是您想要的答案,但它可能是您需要的。
如果你正在制作《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;
}
这将为您提供所需的确切“下落”和“跳跃”效果。
关于java - 如何创建一个计时器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28774672/