test pour faire le plateau+nouveau menu dans testV1+ probleme compilation

This commit is contained in:
2024-11-14 18:30:20 +01:00
parent 03e17d1882
commit 57fcd8f1af
69 changed files with 1568 additions and 329 deletions

View File

@@ -0,0 +1,24 @@
package view;
import javax.swing.*;
import model.Board;
import model.Tile;
import java.awt.*;
public class BoardView extends JPanel {
private Board board;
public BoardView(Board board) {
this.board = board;
setLayout(new GridLayout(5, 5, 5, 5)); // Exemple de grille 5x5 pour le plateau
}
public void refreshBoard() {
removeAll();
for (Tile tile : board.getTiles()) {
add(new TileView(tile.getType()));
}
revalidate();
repaint();
}
}

View File

@@ -0,0 +1,28 @@
package view;
import model.Game;
import javax.swing.*;
import java.awt.*;
public class GameView extends JFrame {
private JLabel scoreLabel;
private BoardView boardView;
public GameView(Game game) {
setTitle("Dorfromantik en Java");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(400, 400);
setLayout(new BorderLayout());
scoreLabel = new JLabel("Score : " + game.getScore());
boardView = new BoardView(game.getBoard());
add(scoreLabel, BorderLayout.NORTH);
add(boardView, BorderLayout.CENTER);
}
public void update(Game game) {
scoreLabel.setText("Score : " + game.getScore());
boardView.refreshBoard();
}
}

View File

@@ -0,0 +1,21 @@
package view;
import javax.swing.*;
import java.awt.*;
public class TileView extends JPanel {
private String type;
public TileView(String type) {
this.type = type;
setPreferredSize(new Dimension(50, 50)); // Taille de la tuile
setBackground(Color.LIGHT_GRAY);
}
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.setColor(Color.BLACK);
g.drawString(type, 10, 25); // Affiche le type de la tuile au centre
}
}