Advertisement
Guest User

Untitled

a guest
Sep 20th, 2019
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.05 KB | None | 0 0
  1. package javaexam;
  2.  
  3. import javax.swing.*;
  4. import java.awt.*;
  5. import java.awt.event.*;
  6. //import static java.lang.Math.random;
  7.  
  8. class FDemo extends JFrame {
  9.  
  10. JPDemo jp1;
  11.  
  12. FDemo() {
  13. this.setTitle("Snake&Ladder");
  14. // super.setTitle("Snake and Ladder");
  15. jp1 = new JPDemo();
  16. add(jp1);
  17. }
  18. }
  19.  
  20. class JPDemo extends JPanel implements ActionListener {
  21.  
  22. ImageIcon img1, img2, img3, img4, img5, img6, img7, img8, img9, img10;
  23. Image dice, start, board2, S1, player1, player2, dice1, dice11;
  24. JButton b1, b2, b3, b4;
  25. JTextField tf1, tf2, tf3;
  26. boolean flag = false;
  27.  
  28. int px1 = 20;
  29. int py1 = 390;
  30.  
  31. JPDemo() {
  32. this.setBackground(Color.black);
  33. img1 = new ImageIcon(getClass().getResource("dice.jpg"));
  34. img2 = new ImageIcon(getClass().getResource("board2.jpg"));
  35. img3 = new ImageIcon(getClass().getResource("S1.jpg"));
  36. img4 = new ImageIcon(getClass().getResource("start.png"));
  37. img5 = new ImageIcon(getClass().getResource("about-button.jpg"));
  38. img6 = new ImageIcon(getClass().getResource("about-button(1).jpg"));
  39. img7 = new ImageIcon(getClass().getResource("player1.png"));
  40. img8 = new ImageIcon(getClass().getResource("player2.png"));
  41. img9 = new ImageIcon(getClass().getResource("dice1.png"));
  42. img10 = new ImageIcon(getClass().getResource("dice11.jpg"));
  43.  
  44. dice = img1.getImage();
  45. board2 = img2.getImage();
  46. S1 = img3.getImage();
  47. player1 = img7.getImage();
  48. player2 = img8.getImage();
  49. dice1 = img9.getImage();
  50. dice11 = img10.getImage();
  51. //start = img4.getImage();
  52.  
  53. setLayout(null);
  54. b1 = new JButton(img5);
  55. b1.setBounds(50, 220, 100, 30);
  56. add(b1);
  57.  
  58. b2 = new JButton(img6);
  59. b2.setBounds(50, 280, 100, 30);
  60. add(b2);
  61.  
  62. b3 = new JButton("Roll");
  63. b3.setBounds(50, 500, 100, 30);
  64. add(b3);
  65. b3.setForeground(Color.red);
  66.  
  67. b3.addActionListener(this);
  68.  
  69. b4 = new JButton(img4);
  70. b4.setBounds(20, 640, 150, 60);
  71. add(b4);
  72. //b4.setForeground(Color.red);
  73.  
  74. tf1 = new JTextField("Start Game");
  75. tf1.setBounds(50, 330, 150, 35);
  76. add(tf1);
  77. tf1.setBackground(Color.black);
  78. tf1.setForeground(Color.green);
  79.  
  80. tf2 = new JTextField("Player1 name");
  81. tf2.setBounds(50, 390, 150, 35);
  82. add(tf2);
  83. tf2.setBackground(Color.black);
  84. tf2.setForeground(Color.green);
  85.  
  86. tf3 = new JTextField("Player2 name");
  87. tf3.setBounds(50, 450, 150, 35);
  88. add(tf3);
  89. tf3.setBackground(Color.black);
  90. tf3.setForeground(Color.green);
  91. }
  92.  
  93. public void paintComponent(Graphics g) {
  94. super.paintComponent(g);
  95. g.setColor(Color.white);
  96. g.fillRect(0, 0, 200, 735);
  97. g.drawImage(dice, 0, 0, this);
  98. g.drawImage(board2, 200, 0, this);
  99. g.drawImage(S1, 900, 0, this);
  100. g.drawImage(player1, px1, py1, this);
  101. g.drawImage(player2, 20, 450, this);
  102. g.drawImage(dice1, 20, 560, this);
  103. g.drawImage(dice11, 70, 530, this);
  104.  
  105. //g.drawImage(start,0,600,this);
  106. }
  107.  
  108. @Override
  109. public void actionPerformed(ActionEvent ae) {
  110. if (ae.getSource() == b3) {
  111. int random = (int) Math.round(Math.random() * 5 + 1);
  112. if (px1 == 20 && py1 == 390) {
  113. px1 = 140;
  114. py1 = 645;
  115. }
  116. if (flag == false) {
  117. switch (random) {
  118. case 1:
  119. img10 = new ImageIcon(getClass().getResource("dice (2).jpg"));
  120.  
  121. px1 += 70;
  122.  
  123. break;
  124.  
  125. case 2:
  126. img10 = new ImageIcon(getClass().getResource("dice (3).jpg"));
  127. px1 += 140;
  128. break;
  129.  
  130. case 3:
  131. img10 = new ImageIcon(getClass().getResource("dice (4).jpg"));
  132. px1 += 210;
  133. break;
  134.  
  135. case 4:
  136. img10 = new ImageIcon(getClass().getResource("dice (5).jpg"));
  137. px1 += 280;
  138. break;
  139.  
  140. case 5:
  141. img10 = new ImageIcon(getClass().getResource("dice (6).jpg"));
  142. px1 += 350;
  143. break;
  144.  
  145. case 6:
  146. img10 = new ImageIcon(getClass().getResource("dice (7).jpg"));
  147. px1 += 420;
  148. break;
  149.  
  150. }
  151. } else if (flag == true) {
  152.  
  153. switch (random) {
  154. case 1:
  155. img10 = new ImageIcon(getClass().getResource("dice (2).jpg"));
  156.  
  157. px1 -= 70;
  158.  
  159. break;
  160.  
  161. case 2:
  162. img10 = new ImageIcon(getClass().getResource("dice (3).jpg"));
  163. px1 -= 140;
  164. break;
  165.  
  166. case 3:
  167. img10 = new ImageIcon(getClass().getResource("dice (4).jpg"));
  168. px1 -= 210;
  169. break;
  170.  
  171. case 4:
  172. img10 = new ImageIcon(getClass().getResource("dice (5).jpg"));
  173. px1 -= 280;
  174. break;
  175.  
  176. case 5:
  177. img10 = new ImageIcon(getClass().getResource("dice (6).jpg"));
  178. px1 -= 350;
  179. break;
  180.  
  181. case 6:
  182. img10 = new ImageIcon(getClass().getResource("dice (7).jpg"));
  183. px1 -= 420;
  184. break;
  185.  
  186. }
  187.  
  188. }
  189. if (px1 > 840) {
  190. int x = px1 - 840;
  191. // int y = x/70;
  192. px1 = 840 - x + 70;
  193. py1 -= 70;
  194. flag = true;
  195. } else if (px1 < 210) {
  196. int x = 210 - px1;
  197. px1 = 210 + x - 70;
  198. py1 -= 70;
  199. flag = false;
  200. }
  201. //snakes
  202.  
  203. System.out.println("px "+px1+" "+py1+ " ");
  204.  
  205. if (px1 == 350 && py1 == 415) {
  206. px1 = 420;
  207. py1 = 625;
  208.  
  209. // System.out.println("entered 1");
  210.  
  211. } else if (px1 == 840 && py1 == 415) {
  212. px1 = 490;
  213. py1 = 695;
  214.  
  215. //System.out.println("entered 2");
  216.  
  217. } else if (px1 == 490 && py1 == 365) {
  218. px1 = 700;
  219. py1 = 695;
  220.  
  221. // System.out.println("entered 3");
  222.  
  223. } else if (px1 == 700 && py1 == 205) {
  224. px1 = 560;
  225. py1 = 625;
  226.  
  227. // System.out.println("entered 4");
  228.  
  229. } else if (px1 == 420 && py1 == 135) {
  230. px1 = 350;
  231. py1 = 345;
  232.  
  233. // System.out.println("entered 5");
  234.  
  235. } else if (px1 == 630 && py1 == 135) {
  236. px1 = 770;
  237. py1 = 415;
  238.  
  239. // System.out.println("entered 6");
  240.  
  241. } else if (px1 == 350 && py1 == 65) {
  242. px1 = 210;
  243. py1 = 485;
  244.  
  245. // System.out.println("entered 7");
  246.  
  247. } //ladders
  248. else if (px1 == 280 && py1 == 695) {
  249. px1 = 350;
  250. py1 = 555;
  251.  
  252. // System.out.println("entered 8");
  253.  
  254. } else if (px1 == 560 && py1 == 695) {
  255. px1 = 490;
  256. py1 = 415;
  257.  
  258. // System.out.println("entered 9");
  259.  
  260. } else if (px1 == 210 && py1 == 625) {
  261. px1 = 280;
  262. py1 = 345;
  263.  
  264. // System.out.println("entered 10");
  265.  
  266. } else if (px1 == 770 && py1 == 345) {
  267. px1 = 770;
  268. py1 = 205;
  269.  
  270. //System.out.println("entered 11");
  271.  
  272. } else if (px1 == 420 && py1 == 345) {
  273. px1 = 490;
  274. py1 = 65;
  275.  
  276. // System.out.println("entered 12");
  277.  
  278. } else if (px1 == 840 && py1 == 205) {
  279. px1 = 770;
  280. py1 = 65;
  281.  
  282. // System.out.println("entered 13");
  283.  
  284. }
  285. dice11 = img10.getImage();
  286.  
  287. repaint();
  288.  
  289. //System.out.println(random);
  290. }
  291.  
  292. }
  293.  
  294. private Image dice(int i) {
  295. throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
  296. }
  297. }
  298.  
  299. class snakeladder {
  300.  
  301. public static void main(String[] args) {
  302. FDemo f = new FDemo();
  303. f.setVisible(true);
  304. f.setBounds(0, 0, 990, 735);
  305. f.setDefaultCloseOperation(f.EXIT_ON_CLOSE);
  306. }
  307. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement