Skip to content
Snippets Groups Projects
Commit c47bf7ba authored by Jerusalem Laila's avatar Jerusalem Laila
Browse files

Thread der Spiel nach 10 Minuten schließt

parent 5043d410
No related branches found
No related tags found
No related merge requests found
......@@ -7,6 +7,7 @@ import javafx.scene.layout.AnchorPane;
import javafx.scene.paint.Color;
import javafx.scene.shape.Circle;
import javafx.scene.text.Text;
import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.example.game.Direction;
......@@ -14,6 +15,8 @@ import org.example.game.Direction;
import java.net.URL;
import java.util.Random;
import java.util.ResourceBundle;
import java.util.Timer;
import java.util.TimerTask;
public abstract class AbstractSnakeGameController implements Initializable, IControl {
private final static Logger log = LogManager.getLogger(AbstractSnakeGameController.class);
......@@ -39,6 +42,7 @@ public abstract class AbstractSnakeGameController implements Initializable, ICon
@Override
public void initialize(URL location, ResourceBundle resources) {
startTimerThread();
score = new Text(0, 33 , "0");
newFood();
......@@ -125,6 +129,23 @@ public abstract class AbstractSnakeGameController implements Initializable, ICon
return snake.eatSelf();
}
/**
* Die Methode startTimerThread() schließt das Spiel nach 10 Minuten automatisch
*/
public void startTimerThread() {
Thread timerThread = new Thread(() -> {
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
log.log(Level.INFO, "Spiel wird automatisch geschlossen...");
System.exit(0);
}
}, 10 * 60 * 1000); // Der Timer wird nach 10 Minuten (10 * 60 * 1000 Millisekunden) ausgeführt
});
timerThread.start();
}
/**
* Der Code move() führt eine Bewegung aus, aktualisiert die Position der Schlange und überprüft,
* ob es zu Kollisionen gekommen ist. Wenn die Schlange Nahrung sammelt, wird die Länge der Schlange erhöht und eine neue Nahrung wird erzeugt.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment