Advertisement
Guest User

Untitled

a guest
Sep 20th, 2019
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.78 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.  
  112. int random = (int) Math.round(Math.random() * 5 + 1);
  113. if (px1 == 20 && py1 == 390) {
  114. px1 = 140;
  115. py1 = 645;
  116. }
  117. if (flag == false) {
  118. switch (random) {
  119. case 1:
  120. img10 = new ImageIcon(getClass().getResource("dice (2).jpg"));
  121.  
  122. px1 += 70;
  123.  
  124. break;
  125.  
  126. case 2:
  127. img10 = new ImageIcon(getClass().getResource("dice (3).jpg"));
  128. px1 += 140;
  129. break;
  130.  
  131. case 3:
  132. img10 = new ImageIcon(getClass().getResource("dice (4).jpg"));
  133. px1 += 210;
  134. break;
  135.  
  136. case 4:
  137. img10 = new ImageIcon(getClass().getResource("dice (5).jpg"));
  138. px1 += 280;
  139. break;
  140.  
  141. case 5:
  142. img10 = new ImageIcon(getClass().getResource("dice (6).jpg"));
  143. px1 += 350;
  144. break;
  145.  
  146. case 6:
  147. img10 = new ImageIcon(getClass().getResource("dice (7).jpg"));
  148. px1 += 420;
  149. break;
  150.  
  151. }
  152. } else if (flag == true) {
  153.  
  154. switch (random) {
  155. case 1:
  156. img10 = new ImageIcon(getClass().getResource("dice (2).jpg"));
  157.  
  158. px1 -= 70;
  159.  
  160. break;
  161.  
  162. case 2:
  163. img10 = new ImageIcon(getClass().getResource("dice (3).jpg"));
  164. px1 -= 140;
  165. break;
  166.  
  167. case 3:
  168. img10 = new ImageIcon(getClass().getResource("dice (4).jpg"));
  169. px1 -= 210;
  170. break;
  171.  
  172. case 4:
  173. img10 = new ImageIcon(getClass().getResource("dice (5).jpg"));
  174. px1 -= 280;
  175. break;
  176.  
  177. case 5:
  178. img10 = new ImageIcon(getClass().getResource("dice (6).jpg"));
  179. px1 -= 350;
  180. break;
  181.  
  182. case 6:
  183. img10 = new ImageIcon(getClass().getResource("dice (7).jpg"));
  184. px1 -= 420;
  185. break;
  186.  
  187. }
  188.  
  189. }
  190. if (px1 >= 840) {
  191. int x = px1 - 840;
  192. px1 = 840 - x / 70;
  193. py1 -= 70;
  194. flag=true;
  195. }
  196. else if(px1<210){
  197. int x=210-px1;
  198. px1=210+x/70;
  199. py1-=70;flag=false;
  200. }
  201. dice11 = img10.getImage();
  202.  
  203. repaint();
  204.  
  205. //System.out.println(random);
  206. }
  207. }
  208.  
  209. private Image dice(int i) {
  210. throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
  211. }
  212. }
  213.  
  214. class snakeladder {
  215.  
  216. public static void main(String[] args) {
  217. FDemo f = new FDemo();
  218. f.setVisible(true);
  219. f.setBounds(200, 100, 990, 735);
  220. f.setDefaultCloseOperation(f.EXIT_ON_CLOSE);
  221. }
  222. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement