gpt4 book ai didi

java - 在java中调用最后耗时

转载 作者:行者123 更新时间:2023-12-01 10:28:40 25 4
gpt4 key购买 nike

我正在 android Studio 中使用 libgdx 制作游戏。在此游戏中,得分与耗时相同(由 ((System.currentTimeMillis() - startTime)/100) 得出)。我还使用不同的类作为状态(MenuState、PlayState 和 GameOverState)...

public class PlayState extends State {

long startTime;

private SpriteBatch batch;
private BitmapFont font;

public PlayState(GameStateManager gsm) {
super(gsm);
cam.setToOrtho(false, Game.WIDTH, Game.HEIGHT);
startTime = System.currentTimeMillis();
batch = new SpriteBatch();
font = new BitmapFont(Gdx.files.internal("text.fnt"), Gdx.files.internal("text.png"), false);
font.getData().setScale(.5f, .5f);
}

@Override
protected void handleInput() {

}

@Override
public void update(float dt) {

}

@Override
public void render(SpriteBatch sb) {
sb.setProjectionMatrix(cam.combined);
System.out.println("Score = " + ((System.currentTimeMillis() - startTime) / 100));

batch.begin();
font.draw(batch, "Score: " + Float.toString((Float) ((System.currentTimeMillis() - startTime) / 100f)), 20, 470);
font.setColor(Color.WHITE);
batch.end();
}

@Override
public void dispose() {
bg.dispose();
bird.dispose();
ground.dispose();
batch.dispose();
font.dispose();
for(Tube tube : tubes)
tube.dispose();
for(Cloud cloud : clouds)
cloud.dispose();
//stage.dispose();
System.out.println("Play State Disposed");
}

private void updateGround() {
if(cam.position.x - (cam.viewportWidth / 2) > groundPos1.x + ground.getWidth())
groundPos1.add(ground.getWidth() * 2, 0);
if(cam.position.x - (cam.viewportWidth / 2) > groundPos2.x + ground.getWidth())
groundPos2.add(ground.getWidth() * 2, 0);
}
}

我想获取 GameOverState 中的最后分数并将其打印在屏幕上...有什么办法可以做到吗?

最佳答案

首先,您需要将分数存储在变量中,而不是仅将其打印为字符串。

然后,由于 PlayState 和 GameOverState 彼此不了解,因此您可以使用 GameStateManager 从 PlayState 获取分数变量并将其传递给 GameOverState,然后 GameOverState 可以将其打印到屏幕上。

我无法给出任何具体的代码,因为我不知道你的其余类是如何布局的,但这就是总体思路。

关于java - 在java中调用最后耗时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35215897/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com