Tile par rapport a la base de donnée + fix rotation tuile

This commit is contained in:
Vincent
2024-10-26 22:31:34 +02:00
parent f5c3fa6149
commit 70acc18573
42 changed files with 189 additions and 135 deletions

View File

@@ -10,6 +10,8 @@ public class MouseWheelController implements MouseWheelListener {
private HexagonTile previewTile;
private GameController gameController;
private long lastRotationTime = 0; // Stocke le temps de la dernière rotation
private static final int ROTATION_DELAY = 100; // Délai minimum en millisecondes entre chaque rotation
public MouseWheelController(HexagonTile previewTile, GameController gameController) {
this.previewTile = previewTile;
@@ -18,14 +20,21 @@ public class MouseWheelController implements MouseWheelListener {
@Override
public void mouseWheelMoved(MouseWheelEvent e) {
Tile nextTile = gameController.getNextTile();
long currentTime = System.currentTimeMillis();
if (e.getWheelRotation() < 0) {
nextTile.rotateClockwise();
} else if (e.getWheelRotation() > 0) {
nextTile.rotateClockwise();
// Si le délai entre les rotations est respecté, on procède à la rotation
if (currentTime - lastRotationTime >= ROTATION_DELAY) {
Tile nextTile = gameController.getNextTile();
if (nextTile != null) {
if (e.getWheelRotation() < 0) {
nextTile.rotateClockwise();
} else if (e.getWheelRotation() > 0) {
nextTile.rotateCounterClockwise();
}
previewTile.repaint(); // Mettre à jour l'aperçu avec la nouvelle rotation
lastRotationTime = currentTime; // Mise à jour du temps de la dernière rotation
}
}
previewTile.repaint(); // Mettre à jour l'aperçu avec la nouvelle rotation
}
}