Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.awt.Color;
- import java.awt.Image;
- import javax.swing.Icon;
- import javax.swing.ImageIcon;
- import javax.swing.JLabel;
- import javax.swing.JPanel;
- public class Game extends JPanel {
- /**
- *
- */
- int cells = Config.ROWS_NUMBER * Config.COL_NUMBER;
- private static final long serialVersionUID = 1L;
- private final int NUM_IMAGES = Config.NUM_IMAGES;
- private final int CELL_SIZE = Config.CELL_SIZE;
- ImageIcon[] img;
- private final int SEA_CELL = 0;
- private final int SEA_CELL_HIT = 1;
- private final int SEA_CELL_MISS = 2;
- private final int LAND_CELL = 3;
- private final int LAND_CELL_HIT = 4;
- private final int LAND_CELL_MISS = 5;
- private final int VEHICLE = 6;
- private final int SEA_CELL_TARGET = 7;
- private final int LAND_CELL_TARGET = 8;
- private final int VEHICLE_TARGET = 9;
- Player[] player;
- int[][] myField;
- int[] enemyField;
- JLabel[][] labelFieldPlayer;
- JLabel[][] labelFieldAI;
- public Game(Player player1, Player player2) {
- }
- void prepareField() {
- // int[] field = new int[cells];
- /*
- * for (int i = 0; i < cells/2; i++){ field[i] = LAND_CELL; }
- *
- * for (int i = cells/2; i < cells; i++){ field[i] = SEA_CELL; }
- */
- // for(int i = 0; i < 5 ; i++)
- // field[i] = LAND_CELL;
- int[][] field = new int[14][22];
- for (int i = 0; i < Config.ROWS_NUMBER; i++) {
- for (int j = 0; j < Config.COL_NUMBER; j++) {
- if (i < 7)
- field[i][j] = LAND_CELL;
- if (i >= 7)
- field[i][j] = SEA_CELL;
- }
- }
- this.myField = field;
- // this.enemyField = field;
- }
- void loadImages() {
- img = new ImageIcon[NUM_IMAGES];
- for (int i = 0; i < NUM_IMAGES; i++) {
- img[i] = new ImageIcon(i + ".png");
- }
- }
- public void generateLabelField(JPanel panel) {
- JLabel[][] field = new JLabel[Config.ROWS_NUMBER][Config.COL_NUMBER];
- for (int i = 0; i < Config.ROWS_NUMBER; i++) {
- for (int j = 0; j < Config.COL_NUMBER; j++) {
- field[i][j] = new JLabel("");
- // panel.add(field[i]);
- field[i][j].setVisible(true);
- field[i][j].setBounds(j * CELL_SIZE + 25, i * CELL_SIZE + 15, CELL_SIZE, CELL_SIZE);
- field[i][j].setIcon(img[0]);
- panel.add(field[i][j]);
- }
- }
- this.labelFieldAI = field;
- this.labelFieldPlayer = field;
- }
- public void refreshFields() {
- for (int i = 0; i < Config.ROWS_NUMBER; i++) {
- for (int j = 0; j < Config.COL_NUMBER; j++) {
- switch (myField[i][j]) {
- case SEA_CELL:
- labelFieldPlayer[i][j].setIcon(img[SEA_CELL]);
- break;
- case SEA_CELL_HIT:
- labelFieldPlayer[i][j].setIcon(img[SEA_CELL_HIT]);
- break;
- case SEA_CELL_MISS:
- labelFieldPlayer[i][j].setIcon(img[SEA_CELL_MISS]);
- break;
- case LAND_CELL:
- labelFieldPlayer[i][j].setIcon(img[LAND_CELL]);
- break;
- case LAND_CELL_HIT:
- labelFieldPlayer[i][j].setIcon(img[LAND_CELL_HIT]);
- break;
- case LAND_CELL_MISS:
- labelFieldPlayer[i][j].setIcon(img[LAND_CELL_MISS]);
- break;
- case VEHICLE:
- labelFieldPlayer[i][j].setIcon(img[VEHICLE]);
- break;
- case SEA_CELL_TARGET:
- labelFieldPlayer[i][j].setIcon(img[SEA_CELL_TARGET]);
- break;
- case VEHICLE_TARGET:
- labelFieldPlayer[i][j].setIcon(img[LAND_CELL_TARGET]);
- break;
- case LAND_CELL_TARGET:
- labelFieldPlayer[i][j].setIcon(img[VEHICLE_TARGET]);
- break;
- default:
- labelFieldPlayer[i][j].setVisible(false);
- break;
- }
- }
- }
- }
- public int[][] getMyField() {
- return myField;
- }
- public void setMyField(int[][] myField) {
- this.myField = myField;
- }
- public int[] getEnemyField() {
- return enemyField;
- }
- public void setEnemyField(int[] enemyField) {
- this.enemyField = enemyField;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement