如何创建一个计时器?
how to create a timer?
我想做一个飞扬的小鸟游戏,我想知道如何制作一个计时器,当玩家按下屏幕时,小鸟(或我的情况下是鱿鱼)将开始上升,当计时器结束它将再次开始下降。
这是代码
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;
}
}
所以实际上现在如果你按下它会自动上升,我希望他能顺利到达那里
我希望我解释得足够好。
哦,是的,如果有更好的方法请告诉我
这里有几个定时器教程。您可以使用该想法并绑定游戏中事件的开始和停止。
http://examples.javacodegeeks.com/android/core/os/handler/android-timer-example/
http://www.theappguruz.com/blog/android-count-timer/
Android - Creating a Timer loop for a pong game
这可能不是您想要的答案,但可能是您需要的。
如果您正在制作 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;
}
这将为您提供所需的 "falling down" 和 "jump" 效果。
这是一种创建计时器的方法
private long time = 0;
在你的 update() 扇区
if(TimeUtils.nanoTime() - time >= TIME)
{
spawn();
time = TimeUtils.nanoTime();
}
在你的 spawn()
创建你的生成机制
希望这对您有所帮助并祝您愉快:)
我想做一个飞扬的小鸟游戏,我想知道如何制作一个计时器,当玩家按下屏幕时,小鸟(或我的情况下是鱿鱼)将开始上升,当计时器结束它将再次开始下降。
这是代码
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;
}
}
所以实际上现在如果你按下它会自动上升,我希望他能顺利到达那里
我希望我解释得足够好。
哦,是的,如果有更好的方法请告诉我
这里有几个定时器教程。您可以使用该想法并绑定游戏中事件的开始和停止。
http://examples.javacodegeeks.com/android/core/os/handler/android-timer-example/
http://www.theappguruz.com/blog/android-count-timer/
Android - Creating a Timer loop for a pong game
这可能不是您想要的答案,但可能是您需要的。
如果您正在制作 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;
}
这将为您提供所需的 "falling down" 和 "jump" 效果。
这是一种创建计时器的方法
private long time = 0;
在你的 update() 扇区
if(TimeUtils.nanoTime() - time >= TIME)
{
spawn();
time = TimeUtils.nanoTime();
}
在你的 spawn() 创建你的生成机制
希望这对您有所帮助并祝您愉快:)