Advertisement
Guest User

lol

a guest
Feb 8th, 2016
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.73 KB | None | 0 0
  1. import java.awt.Color;
  2. import java.awt.Image;
  3.  
  4. import javax.swing.Icon;
  5. import javax.swing.ImageIcon;
  6. import javax.swing.JLabel;
  7. import javax.swing.JPanel;
  8.  
  9. public class Game extends JPanel {
  10.  
  11. /**
  12. *
  13. */
  14. int cells = Config.ROWS_NUMBER * Config.COL_NUMBER;
  15. private static final long serialVersionUID = 1L;
  16. private final int NUM_IMAGES = Config.NUM_IMAGES;
  17. private final int CELL_SIZE = Config.CELL_SIZE;
  18. ImageIcon[] img;
  19. private final int SEA_CELL = 0;
  20. private final int SEA_CELL_HIT = 1;
  21. private final int SEA_CELL_MISS = 2;
  22. private final int LAND_CELL = 3;
  23. private final int LAND_CELL_HIT = 4;
  24. private final int LAND_CELL_MISS = 5;
  25. private final int VEHICLE = 6;
  26. private final int SEA_CELL_TARGET = 7;
  27. private final int LAND_CELL_TARGET = 8;
  28. private final int VEHICLE_TARGET = 9;
  29. Player[] player;
  30. int[][] myField;
  31. int[] enemyField;
  32. JLabel[][] labelFieldPlayer;
  33. JLabel[][] labelFieldAI;
  34.  
  35. public Game(Player player1, Player player2) {
  36.  
  37. }
  38.  
  39. void prepareField() {
  40. // int[] field = new int[cells];
  41.  
  42. /*
  43. * for (int i = 0; i < cells/2; i++){ field[i] = LAND_CELL; }
  44. *
  45. * for (int i = cells/2; i < cells; i++){ field[i] = SEA_CELL; }
  46. */
  47.  
  48. // for(int i = 0; i < 5 ; i++)
  49. // field[i] = LAND_CELL;
  50.  
  51. int[][] field = new int[14][22];
  52.  
  53. for (int i = 0; i < Config.ROWS_NUMBER; i++) {
  54. for (int j = 0; j < Config.COL_NUMBER; j++) {
  55. if (i < 7)
  56. field[i][j] = LAND_CELL;
  57. if (i >= 7)
  58. field[i][j] = SEA_CELL;
  59. }
  60. }
  61.  
  62. this.myField = field;
  63. // this.enemyField = field;
  64.  
  65. }
  66.  
  67. void loadImages() {
  68. img = new ImageIcon[NUM_IMAGES];
  69.  
  70. for (int i = 0; i < NUM_IMAGES; i++) {
  71. img[i] = new ImageIcon(i + ".png");
  72. }
  73. }
  74.  
  75. public void generateLabelField(JPanel panel) {
  76.  
  77. JLabel[][] field = new JLabel[Config.ROWS_NUMBER][Config.COL_NUMBER];
  78.  
  79. for (int i = 0; i < Config.ROWS_NUMBER; i++) {
  80. for (int j = 0; j < Config.COL_NUMBER; j++) {
  81.  
  82. field[i][j] = new JLabel("");
  83. // panel.add(field[i]);
  84. field[i][j].setVisible(true);
  85. field[i][j].setBounds(j * CELL_SIZE + 25, i * CELL_SIZE + 15, CELL_SIZE, CELL_SIZE);
  86. field[i][j].setIcon(img[0]);
  87. panel.add(field[i][j]);
  88.  
  89. }
  90. }
  91.  
  92. this.labelFieldAI = field;
  93. this.labelFieldPlayer = field;
  94. }
  95.  
  96. public void refreshFields() {
  97. for (int i = 0; i < Config.ROWS_NUMBER; i++) {
  98. for (int j = 0; j < Config.COL_NUMBER; j++) {
  99. switch (myField[i][j]) {
  100.  
  101. case SEA_CELL:
  102. labelFieldPlayer[i][j].setIcon(img[SEA_CELL]);
  103. break;
  104.  
  105. case SEA_CELL_HIT:
  106. labelFieldPlayer[i][j].setIcon(img[SEA_CELL_HIT]);
  107. break;
  108.  
  109. case SEA_CELL_MISS:
  110. labelFieldPlayer[i][j].setIcon(img[SEA_CELL_MISS]);
  111. break;
  112.  
  113. case LAND_CELL:
  114. labelFieldPlayer[i][j].setIcon(img[LAND_CELL]);
  115. break;
  116.  
  117. case LAND_CELL_HIT:
  118. labelFieldPlayer[i][j].setIcon(img[LAND_CELL_HIT]);
  119. break;
  120.  
  121. case LAND_CELL_MISS:
  122. labelFieldPlayer[i][j].setIcon(img[LAND_CELL_MISS]);
  123. break;
  124.  
  125. case VEHICLE:
  126. labelFieldPlayer[i][j].setIcon(img[VEHICLE]);
  127. break;
  128.  
  129. case SEA_CELL_TARGET:
  130. labelFieldPlayer[i][j].setIcon(img[SEA_CELL_TARGET]);
  131. break;
  132.  
  133. case VEHICLE_TARGET:
  134. labelFieldPlayer[i][j].setIcon(img[LAND_CELL_TARGET]);
  135. break;
  136.  
  137. case LAND_CELL_TARGET:
  138. labelFieldPlayer[i][j].setIcon(img[VEHICLE_TARGET]);
  139. break;
  140.  
  141. default:
  142. labelFieldPlayer[i][j].setVisible(false);
  143. break;
  144.  
  145. }
  146. }
  147. }
  148.  
  149. }
  150.  
  151. public int[][] getMyField() {
  152. return myField;
  153. }
  154.  
  155. public void setMyField(int[][] myField) {
  156. this.myField = myField;
  157. }
  158.  
  159. public int[] getEnemyField() {
  160. return enemyField;
  161. }
  162.  
  163. public void setEnemyField(int[] enemyField) {
  164. this.enemyField = enemyField;
  165. }
  166.  
  167. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement