fix: Jumping infinitely deals damage
This commit is contained in:
@ -169,12 +169,19 @@ public class Game {
|
||||
update(screenRenderer);
|
||||
}
|
||||
|
||||
private boolean playerMovingUp = false;
|
||||
|
||||
/**
|
||||
* Moves the player upward by one block, if jumping is valid.
|
||||
*
|
||||
* @param screenRenderer the renderer used to refresh the screen.
|
||||
*/
|
||||
public void movePlayerUp(ScreenRenderer screenRenderer) {
|
||||
if (playerMovingUp) {
|
||||
return;
|
||||
}
|
||||
|
||||
playerMovingUp = true;
|
||||
if (window != Window.WORLD) {
|
||||
return;
|
||||
}
|
||||
@ -191,6 +198,8 @@ public class Game {
|
||||
|
||||
stats.setBlocksTraveled(stats.getBlocksTraveled() + 1);
|
||||
|
||||
screenRenderer.render(this);
|
||||
|
||||
new Thread(() -> {
|
||||
try {
|
||||
Thread.sleep(400);
|
||||
@ -199,6 +208,7 @@ public class Game {
|
||||
}
|
||||
|
||||
update(screenRenderer);
|
||||
playerMovingUp = false;
|
||||
}).start();
|
||||
}
|
||||
|
||||
|
@ -1,4 +0,0 @@
|
||||
package cz.jzitnik.game.logic.services.burning;
|
||||
|
||||
public class MobsBurning {
|
||||
}
|
@ -88,7 +88,6 @@ public class InputHandlerThread extends Thread {
|
||||
case 'd' -> new Thread(() -> game.movePlayerRight(screenRenderer, terminal)).start();
|
||||
case ' ' ->{
|
||||
game.movePlayerUp(screenRenderer);
|
||||
screenRenderer.render(game);
|
||||
}
|
||||
case 'e' -> {
|
||||
if (game.getWindow() != Window.WORLD) {
|
||||
|
Reference in New Issue
Block a user