public void chooseLane() {
lane = MathUtils.random(1, 3);
System.out.println(lane);
spawnCar();
}
public void spawnCar() {
if(lane == 1){
batch.begin();
batch.draw(carsb, carP1X, carP1Y);
batch.end();
}
if(lane == 2){
batch.begin();
batch.draw(carsb, carP2X, carP2Y);
batch.end();
}
if(lane == 3){
batch.begin();
batch.draw(carsb, carP3X, carP3Y);
batch.end();
}
Спрайт появляется почти для одного кадра, а затем исчезает. Я предполагаю, что это связано с тем, что все это не в методе render()
, но я не уверен, как перенести его в этот метод.Спрайт появляется для рамки, затем исчезает {LibGDX}
Спасибо, я получил Sprite, чтобы остаться на экране, но теперь мой таймер сломана>> Я настроил 'долго lastSpawn; '+ an' if (TimeUtils.nanoTime() - lastSpawn> 1000000000) { \t \t \t chooseLane(); \t \t} 'с' lastSpawn = TimeUtils.nanoTime(); 'в методе spawnCar. Таймер работал отлично, прежде чем я изменил ситуацию, не могу понять, что заставляет его перестать считать прошлое сейчас = P – CodingNub
Метод рендеринга как параметр, называемый delta, который является временем, прошедшим с момента визуализации последнего кадра. Я предполагаю, что вы хотите обновлять игру каждую секунду? создайте переменную, называемую passDelta, и продолжайте добавлять к ней значение delta, пока не будет передано значение Delta> 1, обновите игру и сбросьте значениеДельта. – danielz